News

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."

About the Author

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.

comments powered by Disqus

Featured

  • GitHub Expands Copilot Enterprise Search in Visual Studio and VS Code

    GitHub supercharged search for its Copilot Enterprise AI assistant in both Microsoft's Visual Studio IDE and Visual Studio Code so developers can now get results from well beyond local codebases, including the internet.

  • What's New in TypeScript 5.5, Now Generally Available

    Microsoft shipped the latest iteration of its type-infused superset of JavaScript, TypeScript 5.5, introducing inferred type predicates, control flow narrowing, JSDoc @import and other enhancements.

  • GitHub Copilot for Azure Gets Preview Glitches

    This reporter, recently accepted to preview GitHub Copilot for Azure, has thus far found the tool to be, well, glitchy.

  • New .NET 9 Templates for Blazor Hybrid, .NET MAUI

    Microsoft's fifth preview of .NET 9 nods at AI development while also introducing new templates for some of the more popular project types, including Blazor Hybrid and .NET MAUI.

  • What's Next for ASP.NET Core and Blazor

    Since its inception as an intriguing experiment in leveraging WebAssembly to enable dynamic web development with C#, Blazor has evolved into a mature, fully featured framework. Integral to the ASP.NET Core ecosystem, Blazor offers developers a unique combination of server-side rendering and rich client-side interactivity.

Subscribe on YouTube