Deliver Awesome UI with the most complete toolboxes for .NET, Web and Mobile development
Automate UI, load and performance testing for web, desktop and mobile
Rapidly develop, manage and deploy business apps, delivered as SaaS in the cloud
Build, protect and deploy apps across any platform and mobile device
Automate decision processes with a no-code business rules engine
A complete cloud platform for an app or your entire digital business
Deploy automated machine learning to accurately predict machine failures with technology optimized for Industrial IoT.
Optimize data integration with high-performance connectivity
Connect to any cloud or on-premises data source using a standard interface
Build engaging multi-channel web and digital experiences with intuitive web content management
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 …
View all posts from Jonathan Bruce on the Progress blog. Connect with us about all things application development and deployment, data integration and digital business.
Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.
Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.