Stop piling on Mono already

I have no love for Microsoft, most of its products, and nothing but contempt for its now annual, anti-Linux patent threats. On the other hand, I don't see Mono, the open-source implementation of Microsoft's .NET programming environment and its related languages, as being an open-source "infection;" or particularly "dangerous," much less that "MONO people have poisoned your minds and infiltrated Ubuntu to get power to enforce their will."

Get a grip people!

Yes, Mono is based on Microsoft's .NET. Like it or not, several valuable open-source programs like Tomboy, a well-regarded note-taking program; Moonlight/Moonshine, which enables you to listen and view Windows Media-bound music and videos on Linux; and Banshee, my personal pick for the best Linux music player, are Mono applications. 

Would it be better if these applications were written in some more free software ideologically pure language? I doubt it. They were written in Mono, not Python or C++. It's a pointless question. If you don't like them, write better ones in another language. It's the open-source way after all.

Others might argue that several of these programs, Moonlight/Moonshine in particular, make it easier to Linux users to use Microsoft-based, hence anti-open-source, software. True, but let's get real. Samba, one of the purest of the open-source products in the long Microsoft/open-source war, has always been able making it possible for Linux users to work with Windows file servers. Microsoft's dominance in many areas of computing is a fact. It only makes sense to me that open-source developers should work on projects that help with Windows/Linux interoperability.

Another reason why people grumble about Mono is that it's backed by Novell, a company that some people in the Linux community hate because of its Microsoft partnership. But, Novell isn't in Microsoft's back-pocket. Faced with a dominant player in the Linux server market, Red Hat, Novell has elected to try to play the interoperability card with Windows to gain market share. It hasn't been a rousing success for Novell, but, I'd argue it's kept them in the operating system game with their SLE (SUSE Linux Enterprise) line.

The biggest real concern about Mono is that Microsoft could somehow use it to launch a patent attack against Linux. I don't see it. Microsoft is always threatening Linux with patent suits. Except for the TomTom case, Microsoft hasn't done much except to rattle its patent saber. And, thanks to Andrew Tridgell, open-source developers have come up with a fix that avoids Microsoft's FAT (File Allocation Table) trap.

Of course, Microsoft could threaten lawsuits with patents relating to Mono as well. After Peter Galli, a Microsoft support manager, publicly announced on the Microsoft Open Source blog that Microsoft wouldn't go after developers using the "C# programming language ... and Common Language Infrastructure (CLI)," in short the heart of Mono, I can't see any court letting Microsoft's lawyers even get their seats warmed up before tossing any patent lawsuit against Mono programmers out the door.

In other words, chill about Mono already people. Trying to turn Mono into some kind of free software political litmus test is a waste of time and it's just getting people ticked off for no good reason.

There are real reasons to be concerned about Mono. For example, as I pointed out in 2007, any Mono developer who peeks at the .NET Framework reference source code under the Microsoft Reference License is just asking to be smacked around on copyright grounds sometime in the future.

I've also long thought that relying on Mono for cross-platform development was a mistake. All Microsoft has to do, and they've done this kind of thing many times in the past, is change some component of .NET and not make it public. Suddenly, Mono applications won't run right on Windows and users will blame Mono developers, not Microsoft, for their software problems.

So, to sum up, we should not be turning Mono application support into some kind of religious test for what should, or shouldn't, be in Linux. The notion that Mono developers are somehow wicked for using the platform really needs to be dumped once and for all.

That said, there are sound reasons to not get too deep into .NET code when developing in Mono and it would be downright foolish to build a business around Mono-based programs that run on both Windows and Linux. But, other than that, Mono's a fine development environment. After all, if it wasn't, would people be programming in it? I dont think so.

Copyright © 2009 IDG Communications, Inc.

Shop Tech Products at Amazon