Microsoft Adds C#, CLI to Community Promise, Boosts Mono Project
In a key move intended to address licensing questions surrounding the Mono Project, Microsoft has agreed to apply its Community Promise to both C# and the Common Language Infrastructure (CLI).
The move will allow developers to use C# and the CLI with Mono, the project sponsored by Novell to develop an open source and Unix-based version of Microsoft's .NET platform, without having to sign a license agreement.
The decision was announced on Microsoft's Port 27 blog on Monday. Specifically, Microsoft is applying ECMA 334, which "establishes the interpretation of programs written in the C#," and ECMA 335, which defines the CLI.
"You do not need to sign a license agreement, or otherwise communicate to Microsoft how you will implement the specifications," wrote Microsoft's Peter Galli in the blog. "Under the Community Promise, Microsoft provides assurance that it will not assert its Necessary Claims against anyone who makes, uses, sells, offers for sale, imports or distributes any Covered Implementation under any type of development or distribution model, including open source licensing models such as the LGPL [Lesser General Public License] or GPL [General Public License]."
The Mono Project had asked Bob Muglia, Microsoft's server and tools president, and Brian Goldfarb, Microsoft's director of developer platform marketing, to clarify licensing of the ECMA standards covering C# and the CLI, which are also ISO standards, noted a blog post by Miguel de Icaza, vice president of developer platforms at Novell and lead developer for Mono.
"Mono contains much more than the ECMA standards," de Icaza noted. "In the coming months, both parties will be working towards splitting the jumbo Mono source code that includes ECMA [plus] a lot more into two separate source code distributions. One will be ECMA, the other will contain our implementation of ASP.NET, ADO.NET, Winforms and others."
Matthew Aslett, an analyst at The 451 Group, said the move resolves a key concern among developers. "The fact that the Community Promise is irrevocable and does not require a license agreement should alleviate the fears of most open source developers," Aslett said in an e-mail. de Icaza's plan to split the Mono source code into two distributions -- one with code covered by the promise and one with code not covered -- should make it easier for developers to ensure they are covered by the promise, he added.
Still, there likely will be skepticism and concerns that Microsoft is looking to trap customers, added Jay Lyman, also an analyst at The 451 Group. "But I think it demonstrates that Microsoft recognizes enterprise open source is here to stay," Lyman said. "I also think it is notable that Microsoft specifically mentions open source licensing and even further names LGPL and GPL. That says a lot."
The timing is also noteworthy, said Forrester analyst Jeffrey Hammond, as many developers are mulling over the future of Java due to Oracle's pending acquisition of Sun Microsystems. "There's still work to be done, especially with regard to getting Moonlight current with Silverlight, but at least we're now talking about technical considerations, and not licensing issues," Hammond said in an e-mail. "This announcement puts that potential roadblock to bed."
Jeffrey Schwartz is editor of Redmond magazine and also covers cloud computing for Virtualization Review's Cloud Report. In addition, he writes the Channeling the Cloud column for Redmond Channel Partner. Follow him on Twitter @JeffreySchwartz.