Published on April 2nd, 2012 | by Ndifreke Ekott0
Microsoft Makes ASP.NET MVC A Lot More Open
In the world of web application development especially on Microsoft’s Platform, ASP.NET MVC has been adopted on several small to large scale software projects. MVC stands for Model View Controller and is a design pattern employed to make building robust applications easier. ASP.NET MVC started out as a third party framework and was later adopted by Microsoft.
ASP.NET MVC, Microsoft’s Web application framework, has been open sourced since its first version, and was switched to Microsoft’s permissive license in 2009. However, there’s a difference between open development and mere open source (as those following Android’s development will be well aware). Previously, the source was available, but its development was Microsoft’s sole concern; third parties had no ability to suggest changes or contributions of their own, and little ability to comment on the work that Microsoft was doing.
Under the new development model, developers will be able to see the product as it’s being created, right down to the level of individual code changes, bug-fixes, and new features. Perhaps most significantly of all, for the first time Microsoft will be accepting patches and contributions from third parties to the product. If you have a fix for a bug or some code for a new feature, you could see it integrated into the mainline ASP.NET MVC tree. The first such update has already been accepted. This patch came from Miguel de Icaza, founder of Mono, the open source implementation of the .NET stack.
In addition to the open development of ASP.NET MVC, Microsoft has also opened the source and development of two closely related projects: the ASP.NET Web API, and ASP.NET Web Pages v2 (Razor).
This is the second project that Microsoft has operated in this way. Microsoft will still be the final arbiters of what gets integrated and what doesn’t, and ASP.NET MVC will remain a supported, Microsoft-developed framework. The closer community involvement should produce a system that is more responsive to developer needs, and more innovative to boot.