Live from Visual Studio Live!: Microsoft Opens Development of ASP.NET Projects

Microsoft's decision this week to welcome contributions from the open source community to its ASP.NET Web development framework wasn't really about open source, Scott Hanselman, senior program manager in Microsoft's Developer Division, told attendees at the Las Vegas edition of the Visual Studio Live! 2012 developer conference series today.

"This is about open development," Hanselman told attendees. "What it means is that you can fix a bug in your repository, and we'll set you up with a contributor agreement, and your code will be vetted the same way our product code is vetted."

The source code for ASP.NET MVC has, in fact, been available under an open source license since the first version was released, but development was restricted -- no third parties allowed. With this change, Microsoft has opened the door to third-party contributions of patches and code to ASP.NET MVC v4, and added the ASP.NET Web API and ASP.NET Web Pages v2 (code-named Razor), all under the Apache 2.0 license. The company says it will host code repositories for all three projects on its CodePlex Web site.

Microsoft's Scott Guthrie made the initial announcement in a blog post. For the first time, the company will "…allow developers outside of Microsoft to submit patches and code contributions that the Microsoft development team will review for potential inclusion in the products," he wrote. "We announced a similar open development approach with the Windows Azure SDK last December, and have found it to be a great way to build an even tighter feedback loop with developers -- and ultimately deliver even better products as a result."

Contributors submit what is called a "pull request" to offer a bug fix or patch. The first pull request for ASP.NET came on the heels of the announcement from Miguel de Icaza, CTO of Xamarin, a cross-platform mobile development company founded by the team that leads the Mono project (which de Icaza also founded). The newly released Microsoft source code will be incorporated into Xamarin's products and the open source Mono runtime, the company said in an e-mail. Xamarin also plans to integrate the Razor Engine into its mobile products.

Keep in mind that Microsoft isn't turning over control of the ASP.NET projects to the community. Also, some parts of ASP.NET (Web Forms, for example) will not be open sourced.

"ASP.NET MVC, Web API and Razor will continue to be fully supported Microsoft products that ship both standalone as well as part of Visual Studio (the same as they do today)," Guthrie noted. "They will also continue to be staffed by the same Microsoft developers that build them today (in fact, we have more Microsoft developers working on the ASP.NET team now than ever before). Our goal with today's announcement is to increase the feedback loop on the products even more, and allow us to deliver even better products..."

Although he tried to move passed the ASP.NET announcement quickly during his Visual Studio Live! presentation, Hanselman seemed especially delighted by the decision. "I think open source makes Microsoft seem friendlier," he said, "less like the Death Star."