Here’s a funny April Fool’s joke: Microsoft’s MVC is going open source, according to a blog post by Scott Guthrie on Wednesday.
But the punch line isn’t that MVC is really closed source — it’s that the headline a legitimate, non-April-Fool’s-joke news. I didn’t quite believe it until I went and grabbed the source code, but there it is. ASP.NET MVC is open source.
Guthrie didn’t explain why the move was made in his blog, but it’s consistent with Microsoft’s Web strategy. The company has already released several Silverlight components as open source, it’s working with Novell to develop an open source implementation of Silverlight, and it even worked with a company called Soyatec to put out a Silverlight development plug-in for Eclipse, the open source, Java-based IDE.
When I talked to the principle architect on Microsoft’s interoperability team about the latter, he said he sees open source purely as an interop strategy: “it hasn’t impacted Microsoft’s larger licensing models,” he told me. And yet, Microsoft seems to inch ever-closer to being a major player in the open source world.
The overall direction Microsoft seems to be taking is that the technologies higher up in the stack are candidates for open source, but its foundational technologies are still closed and proprietary. Microsoft’s MVC may be free, but you’ll need to run it on something; Microsoft is hoping you’ll pick Windows Server with ASP.NET 3.5 rather than an open source solution like Mono.
In other words: the idea is free, but the implementation will cost you.