Computer Tech

Mono where art thow?

The debate surrounding Mono, the ‘open source implementation of .Net’, has been going on for some years now. And a very roudy debate it has become lately. Some history first.

Mono was originally conceived by Miguel de Icasa, now a Novell employee. Originally part of the Ximian project, it was later incorporated into Novell at a similar time to Novell’s first foray into Linux: the purchase of Suse. The current version of Mono, 2.4, provides API support for the .Net framework at the 2.0 version level, on a number of platforms including Linux and MacOS X. Also provided is Moonlight, the ‘open source’ version of Silverlight, Microsoft’s Adobe Flash equivalent.

You’ll notice that I have open source in parenthesis above – this is one of the prime issues surrounding Mono. Mono’s implementation of the .Net stack has not been submitted to any standards body, including ECMA, for standardisation. Therefore whatever functions are used within the Mono stack could be the object of patent violations. Considering that Microsoft ( or Novell for that matter ) have never hinted at what parts of Mono might be Microsoft-derived areas, a user of Mono is not sure from a technical point of view ( even though the code is available for inspection ) whether there is infringement. This lack of clarity leads me to speculate whether this project is in the spirit of FOSS.

You may of course know that Microsoft and Novell have had dealings and agreements for a number of years already, most recently the Microsoft purchase of some hundreds of millions of Dollars of Suse licenses in a cross-licensing deal. This may simply be a matter of interoperability as has been bandied about by both parties; however, some see it as a Microsoft ploy to infiltrate both its software products and methods into the open source arena, using one of the main Linux vendors. Considering Microsoft’s  continued abuse of standards organisations, FUD campaigns against open source and its general lack of scruples, there is a certain amount of weight to this argument. The EU Commission’s recent fines and continued investigations into Microsoft operations lends further credence.

You can apparently obtain a “royalty-free, reasonable and non-discriminatory” license from Microsoft regarding the patents surrounding Mono. This mere fact would seem to indicate that Microsoft believes that Mono contains Microsoft-derived code. ITwire recently tried to obtain such a license but that appeared to be next to impossible. Question: does this license really exist or is it just available on Microsoft’s say-so?

As mentioned, this is just a bit of history. The crux of this article is a recent upwelling in support for Mono being part of Linux distributions in general. That support coming from areas that would appear to be either Microsoft-influenced or just plain out of place. Jo Shields, the Mono packager for the Debian and Ubuntu projects, recently commented in a LinuxToday guest post:

Many of those who advertise themselves as anti-Mono are, quite frankly, frightening. Calling for the deaths of Microsoft employees (see comments on Boycott Novell)

For those unaware, the Boycott Novell site has been a vocal opposition to Novell, and its interaction with Microsoft. But never has there ever been any comments to the affect of the above statement from Jo Shields. This is an outright lie and certainly not becoming of someone leading a major packaging effort.

Jo indicates “the fact that statements have been made in public supporting the idea of royalty-free licensing essentially reduces the financial impact of such infringement to zero” – so are we to believe that Microsoft will not sue people simply because it has said so? Wow, let’s not sign a legal agreement ever again!

Jo goes further on the offensive in saying “trying to have people who make positive comments about Mono fired (see recent comments on Ubuntu mailing lists)…”

Any comments on the Ubuntu mailing list were not affiliated to Boycott Novell in any way. Shields ended his rant on the B.N site with the following:

Know what? Fuck it, and fuck you. I’m done. My contempt for the human filth you are has reached levels hitherto unknown.

Sounds more like a spoilt brat to me than someone who should be in charge of Mono packaging. de Icasa must be proud of his cohorts … So why is Jo Shields vilifying Boycott Novell for no sound reason?

Another comment on B.N.:

Good for you Roy for doing a great job at trying to debate a serious topic that affects all foss users even though throughout some people were trying to distract with colorful adjectives, though to their dismay making it more than clear than ever, that their goal wasn’t serious debate between respected peers, but serious insults and attacks meant to be divisive.

This brings to the fore the difference in those who would push agendas and those who have the tenets of FOSS in mind.

My thoughts on the matter: Mono is not required on FOSS platforms. FOSS already has the richest development environment available with many solid programming standards, IDE’s and  applications. Why port .Net apps to Linux ( for example ) when most of these apps already exist on Linux in a non-patent polluted superior form?

I’m not saying there isn’t a place for Mono – but don’t force it down everyone’s throat. Provide a clean patent-free Linux distro and then leave it up to the users to decide on what extras they want. Most Linux distro’s make it easy to download additional apps after the installation phase so difficulty of installation can’t be used in mitigation of including Mono in the base distro.

The Fedora project  has removed Mono from its most recent version, and Red Hat removed it some years ago already. That just leaves Debian and Ubuntu as maintream Linux’s that are shipping or may ship with Mono. It will be interesting to see any change in direction from these 2 projects as a result of Jo Shield’s outburst.

For further reading, here is Stefano Forenza’s take on Shield’s tirade …