The submission by Microsoft of twenty thousand lines of code to the Kernel has, predictably, caused many an eyebrow to arch. The phrase "beware Greeks bearing gifts" comes swiftly to mind. I checked the press release. I also checked the calendar just to make sure I hadn't fallen into a wormhole and emerged back on April Fools Day. I hadn't. That reaction was probably replicated right across the free software community. Given Microsoft's track record it's hardly surprising. Perhaps what was more interesting was Linus Torvalds' reaction. After all, this is not an inconsequential flame war about using Gnome or KDE.
Torvalds seemed to express indifference to the submission which he dismissed as only being about device drive code. If he looks at it at all it will be after it has been filtered through others, and even then only out of a sense of "morbid curiosity" apparently. The code is concerned with virtualizing GNU/Linux as a guest in Windows. That tells you a lot about Microsoft's motives. If clients can't run GNU/Linux on Hyper-V, Windows' virtualization software, it makes it more likely that they would migrate to wholly free and open source systems running on wholly free and open systems.
Microsoft never do anything which does not promote their commercial advantage
We have all learned from experience that Microsoft never do anything which does not promote their commercial advantage. Their dictionary simply does not contain the word disinterested. Don't get me wrong. There is absolutely nothing wrong with running a business for profit; but it does matter how you get, maintain and extends that profit. I won't even bother to recite the litany of Microsoft's sharp practice, bullying, and FUD that has characterized their behaviour virtually since day one.
One thing stood out about the code submission. It was released under the GNU GPLv2. This from a company that called GNU/Linux a "cancer" and "communist". They also expressed disdain for the GNU GPLv3 because of it's viral nature, so you can understand why they used the previous version of the GPL but its provisions should at least ensure that they cannot prevent the distribution of royalty-free licences. It was never on that they would release it under Version Three as it is a matter of record that they regard it as viral. They couldn't anyway as the kernel is resolutely version Two.
So far so obvious and inevitable. Microsoft's submission will doubtless generate a lot of noise. But it shouldn't really. It's strategy of extend, embrace and extinguish is known and it's a repeat offender. Amidst all the inevitable digital noise we are liable to be deafened and miss the really significant thing here. Torvalds' reaction.
In an interview with Linux-mag.com Torvalds not only affected something close to indifference but more worryingly revealed a startling degree of political naivety. To begin with he welcomes Microsoft as new members of the community:
Oh, I'm a big believer in "technology over politics". I don't care who it comes from, as long as there are solid reasons for the code, and as long as we don't have to worry about licensing etc issues. In fact, to some degree, I'd be more likely to include it because it's from a new member of the community rather than less.
Communities are characterized by shared values. Microsoft is a community of one
New member of the community? What planet is the flying Finn living on? The only kind of "community" Microsoft believes in is the kind where it muscles in and ethnically cleanses the indigenous residents. It's a Cuckoo in the nest and the nest seems to be inhabited by trusting, cooing doves. Communities are characterized by shared values. Microsoft is a community of one.
The really worrying part of this excerpt is his admission that he he is a big believer in technology over politics. For someone who is one of the biggest and most important people in the free software community this displays a really worrying detachment from reality. I'm not a hard core politico but, however vile politics is (with a small p), you'll ignore it at your peril. Microsoft play commercial politics as an in house blood sport and it is axiomatic that if others do not, they will be eaten for breakfast. History is littered with examples of scientific purists who behaved like ostriches and refused resolutely to deal with the politics of science and technology. In one way I don't blame them. Politics is a messy and dirty business, whether it is politics with a capital P, office politics or the politics of free software but if ignored it is likely to turn round and bite you.
Torvalds went on to say that he disdained "Microsoft haters":
I may make jokes about Microsoft at times, but at the same time, I think the Microsoft hatred is a disease. I believe in open development, and that very much involves not just making the source open, but also not shutting other people and companies out. There are "extremists" in the free software world, but that's one major reason why I don't call what I do "free software" any more. I don't want to be associated with the people for whom it's about exclusion and hatred.
Well, we've all come across the implacable "Microsoft haters" whose hatred is a perfect and total hatred. For such people hating Microsoft is almost a career and an item of faith. Nothing Microsoft do is capable of benign interpretation. Just because you don't fall into the category of "hater" doesn't mean that you trust Redmond. I recognize and accept that we live in a Windows world and that it will be necessary to interact with it, but I don't want to abandon caution. I don't want, either, to join the running dogs of "exclusion and hatred". There is a happy medium between Stallman and Torvalds. If Microsoft were allowed to rampage unimpeded or challenged, for whom or what does Linus Torvalds think he would eventually be writing code? Torvalds' disdain for "Microsoft haters" may possibly also be a reference to Richard Stallman. The affable Finn has already declined the GPLv3 because of its anti-DRM provisions.
Apparently I'm being hypocritical in attacking Microsoft who, after all, are only doing what everybody else is doing but Microsoft's track record places it in a league of its own. No other software house has expressed such persistent hostility to free software or behaves so ruthlessly towards any and all rivals and governments. No one else has built up such a war chest, one which allows it to exert so much pressure on others. For that matter, most of the others who submit code in this fashion were and are overwhelmingly hardware vendors seeking to boost sales by ensuring compatibility. Unlike Microsoft they do not have a persistent and prolonged track record of FUD, bullying and litigation. Besides, switching hardware is easier than switching software and operating systems. If the latter is GNU/Linux, Solaris or BSD for example, then the cost is nil.
It may well that the end result of Microsoft's code submission is neutral or benign. I don't know, but why should Torvalds unwittingly help to swell Microsoft's coffers by accepting kernel code which is specifically aimed at facilitating GNU/Linux in a virtualised Windows server environment? No, I don't know either. Whatever else Microsoft are doing, it's not "scratching an itch" (Torvalds' description of why people code and develop). One fact also to emerge was that Microsoft had been encouraged to submit code by Greg Kroah-Hartman. He is a big name in kernel code (he maintains the kernel driver tree) but he is also an employee of Novell which signed a notorious patent agreement with Microsoft. That makes me uneasy in its own right, even if Microsoft's motives are transparent. He is not a "Microsoft shill". He has moved mountains to ensure that GNU/Linux runs on more hardware than Windows and we all owe his a huge debt. Still, I feel uneasy.
Microsoft didn't "choose" the GLPv2. It was a condition
Despite the inevitable hype from Redmond, no, I don't think that "Hell just froze over". If Torvalds had moved the kernel to GPLv3 I doubt Microsoft would have touched it with a ten-foot barge pole. Besides, Microsoft was an unwilling bride dragged to the altar because of accusations of GPL violations. They didn't "choose" the GLPv2. It was a condition. So, this marriage is unlikely to be consummated then. Hopefully it will be childless. (It occurs to me though, that stuffing the kernel with GPLv2-ed code is possibly a great way to make it even more difficult to migrate it to GPLv3. Could it even lead to the forking of the kernel? Divide and conqueror? Microsoft would like that, a nice side effect to compliment drawing business away from GNU/Linux.)
If you want to see how much Microsoft really esteem free software then just try to view the associated video using a GNU/Linux platform. You can't. It's requires Silverlight--and that's proprietary. (Well, there is Moonlight but it's "tainted" by Mono.) Groklaw has reproduced a transcript for our convenience.
I don't think there is any danger that the code submission is a Trojan horse or that Microsoft has experienced some kind of Pauline conversion. What we should be worried about is Torvalds' determination to remain apolitical, to exist above the eternal sea of office politics, so to speak. Some people think Stallman is too "political". Maybe, but better safe than sorry. I have little taste for this kind of thing myself but you ignore it at your peril. Microsoft take it very seriously indeed--and so should we. After all, it's not every day that a company that has been doing its level best to throttle you for ever suddenly wants to be your best buddy and be in your gang.