Here’s a bitter, but very accurate description of what goes for open community development in the realm of .NET (Thanks, Merlyn!). It’s a pretty sad state of affair, and I can attest for at least some of it, mainly:
“Last year Microsoft released a new web framework called MVC. It’s not new by web standards … Yet people were waiting for it. People were waiting for Microsoft to deliver it to them.”
“Microsoft themselves … are so cleverly changing just fast enough to keep developers from solving problems themselves.”
And this also goes for faulty “standards”. Some half-baked ideas (like the Microsoft .NET remoting framework) are getting implemented into core systems before someone, Microsoft or else, realises that these are the technical equivalent of horse manure that spent several days in the sun, and now, not only that they are stuck with it, but Microsoft is no longer providing support for their festering framework of scum and villainy.
This is not to say the world of open-community/open-source development is all made out of shiny bits and bytes, but I think we can see how the community leverage the bad parts and enforce standards that other communities can only be envious of, like the way CPAN modules are released along with full documentation and a test suite, the way Git was embraced by the community, how Moose and Catalyst became the forerunners of web and OO development, and how perl itself is now being rapidly developed and released. Unlike the .NET attempt at community, the Perl ecosystem is very healthy and is strong on maintaining its health, in many great ways.