A lot of times, mono critics are told we should just “shut up”. Everything that needs to be said has been said, no one is going to change their mind, and there is no point in going on about things.

Let me tell you why I reject that.

The start

Take for example, this blog entry from Shane Fagan, “YAMP – Please end the debate” In it, Mr. Fagan expresses his opinion on the Mono controversy and summarizes with :

So its controversial but we have to accept it end the debate and if you have a problem make a better program to replace the Mono ones and ask for it to be included instead if you want.

Read through the comments if you like. I think it is fair to say Mr. Fagan is not really pro- or anti-mono. I think he is more where most people involved in the community are: somewhat informed on the matter and very tired of hearing about it. I hope he forgives me for using him as an example for a wider base of people.

He wants the debate to end. He’s tired of it. I sympathize. Hell, I am tired of it. But there are some very good reasons why I think ending the debate is not an acceptable solution.

Reason one: Everyone doesn’t have the facts

Mr. Fagan feels he is well informed on the debate, but if you read the post and the comments it is clear he does not understand some of the important points. At the time of the orginal posting:

  • He said the Community Promise means you “can do whatever the hell you like with anything under it” Except there are some clear (and unclear) limits on exactly what the CP covers.
  • He thought “adding moonlight functionality is similar to supporting MP3s and WMA media formats in my opinion but we can enable it by default if we wish”. Except Ubuntu keeps that stuff in restricted-extras, and no one is talking about sticking MP3 support in the GNOME panel.
  • He thought “Moonlight is the mono implementation of silverlight and is under the same agreement as mono.” Except of course there is no similar standard or agreement for Silverlight/Moonlight.

Again, not trying to beat the man up, just using this post as an example. There’s nothing wrong with not being completely informed on this issue: it’s a confusing and complex problem, there a lot of poor quality information being put out on both sides, and who has time to wade through all that mess, right?

But I think this perfectly illustrates one reason why it is not yet time to stop the debate. A lot of people do not understand the issues. For whatever reason, there is still a lot of misunderstanding about factual matters like the difference between ECMA / not-ECMA parts of mono, and the difference between Mono / Moonlight.

You can’t stop a debate when even the factual matters are not understood by people. It’s very hard for honest debate to even take place if the facts are in question!

Reason two: Stopping is conceding

Another reason why it is not time to stop the debate is that “stopping the debate” means Team Mono “wins”. By my lights, Team Mono is the aggressive entity – vigorously promoting Mono / Moonlight onto other distributions. If we “stop the debate”, then the outcome is the same as if Team Mono had “won” the debate.

Consider this: I would not nearly be so fired up about speaking up against mono if Team Mono were focused on creating a new distribution or desktop environment that featured Mono. Or, say, if they were focused on getting Mono all up in OpenSUSE - who would care then?

Reason three: Opt-out is not acceptable

“Opt-out” is not the equal opposite of “opt-in”. Anyone who suggests that is trying to sell you something. “Just opt-out if you don’t like it” is the argument of telemarketers and spammers the world over. Team Mono is trying to put users of other distributions in the “opt-out” position, and that is not right.

Those same people who would figuratively spit on a spammer for using the “opt-out” argument will gladly turn around and tell you “It’s easy to remove mono if you don’t like it, so just shut up”, and never see the contradiction.

Consider this: I am not opposed to the very idea of inclusion of mono and mono apps in the repositories.

Reason four: It is too important

We aren’t talking about arguing over the One True Brace Style here. Team Mono wants to be on your desktop. They want more Mono and even Moonlight up in GNOME. If they get GNOME based on .NET, then you can bet your sweet object code they are coming for KDE.

Reason five: It sets a bad precedent

First was C#/CLI, then .NET, then Moonlight. Each iteration has been less Free and more risky to build on. Each one is ever closer to some exclusive Novell-Microsoft arrangement.

What of the next Microsoft technology that Team Mono decides needs to be cloned? Microsoft can afford to have every component integrate tightly – in fact, it is to thier advantage to do so. But we who rely on standards and promises to protect us can not be so cavalier.

Reason six: That’s what Novell wants

Listen, Novell management is not a bunch of idiots. There can be no question that they knew entering into a relationship with Microsoft would be taken as a betrayal of the community. There is no doubt in my military mind they sat down and tried to judge the cost as best they could, and you know what they came up with:

“Ah, go ahead and do it. People will get over it eventually.”

Here’s the thing about that – they are probably right. Companies rely on short attention spans and people moving on. But Novell’s deal is just as offensive and anti-community in 2009 as it was in 2006. On the day it ends - if it ever ends - it will end as ignominious as it started.

But it is hard and tiring to oppose something, especially when there is no money in it and the other side has infinitely more. You have to be passionate to do that, right? And passion is easily miscontrued as blind zealotry. And everyone know us anti-mono kooks are hateful zealots “obsessed” with Microsoft right?

Consider this: I’m not opposed to SomeRandomWindowsCompany.com dealing with Microsoft. Why? Because I don’t care about SRWC.com’s products.

Consider this: I’m not opposed to Red Hat’s virtualization agreement with Microsoft. Why? Because it does not include patent agreements, money changing hands, or all that “peace of mind”, “respecting intellectual property” talk that surrounds the Novel/Microsoft deal.

Red Hat stood up for Linux, and Microsoft came to them. Novell sold out Linux, and went crawling to Microsoft.

Those are two very different messages, and it shows the difference between passion and zealotry. FLOSS can deal with Microsoft – on our terms.

Summary

So, there you have it. That’s why I’m not ready to “just shut up” about something I care about. I am talking about conversation and debate; I am willing to listen and try to engage in dialogue. I think if you read through my blog you’ll see I at least attempt to give a fair listen to what the other side has to say.

Is it hateful of me to ask for the same in return? Is it crazy of me to voice my concerns?