Who'd have thought that a rather irritating little note-making C# application could threaten Linux and bring the mighty Debian to its knees? Almost no one.
The application in question is called Tomboy, and this little faux Post-It Note utility uses Mono, an open source implementation of Microsoft's .Net framework, to run.
This came to the world's attention recently when legendary open-sorcerer Richard Stallman said that Debian includes Tomboy (and thus Mono) as part of its default installation. Stallman outlines his problem with this on the Free Software Foundation web site:
The danger is that Microsoft is probably planning to force all free C# implementations underground some day using software patents... The problem is not in the C# implementations, but rather in Tomboy and other applications written in C#. If we lose the use of C#, we will lose them too. That doesn't make them unethical, but it means that writing them and using them is taking a gratuitous risk.
The upshot of this, Stallman says, is that writing programs in C# should be discouraged, and that means not including C# implementations like Mono in the default implementation of Debian or any other Linux distro, for that matter.
Does he have a point? His argument is that it is in the realm of possibility that Microsoft may one day try to suppress free C# implementations using software patents, so we shouldn't use them, or anything that requires them.
The bigger question is, why stop at C#? Using the same logic, shouldn't we worry about the risk of Microsoft pursuing a strategy to drive the whole Linux OS underground using software patents? In fact, Microsoft (and SCO, for that matter) already tried this once a few years ago, so the risk is more than theoretical. Just because Microsoft (and SCO) tried it once doesn't necessarily mean it won't try it again. However, I don't see Stallman advocating avoiding Linux on the grounds that using it would be "taking a gratuitous risk."
The difference, I suppose, is that Linux is the very embodiment of free, open source software, and therefore worth running a few (non-gratuitous) risks for. Tomboy, on the other hand, is just annoying.
But as it turns out, the whole thing is moot anyway. Alexander Reichle-Schmehl, a Debian spokesman, says on his blog that Tomboy (and thus Mono), isn't included in Debian's default GNOME installation like Stallman suggests at all. It's only included in a metapackage that installs all GNOME-related software for the most feature-rich Debian GNOME installation.
And yesterday it appears that Microsoft has committed itself to allowing implementations such as Mono. Good news for C# developers; bad news for anyone who dislikes Tomboy as much as I do.
The moral of the story? You have to respect Richard Stallman for his undoubted integrity and genius and everything he has done to further his ideal. But perhaps it's best to take what he says and mix it with a large dose of reality before worrying about any of it too much. Or maybe he knew precisely what he was doing and got exactly the result from Microsoft that he intended.
Paul Rubens is a journalist based in Marlow on Thames, England. He has been programming, tinkering and generally sitting in front of computer screens since his first encounter with a DEC PDP-11 in 1979.