The Ubuntu/Mono debate continues…
Mono seems to be causing a great deal of debate and discussion within the Ubuntu Community right now. I’m sure it probably always has, but it definitely seems that the intensity is building at the moment.
For those who don’t know what Mono is, from their website:
Mono is a cross platform, open source .NET development framework.
Two blog posts have caught my attention in the past couple of days and should be mentioned, one on either side of the debate and interestingly that is one from a developer and one from a user. Thankfully these two posts and most of the comments attached to them have been free from the personal attack and verbal abuse that has been written on several mailing lists and forums recently. Those don’t have a place in a decent debate, I will not condone them by linking.
First the developer.
Jo Shields writes well and clearly has a lot to say. This is a well written piece that articulates the position of a software developer who clearly likes what Mono has to offer.
I recommend you read it and consider carefully what Jo has to say.
The other article, from a user and expressed in plain and heartfelt language, tells us why he feels Mono is not for him.
I also recommend you read that one too and consider his position.
Welcome back.
What strikes me with these posts is how technical and abstract the position of the developer is and how emotional and personal the position of the user is. It is a very clear distinction and one that is probably at the heart of this disagreement.
Interestingly, the developer seems to inadvertently (I assume) be making the case for Mono dependent applications being removed from a default install in his final point in the “Why it is not a threat” section:
The layering of escape routes is extensive in Mono, especially Mono in Debian/Ubuntu. In the first instance, the contentious Microsoft-sourced non-ISO libraries such as System.Windows.Forms are not included by default, and are rarely used in Free applications anyway (because WinForms looks like ass, amongst other things). If a reason is found to remove these non-standardised libraries, then bam, they’re gone – without harming Free apps. Secondly, if a more severe change is required, then the Mono packages can be patched to remove the infringement. If more drastic changes are required, as mentioned above, then the applications can also be patched to support any core changes. And, taking it one step further, if the whole of Mono needs to be pulled, then applications can be ported. The porting process would potentially be slow and painful, and cause great harm to an application’s future rate of development (although no worse than if the app was written in the target language from day one), but nobody who has written an app they care about would simply throw their hands in the air and say “never mind, it was fun, but the Man says I have to stop now”.
The user’s post is emotional and from the heart. As a user myself I believe this perspective should not be regarded in any way less important or valuable than the technical position; both are just as valid.
The bone of contention for me is Mono. I remove it. I don’t like it. I refuse to use it. It rubs me the wrong way. Anything that starts with Microsoft and goes via the sellout, Novell, cannot be good.
I know that Microsoft is opposed to the existence of Linux. That have said so, often and stridently. I know that Novell caved in and did not stand up for FOSS when they had the chance. They have since apologized, sort of, but the damage is done. Other companies did not follow suit, including Red Hat and Canonical. I respect them for this as much as I detest Novell for selling us down the drain.
My perspective on the Mono thing is from that of a user and not a developer. I really fail to see why anyone would want to build new applications on top of a framework that has so many unanswered questions and causes so much angst in the community as a whole. We have plenty of other solutions that are – if not 100% free from controversy – certainly far less likely to end up requiring the kind of backtracking or complete re-writing that Jo describes above.
I think the problem many of us have with Mono will not go away, irrespective of what, or how much, the developers say. When I first removed Mono from Ubuntu back on Hardy, I did not know, nor had read anything about the Mono controversy before. It was simply an “itch I wanted to scratch”. I was unhappy with Mono being in my desktop OS for non-technical and personal reasons. I tried removing it and found that it worked so I wrote a post on how to remove Mono from Hardy. What amazed me was the huge surge in traffic to my lowly blog and the number of comments it attracted. That was in August last year.
The fact is that there are many, many “users” of Linux who simply do not want Mono dependant applications to be included by default in their distribution of choice: Ubuntu. The opinion of developers that Mono is great – as Jo so eloquently says himself – in the end carries little or no weight with users:
Why Mono is desirable
That’s a question which depends on whom is being asked.
If you’re asking a user, then the answer is “it’s not”, any more than a Scheme compiler or LOLCODE interpreter.
If you’re asking a developer, then the answer is VERY different…
Mono clearly provides a useful and good tool for developers to [ahem] develop things, but there are many other less controversial solutions which are as independent from Microsoft as it is possible to be. Surely these should be chosen over a framework that carries so much baggage and ill-feeling? Fedora are moving in that direction and appear to be picking up users at Ubuntu’s expense.
In short, I strongly believe Mono and applications that depend on it should reside in Multiverse and not in Main.
Finally, I think this sums up what many feel about Mono (A re-phrase one of Steve Ballmer’s most famous quotes):











The “user” does not bring anything new to this table, other than the fact that he feels it’s wrong. So, a user that crumbles under propaganda without having even *one* non-emotional argument, is valid?
Users who perpetuate FUD represents a problem. But not a problem with Mono, more a problem with the haters.
I’m a user and have no problem with Mono, and neither do the other users of apps like Tomboy and Gnome Do. I’m valid. Hear me roar.
Take a “chill pill” man.
I’m perfectly chilled “man”. If you are referring to the last line in my comment, grow a sense of humor.
Microsoft WILL and HAS TO (no choice, has to pursue its business interests) request royalties for (alleged) patent licenses for .NET technologie incluided in Mono as soon as they see themselves in a position to do so.
This will be the time when Mono is so widely used in a certain Linux environment that is cheaper to pay the royalties than to get rid off Mono and its dependencies. There is nothing mean in it, that is what a company HAS to do with is IP (otherwise, management can be held liable by the shareholders).
However, knowing this and allowing this to happen to your Linux distribution is plain stupid. And if you don’t believe it, check out the companies that pay royalties for FAT long filename “technology” in Linux based devices or study the recent TomTom case.
You must be blind or very naive to believe that this is not going to happen with Mono, and it has nothing to do with Microsoft being evil or not – every other company would do the same.
For this reason, none of the commercial distros (RH, Moblin, Android) will ever include (unlicensed) Mono technology, even when the patents that MS claims to hold are very weak and IMHO not enforcable. It is enough that they make respective claims.
You will pay for Mono sooner or later, no matter what license it comes with – again, FAT implemetation Linux also is GPL2, but we know what this helped against the patent claims. Nada.
Hi Alan,
As you stated, “What strikes me with these posts is how technical and abstract the position of the developer is and how emotional and personal the position of the user is. It is a very clear distinction and one that is probably at the heart of this disagreement.”
If all one side has are emotional arguments (fear of something happening, hatred of something, whatever it may be), then they aren’t very good arguments. Emotion is easily manipulated, especially emotions like hatred and fear (which seem to be the 2 biggest emotions in any of the Anti-Mono arguments afaict).
The Anti-Mono arguments seem to me to be an appeal to emotion as defined on wikipedia and are full of other logical fallacies as well.
I can understand the fear from that user’s point of view, but I personally try to base my conclusions on facts and not emotion (although we can all lose our way at times).
The developer’s essay, as you pointed out, is very technical. He also does not appear to have anything emotional at stake. As he points out, the decision to ship Mono apps in Ubuntu was based on technical criteria, it was not based on emotion (e.g. love). I can only respect that. As he also mentions, if some applications come along that are better than the Mono apps, then Ubuntu will ship those instead. This is very reasonable.
As someone who could not care less about Mono vs whatever, I’m inclined to say that the “winner” of this debate is “Mono” (not the software per se, but the arguments for including it – as necessary – in Ubuntu).
The logic is flawed. Users are objecting to default installation of Mono by distros. Developers who wish to use Mono are welcome to do so. But distros shipping mono and installing it without user’s consent even when a large user base is ideologically opposed to the software is akin to saying – F*uck you minions”
Ajay, where exactly is the evidence of this “large user base” which is “ideologically opposed” to Mono? I’m not seeing it, just a small number of folks doing the same sort of fear-mongering, name-calling and worse…
????????????? Well most posts are actually conveying the opposite. That it is a limited number of developers who are trying to accommodate somebody’s agenda by pushing Mono down the throat of Gnome users.
The fact that there are very vocal anti Mono evangelists is not proof that there are many of them. The people who see Mono as a good thing or does not care that much might just be getting their work done in stead of shouting that much.
Personally, I see this laughable hatred towards Mono as a sign that there are still many too many evangelists out and about.
Maybe you would want to have a look at the article linked below before you accuse “Mono-haters” of fear-mongering
http://www.itwire.com/content/view/25215/1090/1/1/
I answer both as a user and a developer. I loved Delphi and Object Pascal (especially at the end where it got almost as powerful as C++). So I ought to love C# (but maybe not .NET since I never liked MFC but really enjoyed VCL). But I never made the transition as a developer. Much like Java it got a too big footprint and Microsoft is not as inspiring as Borland (the friendly Borland community) or today, the Open Source movement.
I therefore struggle with what to me feels like a step backwards (in productivity as a developer) trying to adjust to a tool-chain much less holistic than ten years ago. But I still feel rewarded and alive since the target is more heterogeneous and the audience more vibrant.
As a user I have always appreciated speed and efficiency (small footprint, efficient memory management etc.). I therefore always stayed clear from Visual Basic applications the same way Java newer got me on the desktop. Microsoft’s bad attitude (especially against the Open Source community) gave me even more reasons to stay away from C#, .NET and Silverlight. It translated to Mono and Moonlight and I don’t see anything that would make me change my mind. As much as I like what I see when trying out F-Spot it always gives me that nagging feeling that it is written in Mono. I know, as a user I shouldn’t care but I do! I feel for the team behind the program (because it’s a pretty good program) but I will stay away from it as long as it is implemented with Mono. I hate the dependencies, the footprint, the performance and the affiliation to Microsoft.
I know it’s irrational but this is how I feel as a developer and as a user, and I wont apologise for it!
I forgot to mention that I would really like to see Mono dependencies removed from Gnome. Why, because I like Gnome and I don’t like Mono. It is as simple as that. Gut feeling and sometimes that is enough, especially if you are a user for it would be impossible to write a “killer app” if potential users stayed away from it because of how it was implemented. And yes, implementation does count…
Just reacting about one thing : There is no replacement of .net/mono at this date.
The choice of the language / framework must be done taking consideration the user. If that choice is .net/Mono and the choice is motivated for good reasons : there is no replacement available.
For information
ne of the advantages that can stimulate the choice : Multiplatform, quick programing, fast aplication, easy debug, ….
If someone says :
- Java : well it’s controverted as Mono is. Plus Java is slowish with big aplications
- Python : easy debug …… ?
Bye
[...] new perspective goes like [...]
MONO will never go away, at least when NOVELL and UBUNTU exist.
Grow up! They are here for the money and sooner or later they will make it inter-operable to windows.
– SUDO (the one password for ALL permission) is a step in that direction.
– basic linux users are all screwed up without them knowing.
– sudo is good for selected and not ALL permission.
– Next MONO, where MS “agrees” only to Novell, probably Canonical next.
– better still, now gnome will be screwed up
– next in-fighting between linux users .. like here?
Blame it on Marcus Ranum, MS must have read his blog http://www.ranum.com/editorials/divide-conquer/index.html
Let’s just hope MS doesn’t manage to get some idiots to play with GTK.
Mono is a workaround introducing a well-known risk/weakness (or if you will, a BUG)
into applications and systems using it. Patent problems down the road (Microsoft directly or by proxy), implementation issues et al of chasing a “standard” under questionable control (think HTML standardization and intentionally incompatible extensions, or OOXML and Microsoft’s take of ODF for a worst case).
Thus, ALLOW the choice of risk to the individual. Both the user and the developper
in a hurry to port something from windows. Make a meta package for a painless install.
It’s as simple as depending on this package to pull in Mono.
But really, please, oh please DO NOT FORCE ALL OF US TO SHOULDER your personal
decision/Risk/BUG and introduce it deeply into core software the like of Gnome,
shells, python-GTK or default installs.
Mono as optional: fine.
Anything else: NOT.
Peter
Totaly agrees with Peter :
Why, at first instance, Mono has been integrated with gnome ?
On a good project the first thing to do is to keep that project with a stable environment …… and to do that there is : “not to mix languages”.
Plus the official mono package is never updated to last version ……. this is where implementing Mono to core shows another bug : Why implement the latest gnome with the last year Mono version ? It’s like buying a car that has 5 years old when you can have the newer one at the same price ?
I must agree that, for being able to answer to that question, there is a Mono Lobby upon ubuntu ….. I must admit it …… and, as any lobby, it must be cut off from root.
Mono must stay as optional, not core implemented
Gnome / Ubuntu must learn that implementing things to core is a bad idea ……. For instance if I don’t want the games …….. I must uninstall the gnome-desktop meta package ……. When having a desktop is having games ? (same with the sound and gnome-core). If I want having a “naked” gnome it’s a pain to do it so (compile it, or uninstall packages and corrupt the linking between packages).
Regards,
Another thing that tickles me :
All the mono cons group : Do you use OpenOffice ? Or worse : Do you use the shipped OpenOffice of Ubuntu ?
Because Where a lot of energy is spent for a technology that is almost “blank” of doubts : You are using an office suite that uses a lot of ocult tecnology from microsoft that is very patented …… and for worse case also patents of another company (Doc importer, Pdf importer, Wpf importer, Access importer, his office xml importer thing, jpeg, gif, etc) even if you don’t use it, you use a tool that has what you fear and where Microsoft can fight bad because of the great competition that openoffice is.
You actualy fear Mono and his ECMA .net implementation …….. Where you don’t even fear a tool that implements ocult patented technology that makes Microsoft money……. Or I’m wrong ?
Openoffice.org is a clean code base of tools such as Word editor, spreadsheet etc. Concept of Document editing, Spreadsheets etc was present very early in the age of desktop computing, and is not Microsoft’s creation. MS Office is the most used implementation of the concept in the market. OOo is compatible with file formats of Microsoft Office and MANY other office suits. MS Office format is just one among the many it supports for compatibility with legacy formats.
To give a analogy, Linux Kernel has support for Fat32 and NTFS file system, just like Openoffice.org has support for MSoffice file formats.
Mono is different, it exists exclusively to replicate .net, and brings no other tools or innovation to table. It is compatible with .net APIs and nothing else.
Hummm …… Let me resume your sentence :
OpenOffice.Org is making innovations so it protects him and his users of the all bunch of patents that he implicitly uses ?
And your analogy : you cannot choose better : well you might know that ultimatly a GPS maker had to pay microsoft for the uses of FAT on his Linux …… You can see here
“A clean code” : it’s quite hard to understand that sentence ….. OpenOffice is well known to fight against many pieces of code that are unreadable by their creators itself. If it’s from a lawyer point of view : Programing yourself, without copy, a technology does not free you from the patent of the tecnology. (eg wine)
Tomtom payoff is exactly why one would want to avoid any inclusion of technologies and formats over which MS may have a claim. If Microsoft goes after more Linux based users of FAT, then there is a strong case to pull support for the format from Linux Kernel. This may also mean OOo support for MS Office formats will have to be re-looked at.
So, how can one justify building a complete SDK stack, some of which may be protected by MS patents, when they have gone after a company for merely using a decades old file format?
Mono is a tinderbox that MS can ignite at anytime it wants. Before you go on to say Mono is based on stanards submitted by Micrsoft to ECMA, linked below is a very insightful article on how much clarity there is about the “license” that allegedly allows Mono’s existence.
http://www.itwire.com/content/view/25215/1090/1/1/
Lol …….. resuming Moonlight to Mono …… : First of all it’s two diferent projects, secondly Silverlight, even with his last version, is a total shit : There is no tecnical reasons to use it.
Just say that you hate microsoft and that’s all ……….. because where you tell about a far possible case you just ignore real cases :
FAT, NTFS, JPEG, GIF, Double clic, Contextual Menu, Samba, Wine, Bzip2, GIMP, OpenOffice, and forgot more that you daily uses without knowing. Those a real cases.
That Mono thing is just an hipocrit “witch hunt” of a possible cases.
Nowadays you can’t avoid to use patents of closed sourced company on any Linux in the world.
And the worst thing is that, even if you could, it would be that you reverse in time where a computer was not connected to internet and didn’t need to interact.
The thing is that for being able to win the OS war, Linux has to be able to interact with the dominent market of closed source software. For being able to do that he has to accept some patents.
Nowadays there is more and more Linux used in the world due to one thing : The “User” see that he has the same tools on Linux and on windows. Thanks to Mozilla, Openoffice, Gimp and other multiplatform tools. For me, Mono, is a quick way to do small multiplatform tools and so having more people interested to linux and maybe, after, we will not have that kind of discution because Linux will be the main operative system in the world and will not depend, like now, in others.
But I repeat one thing that I’ve not expressed well : Mono is not made for core design thing or heavy software. To do so is totaly stupid because you uses too much ressources to do so. So removing Mono from Main and put it on Universal is fine because it’s where it must be.
Hi all,
For your info, here is the opinion of RMS about the inclusion in Debian of MONO:
http://www.fsf.org/news/dont-depend-on-mono
Nothing very new in his arguments, but I know some people like to have THE GURU’s opinion
Cheers !
look, each one likes to ear from who he wants ……
Being a Guru or not does not make difference if you are right or wrong.
If listening to gurus was the solution to a problem …… why not listening all those bunch of CEO’s and Chief of so much companies that has changed our life ?
Plus, making case to Stallman talking about Mono/C# is not what can be made good …. StallMan hates all microsoft technology and likes witch is normal because it’s against it’s ideology.
It’s like listening a vegan talking about meat !
Regards.
P.S. : the work of Stallman is awsome … but Stallman has proven, much more than once, that he can be wrong. There is, with or without mono, a big divergence between all linux disto and Stallman ….. the GPL v3 is a proof of it.
another thing :
Debian is about to include in default install Mono ……. So let me ask the following : Witch distribution will not include mono ?
all Debian likes, if the decision is made, will have it.
all suse likes has it
all redhat/fedora likes has it
all mandriva likes has it
All the big distro bases will have it ……. so what it leaves to you ?
Does this debate is too late ? Or just debating on something that is, already, a fact ?
Novell – They started it all, and are in bed with MS
Mandriva – They shipped with Nvidia prop drivers, and include quite a few prop softwares in free an paid versions of their distro. So Mono is not even a leap for the,
Ubuntu – Shipped it by default, but users have started revolting, specially after gNote proved Mono is BS
Debian – They claim to be holier than thou, even shipping a rebranded version of firefox. Shipping Mono by default smacks of a silent coup in the camp.
Fedora – As much as people hate them, they have proved to be the best torch bearers for OSS in recent times. They’ve kicked out Mono from the default installation CD, and have started the present debate on Mono,
[...] The chatter has increased about use of Mono implemented programs in the Ubuntu Linux distribution. This particular batch of trouble-soup is made with Microsoft, Mono and patents. In some cases its gotten a bit intriguing- in others much more controversial. There have been some suggestions about how to deal with the proposed concerns. But, clearly the debate continued for some time. [...]
So the conclusion is : Mono ok but optional, not installed by default.
Because, one thing that, at least we can agrees : Many companies ask someone to make something. If that someone is microsoft enthusiast, it will surely uses .net technologies. Using mono, in that case, can be usefull for not being linked to a “MS windows platform”.
It’s surely microsoft patent and in future claims ……. but meanwhile that project open doors to the linux world and maybe the asp.net enthusiast will change to php.
the confusion of the windows lovers is the first step for them for changing to linux.
You don’t have a high IQ, I must say. You are appealing to the user as a emotional guy, and the developer side as the tech side. In the end, my friend, places can be exchanged. We are not that simple. I really don’t know how you are doing this deductions, specially the last one: “Mono is a ” etc.
You need to separate a deduction between a point of view (“Mono is a “), and an appreciation (“user is emotional, developers remain tech”). You that a lot of users also like Mono, right? Also, there are, I’m pretty sure, developers that don’t like Mono.
Finally, for those that are afraid of the patents, AND that have coded but nothing but school projects in some cases, go and read: https://lists.ubuntu.com/archives/ubuntu-devel-announce/2009-June/000584.html
You are entitled to your opinion of course
Carlos ….. it’s called the principle of precaution ….
It’s when something is unsure and so you take action to avoid a possible situation in future.
Let me explain you with a simple example :
We know that a person being hit by a car is deadly ……. so, by the principle of precaution, before crossing the road, you must look if a car is not going into you. Not doing so may or may not be the tragic accident. What is sure is if you check before crossing the road, you will not be hit by a car (unless you are silly or drunk or want to die).
So the patents on the tech that mono uses exists, Microsoft has made in his past patent pursue, Nothing happened with .net up to now. By principle of precaution it’s not advised to let mono as default installed.
The Ubuntu Team, in your link, reveal that the situation is unsure but nothing real happened to them. So they decided to continue with mono integrated. They know the potential risk and accept the risk taken.
[...] humble blog will be very aware of my personal opinion about Mono and specifically with regards to where it should belong in [...]
Microsoft is “using” the FOSS developer community talent to create applications in Mono that Microsoft can port to their closed source Windows. Why isn’t anyone noticing this?
Microsoft has no community of developers to depend on, so they are trying to “seduce” FOSS developers.
I am a developer, and I would rather not have Mono installed by default. For me, it is not a trust issue, but an ethical one.
Like RMS, I’m grateful that we have a free implementation of .NET on our free operating systems. I just feel that the whole C# language and it’s .NET libraries were created for the wrong reasons, by the wrong people. Not only does it taste bad to me, the technology was clearly only created to benefit Microsoft and further the interests of a company who has regularly attacked and, I believe, where it benefits them, will continue to attack the free software community. I want no part of it and I hope it is avoided wherever possible.