The .NET Framework has developed with uncharacteristic malaise; likely diagnosis: it has come down with a surprising and puzzling case of openness.
Scot Guthrie, provides some of the fine print:
“We’ll begin by offering the source code (with source file comments included) for the .NET Base Class Libraries (System, System.IO, System.Collections, System.Configuration, System.Threading, System.Net, System.Security, System.Runtime, System.Text, etc), ASP.NET (System.Web), Windows Forms (System.Windows.Forms), ADO.NET (System.Data), XML (System.Xml), and WPF (System.Windows). We’ll then be adding more libraries in the months ahead (including WCF, Workflow, and LINQ). The source code will be released under the Microsoft Reference License (MS-RL).”
As yet, not one opinion appears to be dominating as to what this might mean. Some of my favorite examples include Fake Steve is already scoffing at the move, while assuring us all that Apple will never stoop to this. Robert Scoble is characteristically derisive in his analysis. Others believe this move is a tacit acknowledgment of Microsoft’s failure to capture the imagination of a broader developer community. Others don’t see it affecting them much, while at the extreme, the howls of delight from competing development platforms and paradigms is almost deafening…
What this means for the likes of Novell’s effort towards delivering Mono, nor has anyone commented on how this might affect newly invigorated Novell/Microsoft marriage of convenience.
Before I offer an interpretation of what this means first let me re-iterate my context:
This blog serves a number of perspectives, base on my experiences from the open source, Java community and now the .NET work development platforms – great care is taken to avoid spouting or worse still regurgitating cool aid and of bile from other sources.
Exposing the internals of the .NET Framework is I believe the tip of the ice berg. Think back to early attempts by the Java platform to adopt a more open stance and move away from the ivory tower and provide more inclusive processes for the Java community at large. I think it is safe to say that we can and should expect to see additional baby steps from Microsoft on this score. Moves such as this often have halo-affect, which spurs innovation, discussion and ingenuity that is difficult to predict but is over-all beneficial to the adoption of any platform.
An important distinction here is that Microsoft is make strides toward an more open and inclusive process. I think it’s unlikely we will ever see the equivalent of the JCP for .NET, but my hope it we will see the emergence of a community framework that will facilitate contributions and motivate people to bleed back their ideas into the platform. It is actually an implicit good develop for Java too: a move such as this may be dismissed, but I am sure there are those in the Java community who will give in to their curiosity and peal back the covers on the .NET internals …