ASP.NET MVC Now Taking Contributions
Technically speaking, ASP.NET MVC has been open source all along. But as with most Microsoft projects it wasn’t “open development”, all work was done internally with occasionally drops. As of yesterday, that all changed. According to Scott Guthrie, “everyone in the community will be able to engage and provide feedback on code checkins, bug-fixes, new feature development, and build and test the products on a daily basis using the most up-to-date version of the source code and tests.”
The first pull request accepted into ASP.NET MVC is from none other than Miguel de Icaza of Xamarin. Miguel is well known as the founder of the Mono project. ASP.NET is not the first Microsoft project to move to an open development model, that honor goes the Azure SDKs on GitHub.
It is important to note that Microsoft isn’t turning over control of ASP.NET MVC to the community. Unlike IronRuby and IronPython, which are now managed by Miguel de Icaza and Jimmy Schementi, Microsoft is still dedicated to supporting the technology stack and fully staffing the ASP.NET MVC, ASP.NET Web API, and Razor projects.
The open source ASP.NET libraries are being hosted on CodePlex, which recently acquired Git bindings. While TFS works well when centralized management is needed, Git’s decentralized nature is widely regarded as a better option for open source projects. As of now, there are already 20 forks for ASP.NET MVC and its associated projects.
Some parts of ASP.NET, most notably Web Forms, will not be open sourced at this time. Scott Hanselman explains,
The components that are being open sourced at this time are all components that are shipped independently of the core .NET framework, which means no OS components take dependencies on them. Web Forms is a part of System.Web.dll which parts of the Windows Server platform take a dependency on. Because of this dependency this code can’t easily be replaced with newer versions expect when updates to the .NET framework or the OS ships.
ASP.NET MVC 4, ASP.NET Web API, ASP.NET Web Pages v2 (Razor) are now offered under the Apache 2.0 license.