You can read more about the new CodePlex OSS initiative from Haack’s blog (not that there’s a lot of detail anyway). I’ve got just a couple quick thoughts:
- A little optimism doesn’t hurt here. Yeah, MS has basically crapped all over the .Net OSS ecosystem in the past and certainly hasn’t nurtured it the same way that the Java vendors did. It’s not like this CodePlex thing is going to make things worse. Let’s see what they come up with here.
- I’ve thought for quite a while that OSS contributions should be a major factor in awarding the MVP and the resulting MSDN license (it’s not today as far as I’ve ever been able to tell). Contributing MSDN licenses to the people who do OSS development would be positive. The MVP program as it stands is more or less a farce. This way it could be useful.
- I’d really like to see MS show a little bit of love to existing OSS projects that didn’t start on CodePlex. Maybe MS saying things like “you know, NHibernate or Castle or log4net or RhinoMocks are good tools that you Mr. Corporate Developer can use to build systems and here’s where to find out more…” I think a simple endorsement from MS would do more than anything else they could possibly do. There’s a thread on Twitter about how much MS’s implicit endorsement of jQuery last year did for its adoption by .Net devs (or maybe it’s just that jQuery flat out rocks).
- I see some people making the old whiney refrain about there being too much diversity and “duplication” in OSS projects. Waa. In all seriousness, diversity is good. Bring on the competition and new ways of doing things and new ideas and let genetic selection weed out the weak. I wrote the very first IoC tool in .Net and yet there’s 6-7 others — and that does not bother me in the slightest. Even Unity, the weakest of all of them, added something new to the IoC story and I’ve stolen features or ideas from almost all of the later tools.
- “Jeremy, haven’t you been one of the people that criticizes Microsoft for duplicating OSS tools? Why isn’t that diversity?” Good question, but you don’t “got me.” The MS equivalents of open source projects (MSTest, MSBuild, etc.) aren’t a work of love like the OSS projects are and they are so frequently just a means for Microsoft to fill holes in their offerings. I thing MSTest and MSBuild were no better than half-hearted efforts just because they needed to check off a box that says “we’ve got one of those in our stack.” Instead, they could have just supported or contributed to NAnt and NUnit or MbUnit or later to xUnit.Net with a lesser effort and gone on to enhance Visual Studio with the saved resources. Microsoft squandered an opportunity cost by duplicating OSS efforts in the past. That’s why the jQuery support rather than writing their own was and is such a big deal to me. Plus there’s also the fact that OSS projects innovate much faster than Microsoft projects. Sorry Phil, but I’d point out the ASP.Net MVC framework as an example of a Microsoft tool that always seems to be playing catch up to OSS efforts.
- MS needs to reach out a lot more to the OSS community. I don’t see a lot of actual OSS contributors involved in that thing.