Microsoft announced a community technology preview (CTP) of an open source Eclipse plug-in for Silverlight development on the Macintosh earlier this month, continuing what it says is an overall push towards interoperability and cooperation with the open source community.
With the plug-in, Eclipse users have a complete equivalent to Microsoft's Visual Studio Silverlight environment on Eclipse, including XAML editing, said Vijay Rajagopalan, principle architect in the Microsoft Interoperability team within the company's Platform and Interoperability Strategy division.
Rajagopalan said that while he doesn't expect many Macintosh developers to write line-of-business applications in Eclipse, there's nothing to stop them from doing so.
"Traditionally, Mac developers are used to writing more of the enthusiast and media-rich applications," he said. "So let's say it's a media application that a Mac developer needs to write that needs to be cross-browser ... now you have a good choice with Silverlight."
Microsoft's involvement in the project "is part of a continuous commitment to interoperability," Rajagopalan said. That commitment consists of three main points: developing products, engaging the open source community and Microsoft's open specification promise, which indemnifies developers who implement certain proprietary Microsoft specifications against intellectual property suits.
Microsoft is involved in 17 projects to support interoperability, including translators for OpenOffice.org's ODF document format and several Ruby on Rails and PHP projects. The company reached an agreement in 2006 with Novell, which owns the SUSE Linux distribution, to work on interoperability issues from technical and legal perspectives. Novell sponsors Mono, an open source C# compiler and implementation of .NET.
Microsoft and the open source community
Although Microsoft's bread and butter continues to be selling its proprietary, closed-source software, the company sees open source as an important way to achieve interoperability, Rajagopalan said.
"I look at it as: let's see if we can solve customer problems around interoperability, and if working with open source is an important thing for that, I will definitely do that," he said. "Open source is essentially a way to solve interoperability ... it hasn't impacted Microsoft's larger licensing models."
One of the cultural shifts within Microsoft has been over its distribution methods, Rajagopalan said. The company traditionally likes to centrally manage its software's distribution through MSDN and, to a lesser extent, its open source portal CodePlex. But the open source community is more fragmented, and projects typically maintain their own distribution networks for updates and plug-ins, Rajagopalan said.
To that end, Microsoft now pushes its contributions to projects through those projects' pipelines. The Silverlight plug-ins for Eclipse are available through the software's update wizard, and Microsoft also posts projects to SourceForge.net, RubyForge and Zend, a PHP framework.
"It's not enough that we ship the product," he said. "We need to work really closely with the community."