Microsoft at a Crossroads
May 31, 2007
Posted by on
Microsoft’s developer story has recently diverged into a tale of two cities. Martin Fowler and Sam Gentile both recently wrote about it.
On one hand, you have the traditional Mort-focused camp, which focuses on creating drag-and-drop developer tools like GridViews, DataSources, and Typed DataSets. For this group, the traditional ASP.NET WebForm model appears to be the quickest way to Rapid Application Development. However, RAD technologies like these tend to break down when they are used on many large scale projects. This is generally is due to the lack of testability and the inherent bad practices that many new ASP.NET developers pick up when using the tools out of the box. Without some solid best practices guidance, many ASP.NET projects often fall into a black hole when they reach the testing stage.
On the other hand, there is a large community of software professionals that utilize Agile development, Open Source tools, and better developer practices while still focusing on the Microsoft platform for their projects. These developers often balk at Microsoft’s attempts to copy Open Source projects and many find Microsoft’s whole attitude towards open source to be very frustrating. There has recently been a lot of concern that this group is likely to migrate to the Next Big Thing (whatever that may be) and leave the platform behind all together.
While there are groups within Redmond that attempt to educate developers around some best practices, they aren’t promoted well by Microsoft. Also they also tend to face some backlash from the larger developer community due to the shaky middle ground they meet between the two sides of the fence.
I am currently focused on developing for the Microsoft platform, but I have no reservations about moving to another platform at some point in my career. I’ve done it before and I can easily do it again. My main reason for sticking with .NET has been the amazing friends and colleagues that I’ve met while working with the platform. The community that has grown around the .NET platform has been it’s biggest strong point for me thus far. And I think that if the more prominent members of this community start moving to another platform, I will definitely take a look at that platform for myself.