Why Microsoft Makes .NET Open Source?
Recently Microsoft open-sourced their most beloved development platform, .NET (pronounced as “dot net”) [1]. Previously, the platform is closed source, which means that no one else than internal developers at Microsoft would be able to see the source code for .NET and contribute to it, and that people are unable to port it to Mac/Linux. Today, however, we can see .NET open-sourced on github, currently the most popular source-code hosting website [2]. People are able to see the source code of .NET, ask developers questions about the code by opening an issue, and even contribute their own share of code. Historically, Microsoft has been holding a very strong stance against Open Source. Why all of a sudden, it decide to open its most successful closed-source software, the .NET platform? The answer is related to the network effects we learned in class.
Before explaining how Microsoft’s decision relates to the network effects, I’d like to first supplement some background information. Several years ago, Open Source software was much less popular than it is today. The major open source hosting websites at that time were Google Code and Bitbucket, but not many people other than developers were using them. However, in 2008, a new player disrupted the scene: Github. With its intuitive UI design and powerful features, it gained popularity within a very short period of time. Today, it has become the Facebook of programmers, home to over 13 million programs and 1 million developers. Furthermore, with the increased popularity of MOOC, more and more people started learning to code, increasing the number of developers drastically. As a result, Open Source, the form of development that is open to everyone and allow developers to learn from, modify, and even redistribute the programs, become more and more appreciated by developers.
When Windows released Windows 8, we saw Microsoft’s effort in creating a unified UI between desktop and mobile devices. However, compared to the two most prominent players in the game, Apple’s iOS and Google’s Android, Microsoft’s market share is next to nothing, and it keeps to shrink as developers choose the more popular iOS and Android. This is an example of network effects. Since the market share of Windows App Store is small, people have less expectation for it. As long as the market share of Windows App Store is lower than the unstable equilibrium, it would suffer from a downward pressure. With this background, it becomes clear why Microsoft would Open Source .NET. By making .NET open source and cross-platform (originally it’s only available in Windows), Microsoft expects to increase its market share to pass over the unstable tipping point, so that it would gain a upward pressure and regain its throne in the mobile world.
Sources:
[1]: http://news.microsoft.com/2014/11/12/microsoft-takes-net-open-source-and-cross-platform-adds-new-development-capabilities-with-visual-studio-2015-net-2015-and-visual-studio-online/
[2]: https://github.com/dotnet