Dare Obasanjo has a well thought out post today entitled "The 3 Laws of Platform Adoption: Why Developers Choose Platforms and What it Means to You"  It in he says...

When a developer adopts a platform, there is a value exchange between the developer and the software vendor. The more value that is provided to developers by the platform vendor, the more developers are attracted to the platform. Although this seems self evident, where providers of platforms go astray is that they often don't understand the value developers actually want out of software platforms and instead operate from an if we build it they will come mentality.

He then goes on to lay out some very rational reasons why developers would choose one platform over the other.  Issues like speed of development, total cost of implementation, and ease of distribution are addressed.  Every developer should use this kind of criteria to chose their platform.

But they simply don't...

At this point I'm going to admit that this post is more of a rant than anything else.  But I think it is an important rant so I'm going to put it out there.  I'm a .Net developer and I'm also the person who chose to use .Net and C# as the default environments for the agency I work for. 

Since doing so I've received nothing but grief from most of my "techie" friends.

Just this last weekend I had an argument with a friend of mine who does a similar job over why I'm not seriously looking at moving to Ruby (and in particular Ruby on Rails).  I'm sitting there trying to explain to him that the hoops I'd have to jump through just to interact with Active Directory were ridiculous in comparison to the few lines of code it takes in C# but he just wouldn't listen. 

He swore by Ruby's ability to rapidly develop applications but after sitting there with him for hours I didn't see one thing that impressive.  At least, no more impressive than what C# can do with an assist from Subsonic. 

The saddest part of all is that his arguments are a lot saner than a few years ago when he was trying to get me onto Php. 

Again, this is more "rant" than I am comfortable with but I post it because it's a serious issue.  Environment has become the new holy war and no one seems to be acting all that rational about it.   It's the "Religion of Open" and no one seems to care what works well anymore. 

It's all very frustrating and I only hope that maybe a small number of developers might read Mr. Obasanjo's post and actually consider using the criteria he lays out.  They'd almost certainly be better off if they did.