Summary: “Move over, Richard, we’ll take it from here” — that’s the sort of message embraced by parts of the Mono community
WE already know, based on pretty extensive evidence, that many Mono fans are also close to Microsoft. That is what makes this whole movement rather detrimental to Microsoft's most potent competitor, namely GNU/Linux.
In prior posts about Mono and Microsoft’s “Community Promise” (CP) [1, 2, 3] we showed that it had changed virtually nothing. If anything, it finally revealed that Mono has indeed patent traps in it, maybe just not at the core. One of the rudest pro-Mono people (from Debian) is being very blunt about it:
Q: Are there patent issues with Mono?
A: Just like any other software, Mono certainly infringes on thousands of stupid software patents. However the Debian policy with patents is to put them in a trash and pee on them, unless they are actively enforced with reasonable chances to win. The situation of Mono is much more comfortable than (for example) that of MP3 decoders, for which patents are actively enforced; it’s just that they are so lame that we choose to ignore them.
Q: Are there specific dangers coming from Microsoft regarding Mono?
A: Microsoft has claimed to possess patents on some Mono compatibility layers with non-standard Microsoft APIs. Not only this is completely irrelevant to GNOME, since nothing in Gtk# and related stuff uses these compatibility layers, but if you know how things work in the patent world, you already understand this is merely FUD. Microsoft has nothing, but claims to have something in order to scare consumers away from Mono. Actually, not enforcing the patents, while knowing they are violated, would make their case very weak in a patent suit. What their behavior shows is that they are very afraid of Mono. It is stealing customers from their best and most advanced product, their lead development framework. There is absolutely zero chance that they are sustaining Mono from behind, since its very existence is going to make them lose a large amount of money.
He even throws a fit at Stallman at the end. This is part of a pattern for him and other proponents of Mono have been doing the same thing ever since Stallman spoke out regarding Mono [1, 2]. One person even used the F word.
Ubuntu is apathetic towards Richard Stallman’s advice [1, 2], but Glyn Moody justifiably distrusts Microsoft on the whole matter. Regarding the CP, he writes:
Now, is it just me, or does Microsoft conspicuously fail to answer its own question? The question was: does it apply to all versions *including* future revision? And Microsoft’s answer is about *existing* versions: so doesn’t that mean it could simply not apply the promise to a future version? Isn’t this the same problem as with the Open Specification Promise? Just asking.
See the comments in GNU/Linux sites to get an impression of how many people reject Mono. It is only a vocal/aggressive minority that seems to be spreading Microsoft inside GNU/Linux, despite opposition from about 3 out of 4 GNU/Linux users (according to a recent poll).
Mono people understand that their attempts to marry Microsoft and Linux are backfiring now that the SFLC and FSF speak out, so Plan B is seemingly to discredit Stallman in person to make his technical assessments go away or be dishonoured. It has gone on for about two weeks. Sam Varghese addresses this issue in a new article where he writes:
Let’s remember that De Icaza has gone on the public record stating that he believes .NET is the “natural upgrade” for GNOME. Here’s a direct quote: “I’d like to see Gnome applications written in .NET in version 4.0 – no, version 3.0. But Gnome 4.0 should be based on .NET. A lot of people just see .NET as a fantastic upgrade for the development platform from Microsoft.”
GNOME 3.0 is around the corner so he probably won’t have time to realise his dream. What of version 4.0?
Not unrelated to this whole Mono debate may be the fact that some GNOME people have started a campaign to smear Stallman, to the extent of even releasing a private email exchange. But then is not new behaviour from people at the top of GNOME. Anyone who criticises Mono seems to come in for a rough time.
Jason at the Mono Nono Web site correctly predicted that Stallman would suffer the wrath of Microsoft fans for merely daring to reject Mono. By the way, this is not a reference to one particular person because many blogs independently find an opportunity to pile criticisms on Stallman, for whatever reason or statement that he ever made (there is more than one, but the timing and motive are unlikely to be coincidental).
I told you the knives would come out for Stallman.
The sad thing is, much of the damage is already done. Stallman is facing a concerted attack on his character and competence and stands little chance of coming through it unscathed. Such is the penalty for daring to critize Mono. This garbage is already all over Planet Gnome, Planet Debian, Monologue and spreading.
If I had to list my concerns around the Promise I would come up with a slightly different list:
1. Standard bits alone are not enough to deliver killer apps. We have several Microsoft emails about limiting the usefulness of what was standardized, so we know they at least discussed this internally.
2. The Community Promise has that restriction that the Open Specification Promise does not. By not extending the Promise to partial implementations, it could “lock out” alternative implementations of the standard. Limited sub-sets of languages are a common practice in the industry for specialized purposes.
3. The Community Promise will constantly be misrepresented as covering the whole of mono – giving a false veneer of security over the non-covered bits (which end up to be the “juicy parts”)
4. The Community Promise only applies to the current version. This could be used by Microsoft to “freeze out” competing implementations. Just update the standard, but not the promise.
Consider that we know for a fact that F-Spot and Banshee, at least, use non-ECMA covered parts of mono. Maybe they will be re-written soon. That’s great. But at the time of the announcement and currently, they were and are not covered by the standard, and so not covered by the agreement.
There are many such internal documents that clearly show Microsoft understands exactly what standardizing parts of .NET means, and how to keep that offering in control and inferior to .NET. If Mono is not “chasing” .NET, then it fails to meet Windows developers expectations. If Mono is “chasing” .NET, then it both runs the risk of anti-competitive tactics on the non-standard parts, and is undertaking a task not likely to succeed.
Many more answers were delivered regarding Mono (even from Microsoft). Now more than ever it is clear that Mono is a trap and thus it must be avoided. █
“I saw that internally inside Microsoft many times when I was told to stay away from supporting Mono in public. They reserve the right to sue”