Just want to point out there are some technical arguments against mono. People tend to get caught up in the “Microsoft patent attack” aspect, and forget there are other legitimite concerns.

The article is well worth a read, here is a passage I found especially interesting:

Part of that user experience is a consistent packaging and operation within the rest of a GNU/Linux system. In this respect, I have read the Debian packaging policy for Mono applications, and it highlights the fact that fitting Mono on a Debian GNU/Linux system is actually more awkward than packaging Java for Debian. Essentially, it suggests one creates a /usr/lib/progrname directory, and fill it both with the applications libraries and executables, and then write a wrapper script for /usr/bin. This is because Mono carries certain policies and expectations one finds on Microsoft Windows, where applications and dependent libraries were often bundled together under a private directory because binaries were never shared between vendors. This wasteful inefficiency and inability to cooperate that is the hallmark of proprietary software practices creates to me a very unnatural packaging policy requirement for Debian.

I had never consider this aspect of mono – that it would bring over not just a language and framework from Microsoft, but even logistical ineffeciences.