Microsoft and Its Open-Source Plans

Microsoft is now a major sponsor of the Apache Software Foundation and is putting its protocols and formats into a royalty-free license, all part of a larger open-source push.

PORTLAND, Ore.-Once again, Microsoft has used the O'Reilly Open Source Convention as a venue to make a key announcement about the company's involvement with open-source initiatives.

In 2007, Microsoft announced that it had submitted a license to the OSI (Open Source Initiative) for approval. This year Microsoft is unveiling moves in three areas, including becoming a sponsor of the Apache Software Foundation.

Sam Ramji, senior director of platform strategy at Microsoft, is slated to keynote at the show July 25 and announce that Microsoft has become a Platinum sponsor of the Apache Software Foundation. Ramji also will talk about two other strategic moves for the company, which is looking to cooperate more with the open-source community.

According to the foundation's Web site, there are four levels of Apache sponsorship, with Platinum being the top level. That requires a contribution of $100,000 a year. The other three levels are: Gold for $40,000, Silver for $20,000, and Bronze for $5,000. Some may wonder whether Microsoft is trying to buy its way into segments of the open-source world.

Geir Magnusson Jr., a director of ASF, told eWEEK that the foundation welcomes Microsoft's participation. However, Magnusson said the proceeds from Apache sponsors are primarily used to keep the organization running.

"In the Apache Software Foundation, individuals are the only real entities; we don't have corporate members," he said. "The only way to participate in the foundation's work is as an individual, and it's based on your contributions to projects, not by your financial contributions."

Jim Jagielski, co-founder, member and director of The Apache Software Foundation and a core developer on several ASF projects, said:

""I think the move is a good and smart one for Microsoft and a real, multicolored feather in the ASF's cap. It really indicates that Microsoft values the ASF and the ASF projects, but also that the ASF is kind of seen as a level-headed player in the open source community. It also shows that Microsoft is serious about open source, but helping to sponsor what is likely the pre-eminent FOSS [free and open source] organization out there. Both Microsoft and the ASF are very excited by the sponsorship, both as a singular event but also what it implies for the continued growth and acceptance of FOSS.""

Ramji said Microsoft's support and plans to work with ASF differ from Microsoft's collaboration with the Eclipse Foundation.

"With the Eclipse Foundation, we're working right now to do technical engineering support," he said. "We're not contributing patches, we're not giving code. We're answering questions; we're helping to troubleshoot bugs in the implementation of SWT [Standard Widget Toolkit] for WTF [Eclipse Web Tools Framework]. So it's a technical relationship, very similar to the relationship we have with Mozilla for Firefox. As they find bugs, we help them deal with it."

As Microsoft brings out new releases, the company also will let its core ISV partners "know there's a new release of Windows coming and we'll bring in a bunch of ISVs. My group's approach is [that] we're going to treat leading open-source projects like they're ISVs and give them that same level of handholding and assistance adopting the next generation of technology. So this is what I consider a technical collaboration. And we'll continue that technical collaboration with different ASF subprojects like Axis 2, like Poi, like Jakarta," Samji said. "The contribution and the explicit partnership are both a material financial contribution and a material political contribution to say we think these guys do great work."

Upon hearing the news of the Microsoft deal with ASF, John Lam, head of the IronRuby open-source effort at Microsoft, said it's "all about raising the bar higher each time."

Ramji said Microsoft has put many of its protocols and formats "into a perpetually royalty-free license that includes all the Office binary specifications. And this is really relevant to a specific project called Apache Poi. It's an Apache-licensed Java implementation of Microsoft file formats, and it's growing to include Open XML support.

The royalty-free license is called the OSP (Open Specification Promise).

The other part of the three-pronged Microsoft announcement is that for the first time, the company will be submitting a patch to a GPL2 (General Public License version 2)-based project, Ramji said. The GPL V2 project Microsoft has submitted a patch to is known as ADOdb, he said. ADOdb is a PHP project that is a data access layer that many PHP applications use.

"In February we launched Windows Server 2008, which included at the launch support for PHP with a high-performing PHP runtime," Ramji said. "Since then the SQL Server team has shipped a PHP native driver for SQL Server, which is a dramatic improvement to the previous access technology that existed. And this is the first step in taking that set of technology and making it available all the way up the PHP application stack."

Thinking of the whole stack, Ramji said "you need an operating system and you've got a database, but then you've got substacks within PHP. You've got the foundations like ADOdb for data access and then in the future you can expect us to do more contributions to application layer things like photo sharing, bulletin boards and content management systems."

ADOdb is a database abstraction library for PHP and Python based on the same concept as Microsoft's ActiveX Data Objects. It allows developers to write applications in a fairly consistent way regardless of the underlying database storing the information. The advantage is that the database can be changed without re-writing every call to it in the application.

This being the first GPL2 patch from Microsoft "was a big deal," Ramji said. "It took a long time to figure out a way we could do that that in a way that protected the project and protected Microsoft. I think there are some things that IBM figured out and put into practice over the last decade and Microsoft has figured out how to do that."