As we approach the technological utopia, the juggernaut of Operating System and Computer Software — Microsoft — has done something that is hard to imagine. See the following picture:
Figure: The Repository of class libraries for .NET Core in GitHub
As the saying goes, “A picture is worth a thousand words,” the above image does worth like a thousand words or more. Time can change things, and the image above shows one of the biggest changes that happened in the Microsoft ecosystem in the current century.
Examining closely at the image, you will notice many things that might cause you to do a double take. The first thing, you should notice, is the name of the repository — dotnet / corefx. What does this repository mean? It means that the core features of Microsoft .NET framework are now Open Sourced. The repository contains a number of libraries that make up the .NET development stack. It is just a start; Microsoft is planning and working to release more libraries, as well as .NET Runtime in the coming months.
Let us focus on the picture again. Check out the site where the repository is hosted. Surprised? It is GitHub! Microsoft decided to upload the source code for their Open Source projects into the largest repository hosting site for Open Source projects on the web. According the Microsoft, they do not want the community to come to them; instead, they want to reach out where the community already is. Anyway, the source code of Microsoft’s Open Source projects is in good hands. GitHub hosts some of the biggest Open Source projects including Ruby on Rails, jQuery, and Node. Microsoft choosing GitHub instead of their own Open Source project hosting website, the CodePlex, is indeed a big change.
And now for the final blow; look at the number of commits to the project. Thus far, there have been 525 commits to this project. While the number is not something to brag about, there is one more thing to note. Most commits to this project came from non-Microsoft personnel. Microsoft seems to realize now that Open Source is the way to go.
Microsoft has released a number of other projects as well in the .NET development stack. Here is a list of some of the projects:
- ASP.NET 5
- ASP.NET MVC, Web API and Web Pages (Razor)
- Entity Framework 6
- Microsoft Azure SDK for .NET
- ASP.NET Ajax Control Toolkit
- ASP.NET SignalR
- .NET Compiler Platform (Roslyn)
- Windows Phone Toolkit
A complete list is at http://www.dotnetfoundation.org/projects
What does this move by Microsoft mean for you?
The shift to Open Source by Microsoft will present a number of opportunities for website and web application developers. The first thing — as per Microsoft — is the ability to build and run .NET code on non-Microsoft platforms, such as Linux, OSX, Android, and iOS. The .NET developers now are no longer stuck with the expense of purchasing Microsoft products to build and host websites and web applications. Another opportunity that the Open Sourcing of Microsoft technology presents is the ability to extend the .NET platform to include features that developers need built into the core. As it is Open Source, anyone can code it and contribute it the community; maybe someone would create a better or useful feature for the .NET platform. The end result will be a great platform for other .NET developers, who may use it to build excellent websites and web applications.