Microsoft, one of the biggest rivals to open-source programming, has begun funding the Apache Software Foundation, one of open-source software's biggest supporters.
"Microsoft is becoming a sponsor of the Apache Software Foundation. This sponsorship will enable the ASF to pay administrators and other support staff so that ASF developers can focus on writing great software," said Sam Ramji, a senior director of platform strategy at Microsoft. He announced the move Friday in a speech at the Open Source Convention, and noted Microsoft's support of Apache on the software company's Port 25 blog as well.
Obviously you might think this an opportune moment to cue up the soundtracks of record needles screeching and cars crashing into each other. But hold your horses.
For one thing, some within Microsoft have for years been making various encouraging words about open-source software, even though others have engaged in serious trash-talking. The company has no apparent desire to let the programming world have its way with Windows, as is possible with Linux, but Microsoft has been trying to make nice in some circles.
Playing nice with open source
For example, Microsoft has released its own open-source licenses and has put some technology under its Open Specification Promise, which lets open-source programmers use it. Also on Friday, Ramji said that policy makes it clear the promise applies to commercial uses of the technology, too.
Another example: Microsoft has been working closely with Zend for Windows support of PHP, an open-source project that lets servers create Web pages on the fly.
PHP is often used in conjunction with other open-source components: Linux, the Apache Web server software that's used to dish up Web pages, and the MySQL database that's used to store the data used to build Web pages elements such as online catalog pages or online forum postings. In fact, the four are used often enough that there's an acronym for it: LAMP.
But there's also the idea of WISP, which substitutes many of Microsoft's own components: Windows, Internet Information Services for a Web server, and SQL Server for the database. On Friday, Microsoft released a patch to ADOdb, a package PHP uses to access databases. The patch lets PHP use SQL Server.
In other words, some parts of Microsoft are learning how to play nice with some parts of the open-source world.
Apache's liberal license
Second is the Apache License that governs the foundation's projects. Many of Microsoft's attacks on open-source software were aimed at the General Public License, which has a reciprocity provision: If you make a change to a GPL project, then distribute software employing that change, you must share the change under the GPL.
The Apache License, though, lets programmers take software and combine it with proprietary software in any way, with no obligation to share. That's how IBM, for example, uses the Apache Web server software in its proprietary WebSphere product.
For Microsoft, that means Apache's projects can be used within Microsoft. And there are some that could be of interest.
Apache: Useful projects
Third is what the Apache Software Foundation is up to.
When it began, Apache didn't have too many projects under its umbrella besides the HTTP Web server that has surpassed Microsoft's competing products in market share since at least 1995, according to Netcraft's Web server survey.
Here's one that Microsoft, given its so-far fruitless efforts to catch up to Google in search, might enjoy: Hadoop, an open-source version of Google's MapReduce algorithm that's instrumental to processing huge data sets. Yahoo contributes to Hadoop and uses it in its own operations.
There's nothing stopping Microsoft from using Hadoop or any other Apache project without funding Apache, but sponsorship makes some sense for political and practical reasons.