I have been inspired by Rob Conery's blog posts on his journey down the TDD path, I decided there were a few blog series that I want to do myself. So in the near future I will be writing a few series of posts that will cover:

  • Using TypeMock from a beginners perspective
  • Using Ninject in an ASP.NET MVC project
  • Setting up a development tree using Subversion, VisualSVN, and Tortoise. While also covering the setting up of a Continuous Integration server using Team City.
So please stay tuned to see what lies ahead.

Recently I am been following Rob Conery as he explores Test Driven Development using the ASP.NET MVC framework. Rob is using a style of development known as Test First Development or Red - Green - Refactor. The timing of these articles was actually nice as I was exploring the use of the MVC framework as a possible replacement technology for my companies current web site. This all motivated me to continue down a path that I had started a few years ago, but was never able to fully follow due to corporate limitations.

While following along, I noticed that Rob was using a bit of Domain Driven Design as well as a modified (I say a needed update) of the Repository pattern. I say modified because technically your concrete repository should return entities, not IQueryable objects. Personally I like how Rob has done this and agree with why he did it. A little while ago, I was having a conversation with a former co-worker about Robs work and he brought up Inversion of Control as well as Ayende's IRepository interface. To be honest, the conversation was a bit above my understanding at that time. Well in comes Twitter. Now step forward a week, after I have started building the never version of our site loosely based on the prinicals Rob has laid out. After just having more conversations about the new site design with my friend and him showing me the ins and outs of Windsor and how we would use it, I started looking further into IoC. After getting into a political debate with Nate Kohari, via Twitter, I noticed he had created an IoC project called Ninject.

So you ask, why should I look into Ninject while there are several others out there? XML-less configuration. One of the things I cannot stand is XML configuration files. It has been my experience that they can quickly become unwieldy and unmanageable very quickly. Most use their own syntax that is more often than not does not read well and you generally have to do a lot of XML nodes. I do not profess to know anything about the rest of the IoC projects, I do know when something will work for me better than others.

The scope of this blog post is really to make people aware of this project and hopefully with help it gather a few more follower. So please head on over to the Ninject web site and check it out.
 

 Sorry to those of you who have tried to contact me via email from the blog over the past several months. Apparently I forgot to update an email address. This has been corrected, so feel free to contact me.

 

Well Rob Conery is at it again. This time he is keeping us riveted to our chairs with his new MVC Storefront series. So far he has created 3 screencasts that can be found at:

ASP.NET MVC: Introducing The MVC Storefront Series

ASP.NET MVC: MVC Storefront, Part 2

ASP.NET MVC: MVC Storefront, Part 3

This looks like it is going to be a great series and already has me jonesin for more. I am a firm believer in TDD, but readily admit that I have never been able to do it in its purist form. Lord knows I have tried, but for whatever reason it never worked out. So not only are we getting to see this happen in almost real time, we are getting to learn several new things (at least new to me). So head on over and take a look. Each screencast is approx 10 minutes with the 3rd one being just shy of 15 minutes.

It is surprising that something as innocent as creating a screencast can cause an uproar. Not only did he get the normal praise for his work, but he was accosted  by several TDD purists as well as Frans Bouma. While some people might push this to the wayside and say "whatever", I think it shows the fragmentation that is occurring in the .NET world now days. While many of the purists were friendly in their comments pointing out areas where Rob needed to improve and why things are done a certain way, others chose to just outright flame him. WTH!!! When did it become "cool" to do a drive by commenting? Especially to someone like Rob. I am fortunate to know Rob and consider him a friend. I have never seen anything from Rob that warranted this type of behavior and I believe all the open source work he has done in the past and present show his commitment to the community.

The one comment that really got me was the one from Frans. I read Frans' blog consistently and maybe he is just ruffled from all the flame wars he has been involved in the past few months regarding Alt.Net, but I thought he was a tad harsh on Rob. It as if no one listened to Rob's opening statement about the project, that is was a LEARNING exercise, not the gospel. 

Well I for one cheer you Rob. You are a valuable asset to this community as a whole. There are many bloggers out there that have great posts and really help out. All of you that fall into this category deserve OUR gratitude. I cannot count how many times I have learned something new from a blog post. People like David Hayden, Phil Haack, Bill Simser, Ayende Rahien, Scott Guthrie, Kyle Baley, Jeffery Palermo, and countless others. So to you I raise my mug and say well done. You are the reasons we have a great community.

Well it has been a little over 1 week since I quit World of Warcraft and I feel great. I have been playing since April 2006 and have been a part of End Game guilds since hitting the level cap. You don't realize just how addictive that game is until you find yourself scheduling your life around it.

But that is not the reason I quit ironically. It actually comes as part of the life changes I have made lately. As some of you know from reading my other blog posts since September, I have made some career moves. Well I finally hit a point in my career where I am comfortable with everything. I am no longer working the 12+ hour days (unless needed of course), I make a comfortable living, and I want to enjoy life more. It all started when I realized I had lost weight (from 309 to 279) and I was not trying to. I started to analyze why this was happening and I realized it was because of my environment. I was less stressed, eating better, and in general a much happier person. This motivated me to start enjoying my life. I did not want to end up like my mom, being 55 year old and just starting to enjoy life.

So I started making changes. First thing I did was wrap up all work for clients. Next I finalized some dealings with a business partner. Then I left the DotNetNuke project. And finally I stopped playing World of Warcraft. When I really thought about it, I played because I was trying to escape the pressures of my life. Some of these were tougher than the other. Leaving the DNN project was very tough for me to do, but I was no longer willing to put the time in that was required. It has been a great 3 years with the project, but it was time to move on. Thats all I have to say about that.

So it has been 4 months since I started these changes and I am now at 265. My attitude is better, I feel better and more importantly - I am living life as I want to. I have taken up a few new hobbies to keep me occupied, mainly brewing beer and racing RC cars. I have brewed in the past, but I have become very serious about it lately. Right now I have a nice Irish Dry Stout in its final fermentation. I also used to race onroad RC cars, but am now getting into offroad electric. A few friends of mine recently competed in the Cactus Classis here in AZ, prompting my return to the sport.

In the field we are in it is very easy to bury ourselves in work and to not take that vacation. I have found myself doing it many times too. It is important to remember that we often times do this to ourselves. Take a look around at yourself and your life. Are you doing something to hide from your life?

 So I already received some pings from friends that were not aware I had made the change in Jobs and some of them have been like WTF? Well let me tell you about Animal Attraction. Animal Attraction is the brain child of Dan Cohen. Dan comes from a Sales and Marketing background, most notably with the Washington Redskins, but he is also an avid pet lover. Originally Animal Attraction started out as a dating site for animal lovers but it has become much more of a social networking site. We are currently developing version 2, using DotNetNuke, and are hoping to have a beta around the first of the year.

So how do I fit in

Well I am a pet nut. I have two dogs, one blue Great Dane and one Pitbull. My roomate has a Rhodesian Ridgeback as well. If he wasn't allergic to cats, I would have cats too. So to me the fit was natural, I get to marry my love of pets with my love of programming - especially DotNetNuke and ASP.NET, all into one. I cannot think of anything better to do for a full-time job. Oh and did I mention that I get to work from home as well? Can't beat that.

So come on over and signup, www.animalattraction.com, you don't need to be looking for that special someone. You can just come over to support your love of pets, oh and me too.

    As most of you who read this blog are aware, I left CrystalTech a few months back to pursue a different path. I went to work for SMBLive, first as a contractor on a 3 week rush project, then full-time. Well the honeymoon was short lived and after going to Washington D.C. to meet the other members of the company I soon realized that this was not the company for me. I will not get into the details, but lets say the direction the company was taking me was not where I wanted to go. At this time I also realized that I was tired of slaving for someone else and making them money and that I needed to take a risk that I had been avoiding for way too long. I started in the IT game before the first bubble burst and was burned badly by one company and then by a second. So to say I was gun shy of Web 2.0 would be an understatement.

    Along came CrystalTech, whom I worked for a total of 4.5 years, taking a small break to spread my wings with another company during that time. I was comfortable there, I had everything I could want; support from management, all the dev tools I needed, and a great staff. But I wanted more and it was time for me to take a leap of faith. So I did, I went to SMBLive / Mural Ventures. Even though I left them, they served a purpose. They reminded me that 1) I have very marketable skills and 2) I still wanted more from my career and needed to take more risk.

 Jumping - with a safety net

     So I needed another job. Well I contacted my network and put out the feelers all the while hoping a job that I had passed up in May was still available. It did not take me long to hear back from it and the news was positive - I had a new home if I wanted it. So it is with great joy I announce that I am the Development Manager for Animal Attraction, www.animalattraction.com. The owner, Dan Cohen is a great guy and easy to work with. I look forward to my continuing relationship with them. So there was my new safety net, you gotta pay the bills before you can make that leap. While in DC I stayed with my buddy Antonio Chagoury and his family. Let me just say that they are now my second family and I look forward to going back out there several times a year to stay with them. Antonio and I had some good discussion while I was out there about his company Inspector IT and how it was going. He expressed his want to grow the business, I expressed my desire to one day own my own business. With that said, we both went back to our normal lives. When I got back to Phoenix, I got a call from Antonio saying he had something for me and to call him when I got a chance. That phone call changed my life and I never expected to hear what I heard coming from the other end. Not only was I about to make the leap I had been waiting for but Antonio was about the make a leap as well. He offered to make me an owner in his company, an equity owner not options, as well as making me his CTO. So now not only do I have my safety net, but I also have share of a profitable company.

So what does the future hold

  • Well the plan is that Animal Attraction is my focus. We are getting ready to release our beta version of 2.0 based on DotNetNuke.
  • Help grow the Inspector IT business. We handle all aspects of development as well as dealing with Offshore resources if needed.
  • Within 2 years be working full-time for Inspector IT with that being my safety net.
Now before you say "hey wait a minute - your current boss might read this!", let me tell you that he does read my blog and he knows my plans. He is comfortable with them and supports them. Now that is a boss. Before I close this, I wanted to give a warm heart felt thank you to Bob Cichon, the COO of CrystalTech. He always encouraged his employees to have that entrepreneurial spirit and to always seek success, whether it was with CrystalTech or elsewhere.  So thank you Bob - your encouragement as a Boss, Mentor and a Friend have meant a lot to me. And one last thanks to my Mom who is normally the conservative one yet this time could not help but encourage me to take the leap. Love ya MoMo.

 

As many of you already know, I recently left my job at CrystalTech Web Hosting. It was on good terms and I am still friends with everyone there. One of the downsides was the fact I was about ready to make the jump to a dedicated server to house a side project I am working on. I admit, I was leery of search for a Windows Dedicated host, but I eventually found one that seemed like they knew what they were doing.

Let me introduce you to Server Intellect, a company that is consitently in the top 10 Windows Dedicated hosters on HostingReview.com. I ended up getting this server for a very reasonable price (I think at least). If you are looking for a server, I would highly recommend them. This is not a knock on my former employer, it just boiled down to what I would get for the money.  

While reading blogs recently, I came across several blog posts about the new Microsoft Sidewinder mouse. Most of the posts were positive overall and it just so happened that I needed a new mouse. My trusted Logitech MX1000 had finally decided that the years of gaming abuse were too much for it to handle, it stopped holding a charge. I decided to roll the dice and give the Sidewinder a try, even though I was leaning towards a new Logitech MX Revolution.

Well I have to say, it is awkward at best. While it performed flawlessly for the 2 hours I used it, I just could not adapt to it. My hands are on the medium side and I found that I was having to maneuver my hand in ways that one should not have to in order to click a button or scroll a wheel. This thing was designed for people with Shrek hands, no joke. One of the nice things about the MX 1000 and Revolution is their shape. The sloping backside makes for very natural positioning of your hand and you do not feel like you are reaching to click anything. While I enjoyed the weighting the Sidewinder provided, it still could not compare to the weight of my trust MX.

I ended up returning it to Best Buy within less than 24 hours of the purchase. I do have to say that Best Buy took it back without a complaint and issued me a very no hassle refund on it. In the end I ended up getting the MX Revolution and am enjoying it. Is it the same as my old pal, the MX 1000? Nope, but it will make a good replacement. I really wish Logitech would bring back the MX 1000 in the original form, not the Keyboard / Mouse bluetooth combo version they offer now. Seriously, how many people use BlueTooth on the Desktop PC? 

Rob Conery made a very interesting post on Ruby on Rails today. I stand with everything he is saying, especially about how he could not imagine treating his users in the way the Rails team does. This is a very important part of the whole post, if you are going to release something to the public, you need to be willing to support it and the situations that may arise from the use by others. I volunteer as a Project Lead for DotNetNuke and there is one thing I have found out, you don't know shit about your users until they use your product and find bugs you thought were never possible. I understand that it is hard sometimes to maintain your composure when someone you do not know starts verbally abusing you in a public forum. They don't know your dedication to the project, they don't know you, what gives them the right to treat you this way? Well guess what bud, you put yourself into that position. Sometimes you are gonna have people say things that you don't wanna hear, it will make you mad. The only person to be mad at this is yourself. You put yourself in the public eye.

So head on over to Rob's place and check out the post. While you are there, check out his other posts too. He has a very unique writing style that I think displays who he is very well. Rob is an all around good guy and someone I admire deeply. I just want to know, where do you get your energy Rob?


 

More Posts Next page »