To me it seems like yesterday when Bill Gates declared that Linux was a “cancer for the technology industry”. At the time, I bought into it and believed him. I frequently said, “Linux is free; free like a puppy.” But in reality, Bill Gates made that statement over a decade ago—times were different then. How time changes and heals all; last week Microsoft announced that with the next version of .NET, (which we presume will be called simply .NET 5) it will “open source” most of the full server-side .NET core stack. I have to say that this is the biggest and most important announcement in the Microsoft developer ecosystem since the announcement of .NET itself over a decade ago.
The .NET framework won the Java war for a reason. Microsoft’s corporate VP of the developer division, Soma Somesagar, believes that open sourcing .NET is the way to move the framework forward. During the announcements, Somesagar stated that over six million developers build applications on top of the .NET framework. .NET has become so popular and beloved that a majority of the big enterprises run the bulk of their applications on .NET. Over the last few years Microsoft has lost a good share of the young and the millennial programmers, though, and .NET has lost a bit of credibility and is sometimes viewed as legacy to these young, talented programmers that thrive on “more agile” programming languages and platforms typically living in open source.
The open source of .NET will be broadened to run on both Linux and Mac OS X. Microsoft plans to work with the Xamarin-sponsored Mono community, which already produces a cross-platform open source .NET framework based on C#. “We will announce this and then take the next few months working with the Mono community,” Somesegar said. “We are working very closely with the Xamarin guys on this.”
As a part of the announcements (and just as shocking) Microsoft proclaimed they will distribute a real, fully functional version of Visual Studio and distribute it to the community for free. Historically, Microsoft has offered watered down versions of the award winning toolset, but never a fully functional/fully blown version. That is a sacrifice to the books, for sure, albeit a financial sacrifice that would pale compared to the licensing of Office and Windows. It's a sacrifice that the previous regime at Microsoft must have fought against for years. This “Satya Era” is so different. Microsoft did not explain, though, if and how they were going to compensate all the organizations who have purchased licenses to Visual Studio or earned the licenses the hard way, though painful certification in the Gold partner program like my company, InterKnowlogy.
I think it’s important to notice that these announcements are only related to the server side of .NET. These announcements do not include the devices, the client-side of .NET. Xamarin is the leader in this space right now, which is why I and many in the industry have been hoping/predicting an acquisition of Xamarin by Microsoft for years. But if you think things through, as result of the creation of native server side .NET frameworks for both Linux and Mac OS X, Microsoft (or whomever takes it on) will have to build all the pieces an enterprise will need to run applications: security, crypto, authentication and authorization, and more. If Microsoft and the community builds that, it seems like the secret sauce of Xamarin will be gone and as a part of this open source effort, the client side of .NET will not be that big of a deal to create and be built anyway in direct competition of Xamarin. The result would be one giant cross platform open source .NET, which seems logical to me. Like the way I end many of my commentaries, only time will tell.