A new workstation at work is a great opportunity for trying out the latest Ubuntu 11.04 beta (2). So far, so good. I had low expectations for Unity, but the shell does not feel buggy nor slow. Nice. The installation is *extremely* fast. Anyway, sadly like with every new Ubuntu release, there is still some cleaning up to do after an install…

I have been running Linux before Mono appeared and I remember the discussions. To be short: most reasons to introduce .Net on Linux are clearly bogus today. If you really want to use a high-level language with a VM, well … use Java (there are java-gtk2 bindings if you prefer a more native look than swing-gtk or swt-gtk). If you want to make it perfect, spend a fraction of the time and money of copying/rewriting a full stack (including a VM) and fix what need to be fixed on Java (specially now that’s GPL2). Besides, there are pretty decentIDEs that make you productive . If Java isn’t your cup of coffee tea (It should be as C# looks pretty similar to me), there are tons of other languages with gtk-bindings (I use gtk2-perl).

Anyway, being a user of a minority OS, there was one argument that stuck then: “we will enable thousands of windows programmers to run their programs unchanged on Linux”. I remember the apocalyptic warnings of “jumping on the .Net boat or drown and disappear”. Guess what, it didn’t happen. And it won’t happen. Windows developers prefer to write for the full and up-to-date .Net stack instead of an outdated Linux-clone. Nothing earth-shocking here. As long as the complete stack is not open (libraries), you will always play -incompatible- catchup.

What did we get instead? Beside a few proprietary applications (that can be counted on one hand), we’ve got some tools and applications that mainly run on Linux. Some of them are very nice, but nothing revolutionary that can not be written in an other language.

Do we need to live in fear of Microsofts lawyers for a few applications that can be written in a risk-free language or stack (e.g. Tomboy => Gnote)? To be honest, as long as the OS and my DE (Gnome) don’t depend on Mono, I don’t really care. If Microsoft sends its lawyers, there is always “apt-get purge libmono0 mono-common”. The problem I see is that Novell is pushing really hard to make Gnome dependant on Mono.

Removing Mono in that situation will mean holding the broken pieces of the Desktop in your hands.