For a decade, Microsoft was open source's worst enemy, combating it at every turn. But last week Microsoft joined the Apache open source project as a platinum sponsor, promising to put $100,000 per year into a project that beats its own IIS (Internet Information Services) in the market. Microsoft also made some of their patents available for use in GPL software like Linux without a royalty.
Has Redmond given up the fight? Or is this just their latest strategy?
Years of Ill Will
Just a few years ago, Microsoft exec Jim Allchin called open source "an intellectual-property destroyer, I can't imagine something that could be worse than this for the software business and the intellectual-property business." Craig Mundie called it "unhealthy and economicaly unsound." But that was the old Microsoft, not the new cute one with an Apache feather in their hair and Bill Gates gone forever.
Now they just want to interoperate, right?
Wrong. You wouldn't have to look too far to convince yourself that Microsoft still engages in hard-edged fighting against open source. The Office Open XML standard has recently been pushed through ISO with so many irregularities in process that four nations complained. There already was an ISO-accredited office document standard called OpenDocument, created by the OpenOffice team. It was one-tenth the size of Microsoft's effort, and did the same work. But it would have put Microsoft and open source on an equal footing. Office Open XML, in contrast, is 6,000 pages long, so large that it's not possible for a programmer to learn it in his or her useful lifetime. That'll keep the open source folks from ever handling files quite the same way that Microsoft does.
So much for interoperability.
The Battle Ahead
To some extent, Microsoft has lost. The open source movement that they battled took over a big part of IT during the ten years they fought it, just as open standards displaced deliberately incompatible systems and the 70% profit margins they locked in for hardware vendors in the '80's. While Microsoft battled Linux and Apple to hold on to the desktop, Google and open source walked away with the Web, a bigger prize.
Now Microsoft stands on a precipice, before a market shift from PCs toward embedded devices. Today's cell phone is as powerful as yesterday's desktop. Linux, and open source svelte, functional, and power-saving promise to take a big chunk of that market. Market leaders like Novell and Symbian position themselves, investing billions in open source as Google mounts its own open source play on their market.
But Microsoft can still influence how things go from here on. If they have to live with open source, the Apache project is Microsoft's preferred direction. Apache doesn't use the dreaded GPL and its enforced sharing of source-code. Instead, the Apache license is practically a no-strings gift, with a weak provision against patent lawsuits as its most relevant term. Microsoft can take Apache software and embrace and enhance, providing their own versions of the project's software with engineered incompatibility and no available source, just as they forced incompatibility into the Web by installing IE with every Windows upgrade.
IE is derived from Mosaic, the original Web browser, open source with a license similar to Apache's. So, this isn't a new strategy. The plan, then, could be to have Microsoft servers vie for dominance with their own Microsoft specialized versions of Apache applications. Or it could be that Microsoft sees itself replacing Linux in the market as a hosting platform for open source. Microsoft would run open source and .NET, while Linux would just run open source, and Mono, which is always going to trail behind .NET as Wine has trailed behind Windows.
But it is still a long-shot for Microsoft to win that market. And all of this depends on Microsoft producing a better server operating system, the next thing after Vista. Vista's customer-hostile emphasis on digital rights management, often handicapping its own features in suspicion that the user might have illicit content, caused its downfall. IT managers won't stand for that, and thus Microsoft has a lot of code to trash and rewrite before it can make an acceptable server platform.
An Interoperable Wolf in Sheep's Clothing
But Microsoft is only joining Apache to be interoperable, protest their apologists. Let's look then, at what Microsoft has to do to be interoperable. Microsoft can use Apache project code in their own proprietary software without being a member of the project, and without paying anything, because the Apache license is a gift with no strings attached.
Even GPL software is free without restriction for everyone to read, and to use its ideas, formats, and algorithms in implementing interoperable proprietary products - the only restriction is that GPL code can't be literally cut and pasted into those products. So, the open source community has done everything necessary for Microsoft to be interoperable with them, no signatures required. Would that Microsoft were so nice to others.
Microsoft has lots of money to hire key Apache developers, if they actually plan to use the code and want good service from its developers on a 24/7 basis. So, this $100,000 contribution and the partial patent grant aren't about interoperability. It's for publicity, and to convince government regulators, not the most technical people in the world, that Microsoft has joined open source and is now a well-behaved company, no anti-trust issues at all. The bad part for open source is that Microsoft is increasingly in a position to speak to European legislators as an insider in the open source community while requesting increases in software patenting that would block open source. That patent matter is expected to come before European officials, again, by this winter.
What the Open Sourcers Will Do
One strategy that open sourcers will follow was created by Richard Stallman about 25 years ago. Stallman, a Macarthur "genius grant" recipient, realized that it wasn't sufficient to just give away source code: the largest companies would still be able to use their market advantages to dominate. There had to be something to keep the software free as a sort of public good while it evolved, a global form of sharing rather than a no-strings gift.
Stallman created the GPL, turning copyright law on its head to enforce sharing rather than prohibit it. GPL has the unique power of being able to enforce upon companies the size of Microsoft a fair and equal partnership with other developers, be they other companies, schools, or individuals. Obviously, Microsoft hated the GPL.
Last year, GPL went through a major revision, with the participation of dozens of attorneys from the world's largest companies, along with academics and individuals. That caught it up with the elaboration of copyright and patent law over the past quarter century. A second version, the AGPL, has evolved to deal with the business model of Google, software as a service instead of on the user's PC. That's fortunate, as GPL is going to be even more important now.