An Open Letter to Scott Guthrie

March 22nd, 2007

Mr. Guthrie and Whom It May Concern,

Thank you for your team’s contributions to the software development industry. ASP.Net, the CLR, and your other significant additions to the .Net platform have genuinely advanced the state of software development. Although it may seem that you are damned if you do and damned if you don’t, most of us developers out here do appreciate your work.

Speaking and working with developers who live daily with your tools, I find confusion and concern over your relationship to the open source community that has grown up around the .Net platform. While Sun, IBM, other platform providers, and ISVs clearly see the open source community as a complimentary codebase to their products, Microsoft tends to use the best and brightest work from the community space as a feature map for .Net.

This is perfectly reasonable considering the your challenge to create the ubiquitous development platform for Windows based application development. It seems that the .Net open source community is a metering rod of what we (in the trenches developers) care about and also serves as a free R&D lab for Microsoft. This is a nice, symbiotic relationship resulting in fewer necessary acquisitions for Microsoft and more heterogeneous tools baked in to .Net.

We can all live happily with that. On one condition.

When rolling something from the community into the .Net platform or tools, please add value above that of the original community solution. It is not enough to simply bake it in and consider that the value proposition. We all know how to include assemblies in our projects, thank you very much. Merely including something in the CLR so that we don’t have to link in an outside assembly is a poor excuse for success. You owe something more to the people who built the original solution. Make it better. Make it rock.

Take, for example, MSUnit. Boo. Hiss. That was a big miss. Can’t they be easier to run in the UI? Where are all of the baked in Asserts from NUnit?

Or take MSBuild. No please, take it. No out of the box task to Zip files? C’mon.

And SandCastle? We’ll just leave that alone for now.

So you can understand our concern when we hear rumor of your new toy, a MVC model for ASP.Net that uses an HttpHandler to invoke controllers. Awesome. Perfect! Yes! About time! Bring it! AND… Please do Monorail justice and don’t kill it without doing something as good or better.

If you cant improve upon the functionality of MonoRail, just point to it as a good practice until you can. This one is far too important for anything less than a home run.

Waiting with trepidation and wide-eyed optimism,

.Net Developers of the World

  • http://Good.com Good
  • Pingback: Paris hilton no underwear.

  • Pingback: Ritalin shipping.

  • http://www.onedotnetway.com Deepak

    I am impressed that Scott Guthrie posted a comment on this post.

    Now my opinion:

    I think lately Microsoft has been sending some very mixed signals about the direction of their efforts. For example consider LINQ To SQL and Entity Framework. Obviously one is better than the other and both are part of the framework. So why have something which is inferior? I can understand if it was done to maintain backward compatibility but with LINQ To SQL, what backward compatibility? No one has produced anything other than tutorials on how to use it.

  • http://www.onedotnetway.com Deepak

    David,

    You may want to moderate comments on your blog. Comments from Paris Hilton about her attributes isn’t very impressive :)

  • Pingback: Prozac.

  • Pingback: Soma.

  • http://www.yurtdisiegitim1.com Yurtd??? E?itim

    Excellent letter! Having used monorail I must say it is a great clean elegant design. If microsoft does it right it would truly rock…. thank’s…