Tuesday, February 26, 2008

Lots of GNOME/Mono FUD Lately

It would seem that lately there are a lot of FUD-spreading trolls crawling out of the woodwork trying to frighten people into thinking that GNOME somehow depends on Mono.

Let's take a look at their most widely repeated claims:

GNOME depends on Mono

This is simply untrue... to see for yourself, try removing Mono from your Linux system using yum, zypper, or apt (or whatever) and you will plainly see that it does not remove GNOME - it may remove Tomboy, F-Spot, Banshee and/or Beagle (if you have any of them installed), but it will not remove any core components of your GNOME system.

Now that we've proven that GNOME does not depend on Mono, let's move on to their next claim:

GNOME depends on libbeagle, a Mono program

Again, false. GNOME's help browser has an optional dependency on a C-library called libbeagle which can be used to make search queries via IPC (Inter-Process-Communication) to the Beagle daemon if and only if Beagle is installed. I.E., Yelp does not depend on Beagle, it is simply able to take advantage of Beagle if it is available. As far as I'm aware, there are plans to replace libbeagle with a more generic library able to communicate with either Beagle or Tracker via IPC, depending on which one the user has installed.

NDesk-DBus is replacing DBus in GNOME

There was a big stink about this a while ago by a very angry person who didn't understand how libraries or software development in general works.

GNOME continues to depend on the C-implementation of DBus (called libdbus) and that is unlikely to change unless DBus itself (the technology, not the C-library) gets replaced.

NDesk-DBus, written by the famous Alp Toker, is a replacement for the current DBus-Sharp .NET binding around libdbus, the C-implementation. The main difference between NDesk-DBus and DBus-Sharp is that DBus-Sharp wraps libdbus while NDesk-DBus is a fully managed implementation of the DBus wire protocol.

GNOME not only does not, but it cannot, replace DBus with NDesk-DBus - any half-way competent programmer would know and understand why this is so. Native C programs cannot easily call into managed code.

Someday soon it will be practically impossible to write any app for GNOME without being forced to use MONO

Considering that in order for this to happen, core GNOME libraries would have to be rewritten in a .NET language, this is unlikely to ever happen, never mind anytime soon.

As you can plainly see, these types of claims are being made by people who do not understand the most basic concepts of software development.

GNOME is riddled with Mono applications

If by "riddled" they mean "not", then yes. ;-)

There is currently only one official GNOME application that uses Mono and that application is Tomboy. Tomboy, as useful a tool as it is, is not even arguably a core component of the GNOME desktop in that removing it will not somehow make your GNOME desktop useless.

Novell is forcing GNOME to include Mono

Ask any core GNOME developer and he or she will tell you that this is absurd. To the best of my knowledge, Novell has not even once requested that any of its Mono-based applications be accepted as core GNOME applications, never mind forced one to be accepted. I should also note that Tomboy, the only Mono application in GNOME currently, was not a Novell project at the time it as accepted for inclusion in GNOME.

This post has been brought to you by the letters G and M and the number 2.

67 comments:

hb said...

Part of the FUD source may also be that GNOME is not really clear about which projects are actually considered to be GNOME projects, and which ones are not. The site http://www.gnome.org/projects/ for example lists many projects that are not GNOME projects. Other sites on gnome.org link to gnomefiles.org which is even broader.

Is there any comprehensive list of what is considered to be a GNOME application?

I am getting increasingly frustrated whenever I hear claims that GNOME is totally buggy because any random GTK+ application just crashed.

Jeffrey Stedfast said...

The GNOME release notes, I am told, has a complete list of all of the core GNOME libraries and applications.

Towards the bottom of http://www.gnome.org/start/2.20/notes/en/ there is a list.

Anonymous said...

However, as usual in these cases, the people actually doing the hard work of actually making gnome are just getting on with their work, which is great, and the people ranting and raving about a percieved 'problem' (which as you've demonstrated they dont even understand) are not meaningful contributors. The people who do understand the percieved problem, have actually extensively looked at the issues, with great help from groups including employees of novell and red hat (amongst others) and have determined that everything is fine.

Jeffrey Stedfast said...

hb: I was just pointed to http://live.gnome.org/TwoPointTwentyone which has links with the list of official libraries, desktop apps, bindings, etc each nicely grouped.

Jeffrey Stedfast said...

badders: agreed

Robert said...

I really do not like Mono (personal opinion), but I am with you, Tomboy is just only one application that requires Mono, and if someone want to put in legal limbo using it, that is her/him decision. what i really do not like is how many distributions are beginning to include those applications as defaults, hey I do not need post it notes on my panel, if I want them can add them later.

Installing Tomboy by default on the panel is like putting there the weather applet not everyone will use it

Anonymous said...

Hello all,

I recently switched to Gnome as a desktop user.
I am seriously considering participating and helping at Gnome development.

For the moment I am trying to understand how the Gnome community works functionaly and technicaly. I am really surprized by all the buzz around mono and related software.

I totally agree with badders : I think most of the buzz comes from outside the Gnome community. Unfortunatly it can lead to sort of boycot of some very good applications : I am thinking at Beagle. I have read every where that it was buggy, heavy,slow and using the "evil mono" and I was higly encouraged to use tracker instead. I decided to make myself an opinion and found out that beagle was a really great application and that all the buzz around it was totally not true !

Then I started to interest myself to mono (I already developed on MS .NET framework). All I can say is that I really like it.

The goal of my post is to give you hope : I am a "Linux" user since several years and I heard every thing about Mono and even Novell.

But guess which framework I choosed to write the first Gnome application I am actually working on ... ? Mono :-)

Igor said...

I like to be contaminated with Mono :), and everyone should!, because its a great platform, maybe the best we can get in Linux.

I'm also not afraid by any patent treat, if I were afraid, I would never choose to be a developer in first place, because everything I write is patented already.

If people think that Microsoft is going to sue you one by one because you use Mono, you're just a very silly individual.

Anonymous said...

Mono is greate framework it would give only more power to gnome. I dont understand people who even doesnt understand how mono interact with gnome but give own opinion agains mono in gnome.

Anonymous said...

I agree with Igor. You can't live in fear of patent law suites or you'll never get anything practical done.

Software companies generally use patents only as a defensive measure anyway. As Mark Shuttleworth recently stated, it's not software companies that you have to worry about being sued by over patents, it's the patent trolls that you have to worry about - and with those guys, you aren't safe no matter what you do, so you might as well get something useful implemented using a good technology than spend time worrying about it.

Anonymous said...

I just wished that I could decide what to install during the Ubuntu installation process...

Then I would remove tomboy, evolution, f-spot. Because I don't need them, and I dislike Mono.

Anonymous said...

I agree with Igor. You can't live in fear of patent law suites or you'll never get anything practical done.

Great! So we can finally have Nautilus with spring-loaded folders, the patch was left bitrotting because of an Apple patent.

bugzilla.gnome.org/show_bug.cgi?id=44001

Igor said...

@Anonymous: why? you don't take notes? save pictures? you don't even have an email account? LOL.

Let me ask you... why do you use Java in first place? if its from SUN(a closed source company, just like Google, Novell and Microsoft) and have been closed source since the beginning, Java still not 100% Open Source but Mono is 100% FLOSS since the very beginning.

So you need to be fundamental in your thoughts, you need to have a really good reason, that we can say: "This guy its right!" but in this moment, I can't say that.

Anonymous said...

@Anonymous:

evolution doesn't require mono, so I fail to see the link?

Anonymous said...

To Igor:

Mono is 100% FLOSS as far as the ECMA describes C#. What makes the rest of the goodies though, is covered by Microsoft and will never be monoized.

Java is 100% GPLed + classpath (note: novell may REQUIRE YOU BUY A MONO LICENSE IN SOME CASES), what you get is what you expect. With Mono, what you get is leftovers.

Jeffrey Stedfast said...

Anonymous: In what cases does one need to buy a Mono license?

That should be a non-issue unless you are wanting to embed Mono into a proprietary application, in which case who are you to criticize? :-)

dBera said...

The gtkfilechooser-beagle uses dlopen based glue to interact with libbeagle. I seriously think someone should write a dlopen-based glue code for yelp and give us beagle users a break :( (I have a feature request filed with yelp for this). Its hard to spot useful feedback if there is a lot of FUD around.

Anonymous said...

Mono creates the false impression that .Net is multi-platform. It's not. Mono will never be compatible enough with .Net. We've seen this before with Java and Classpath. If people had a little bit of common sense and strategic thinking they would invest on Open JDK and make it a better platform for desktop applications. Investing on Mono helps MS more than it helps free software.

Igor said...

@hilmi: IMHO Mono is compatible with .NET, not all the API but most of it.

And who do you think that helping Java benefit?

Let me answer: SUN... the non-profit association :D.

Really, the only thing about .NET that this type of guy dislike is the fact that is from Microsoft, I'm wondering what would happen if .NET were from other company.

Bronssipilvi said...

It's amazing that GNOME users are even talking about this matter. Shows how disconnected they are as a community.

I'd suggest that Gnome developers would actually start unifying their desktop and making Gnome as desktop a tighter package.

Like shown here: http://www.gnome.org/projects/
That page is "all about" Gnome.


And please, for god sake make Nautilus go away. It's awful file manager. I haven't never used as crappy file manager as it is. I haven't got used to it ever since it was introduced.
Gnome needs something like XFM as it's file management. Or direct rip-off from OSX's Finder.

Chris Cox said...

First... the people posting MORE FUD... stop it!!

Second... Mono will hopefully become the preferred .Net. People don't understand that if somebody builds a better/freer .Net, that in itself has value. So having a Mono that supports all of .Net might not be as interesting as Mono being everyone's preferred .Net-like deployment platform.

And of course... nobody is forcing anyone to use Mono or anything .Net like... well nobody except maybe Microsoft.

Anonymous said...

From: Its-all-about-the-apps-stupid department

I agree GNOME as the DE does not depend on Mono.
However, I can hear average joe user screaming: But I want tomboy, f-spot, banshee and beagle (to name a few apps from the article)!
So what do you tell him? Install Mono OR,
You can't handle the truth (about Mono)?

Jeffrey Stedfast said...

If a user agrees that f-spot, banshee and tomboy are best of breed applications, then why should they care what language they are written in? :)

Mono apps are no more likely to infringe patents than if the same app had been written in C, Python, or assembly.

Anonymous said...

Really?

Gnome installs some mono based programs silently. Is it different from being built upon mono?

Yes, you say we can uninstall those
bloated and unnecessary ones, and mono.

I tried remove mono, now the gnome lose its face---the desktop is gone!

I only can see the menu bar and status bar at the top and bottom of my screen!

You drunk monkey!

Jeffrey Stedfast said...

I have no idea what happened to your system, but that doesn't make any sense.

None of the core GNOME programs or libraries depend on Mono in any way.

Jeffrey Stedfast said...

Also, GNOME does not install anything, never mind installing anything silently.

Anonymous said...

I will never understand why so many Gnome developers volunteer for yet another pair of MS handcuffs.

If you like being dictated to by Microsoft, why not just run Windows Vista and cut out the incomplete unsupported .NET implementation.

Luckily there are no Mono killer apps. Tracker is a faster, lighter replacement for Beagle. There are lots of photo management apps out there and Tomboy is a yellow stickies app.

Unfortunately, mono still get installed by default every time I install a Gnome distro. The situation can only get worse.

Unknown said...

I think this has to do with two kind of persons. The ones outside gnome project, and the ones that cannot read.

People with a good Gnome knowledge (do not have to be a Gnome Developer) known that Mono is not a requirement for Gnome. Only one application that is Tomboy, and which is an optional one use it. Depending on the distribution (and that's not Gnome Project related) can come with more (Foresight), or less (Fedora/Ubuntu) mono programs. Even with others mono support is up to you (Gentoo).

And for those that do not read, this is a small info from the mono page:
"The Mono API today is somewhere in between .NET 1.1 and .NET 2.0, see our Roadmap for details about what is implemented."

That probably explain why not everything works. But if you stay with older .Net apps, the compatibility is very good indeed.

Jeffrey Stedfast said...

Mario: Hmmm, those Mono docs should probably be updated as they are a bit misleading...

I'm pretty sure that Mono implements "all" of the core 2.0 API (minus things like Windows.Forms which are progressing quickly) as well as most of the C# 3.5 features (I think LINQ is still being worked out).

Jeffrey Stedfast said...

Anonymous: Thank you for giving us a perfect example of the kinds of things a clueless troll who is unable to read says.

Your contribution is appreciated.

Igor said...

@Anonymous: Dictated by Microsoft! that was my favorite part LOL!, again thanks for your punditry :D, and thank you for not develop any Open Source software.

Anonymous said...

jeffrey,

The patent risk of mono has never been addressed. They have only been ignored.

You may be a true believer in the Church of Miguel, but please stay the freak out of my desktop.

Especially when your wedge in is a yellow stickies app.

Igor said...

I'm starting wondering if Anonymous is the same guy, are you Mark Fink?

If is not the same guy, we need to worry too many pundits in this world.

Jeffrey Stedfast said...

Anonymous: You are wrong, it has not been ignored at all. You ignoring the fact that Mono is no less safe than anything else on your desktop is not "ignoring the patent issues", it's you being stubborn and not wanting to admit you're wrong.

If Mono wasn't safe, Red Hat and Ubuntu (for 2 examples) would not be shipping it. All of the software companies using Mono would not be using it either - as I'm sure they've had their lawyers look into it independently of ours.

If Mono is so inherently unsafe, why do all of these companies with their independent legal reviews keep coming to the conclusion that it's safe?

If you don't believe it is safe, then get your own lawyers to review it.

If you are a paranoid individual that is afraid of his own shadow, I can certainly understand your unwillingness to take anyone's word (including Mark Shuttleworth's) on the issue, but I would expect that you'd have gotten your own lawyer's opinion by now - I presume you must have a lawyer reviewing all of the other software you use as well, right?

Anonymous said...

I was one of those people that read about the Mono infestation in Gnome and looked in to it myself finding that nothing in the core Gnome environment relied on it, so I removed it.

Mono is useless to me. I have been a programmer for 12 years and see absolutely no reason to use it. It offers 0 benefits of C/C++ to me. At the same time, I have no problem with anyone wanting to use it. That's the beauty here. You have a CHOICE.

Anonymous said...

Regardless of patent FUD and anything else about Mono, Tomboy currently IS best of breed for desktop notes - Gnome's old stickynotes app is far too limited. Tomboy strikes a great balance; I've been using it since before it was default in Ubuntu, but I'm glad it is now.

Anonymous said...

I have several issues with Mono.
1. It is heavy. I mean, it is a whole framework, a large part of a Linux distribution with GNOME and is there just for one small application, which "... useful a tool as it is, is not even arguably a core component of the GNOME desktop". I mean, why not include Java ot something else just to have calendar for example?
2. No matter how many speed test will be published, they cannot change the truth, that the whole idea behind .NET (read some MS books about their technology) is to make it easier for cheap outsourced guys in India or else to write code without too many errors. So lets make endless cycles every time we start a .NET program just to check if the programmer did something wrong ONCE. So where goes the beautiful idea about light desktop when you are making a copy of something made with idea (Intel will make more powerful chips, so who cares about speed, the users will just buy new computer).
3. Mono is MS .NET clone. But you cannot run a windows .NET application under Linux because of Windows.Forms lack of full implementation in Mono. But this is the goal. So actually developing Mono means let's open the doors for Windows apps in Linux. Well, I dont think this helps FOSS at all.
Let's put the last one this way:
If you have full competability with latest version of .NET you are just helping Windows application run in Linux enviroment. If you dont have such competability, why trying to copy .NET? Why not Java, or python or something else?
@Igor: Saying "Mono is just the best bla-bla" is plain stupid, sorry for that, but is just childish, like "X rocks, Y sucks"
So no matter what we say, the GNOME developers would not change their mind, they just want to assure the rest, that they are right and all others (with different opinion) are wrong. Let's see what would happen with GNOME in the future. But I my country I have seen many bright young people liking and helping FOSS to get happily contaminated with .NET and MS and now they are working for MS directly and indirectly and writing .NET code, but not Mono (even some of them have books about .NET with chapters about Mono) and they are well paid Windows developers. If you think this is good for FOSS, okey, Mono is great...

tosky said...


> As far as I'm aware, there are
> plans to replace libbeagle
> with a more generic library
> able to communicate with either
> Beagle or Tracker via IPC,
> depending on which one the
> user has installed.

I hope that the new library will be Xesam-compliant:
http://xesam.org/

Jeffrey Stedfast said...

filip:

1. If you only install the parts necessary to actually run the Mono-based GNOME apps, it's only something like 8 MB. That's not very large at all. In fact, I believe it is smaller than Python.

Also, just because there may only be a handful of Mono-based apps now doesn't mean that number won't grow.

2. Then I suppose you are against people writing apps in Python too, right? I mean, no matter how you look at it, Python apps will always run slower than well-written C programs and spend more time checking programmer errors, so why should we allow people to write Python apps?

3. You are clearly misinformed. There are many Windows .NET apps that run under Linux with 0 modification. Even some Windows.Forms apps can run under Linux today.

The Mono project's goal is to make a viable alternative development platform to C/C++ to make writing software easier and less error-prone. It doesn't matter if Mono doesn't support every last minute feature that Microsoft's .NET supports.

The only people who claim that that is a flaw in Mono are people who wish to bash it and have no other rational argument with which to do so.

Think about it... how is Mono useless to Linux developers just because it's not 100% compatible with Microsoft's? Is 100% compatibility necessary for the Linux programs to compile? Is it necessary for them to run? Is it necessary in order for Mono to make their lives easier?

No. No. And no.

If I write an application using the .NET 2.0 APIs targeting Linux, then what difference does it make if Microsoft is on version 3.5? It makes no difference at all.

While it might be nice if Mono supported the latest 3.5 features (btw, it supports the v3.5 C# language features already), but it is hardly a requirement. It's not like version 2.0 becomes useless just because version 3.5 exists.

For example, is C89 useless now that C99 is available? No, it is not but according to your thinking, it is.


As far as the GNOME developers thinking people are stupid, this is simply untrue and all I can imagine is that you are desperately trying to find another way to bash GNOME.

I guarantee that the GNOME project would gladly accept a replacement for Tomboy if it had feature parity and a migration strategy (e.g. able to import Tomboy notes) and so long as users preferred it over Tomboy.

As far as your comment about people in your own country choosing to write software for Windows instead of for Linux, how is that Mono's fault? It sounds to me like they would have chosen to write software for Windows regardless (as you said, they never even bothered to try writing Mono software for Linux, so Mono has got nothing to do with them writing software for Windows instead).

Jeffrey Stedfast said...

remmy-lee: That's an opinion I can respect, thank you ;)

Anonymous said...

First I want to thank you that you keep the tone of the discussion calm, trying to be objective. Actually you are succeeding better than me.
About runtime env. - I admit I didnt check it.
But I felt there is something fishy about Mono when there was a voting (correct me if I am wrong) about whether it should be part of GNOME or not. And it is still strange to me that a runtime env. and bindings where added for just one small application. Something like intuitive cost-benefit analysis. The example about Java and python was a try to express that: There are many languages with GNOME bindings and some GNOME applications written on them, but still they are not part of GNOME.
Everybody I talked about Mono and Tomboy as reason to include Mono in GNOME was laughing and disbelieving this is the true reason. Maybe I have a bunch of conspiracy fanatics for friends, I dont know. ;)
I guarantee that the GNOME project would gladly accept a replacement for Tomboy if it had feature parity and a migration strategy Well, I think Tomboy was pushed from GNOME developers to the GNOME users (again please correct me if I am wrong). So the logic seems a bit reversed to me.
About compatability with Windows the thing is that (at least I think so) if the purpose is not to make bridge between Windows and Linux then why .NET? Is it really the best thing there? My opinion is that is not. It is just an answer of MS to Java. If there was no Java there would be no .NET. But still this is only my opinion. And if the purpose is to bridge Windows and Linux worlds, I (another personal opinion) feel that this is helping more MS than FOSS. At the time when all windows applications will be written in .NET the older versions will be able to run under Linux (because newer version will be build against newest .NET 3000 and Mono will be behind). So what is the benefit of this. Most Windows applications with no free alternative (or at least not good one) are paid and closed sourced. So the options for Linux users will be:
1. Try a free alternative of that Photoshop/accounting program/AutoCAD/something
2. Bye a copy of the Windows version and hope to run under Linux
3. Get a cracked copy and try to run it under Linux
I thing very few people will stick with the first option. And the other two are no good for FOSS.
And finally I have that bad feeling when we are talking about MS. You know, I am not fanatic, don't write M$, but still they are our ideological enemy. If you think that large companies are good and don't do dirty tricks...well, I think the abbreviation FUD was invented for their doings.
And about people in my country the point was (curse my non-native english and my short attention span :)) that people believing and sympathizing to FOSS with this idea - they are not enemy, lets not be fanatics, they are just a company, there are many bright people working for them and than at some point they started working for MS. And FOSS comunity lost them. So I think one should be really cautious with MS.
Well that is all from me. Many of the things I am saying are subjecive. Some are just intuitive caution about the nature of big business. I like and use high level languages, but for me Java and .NET are too high. (This is the most subjective opinion in my post I think). I am still GNOME only user and hope to stay such for long time. My current preffered language is Python - hope to get better in it.

Igor said...

"M$"? and you were calling me childish?

GNOME devs should pick whatever technology that they want because that's the freedom of CHOOSE!

btw, I want all the C code on GNOME out, because it is a technology written by a company that I hate... AT&T, and I don't want OOo because its Java and I don't like SUN too.

Jeffrey Stedfast said...

filip:

I can understand your feelings that it is silly to include the Mono runtime for just one application, but the same could be said for libxine being pulled in for just Totem... or guile being pulled in for just GnuCash... or...

I'm sure you get my point.

That said, if a user feels that the cost/benefit ratio is too high for them to justify pulling in a dependency for any app (whether it be Mono for Tomboy, libxine for Totem, or guile for GnuCash), I can certainly understand their reluctance for installing the dependency and I also respect that.

Luckily we live in the world of Free Software where there is an abundance of choice, allowing users to pick and choose what they want to install.

Keep in mind that while GNOME may officially bless this or that program as an "Official GNOME application", it does not mean that the user has to install it in place of some other program that better meets their needs.

I, and I'm sure other GNOME devs would agree, encourage end-users to install the apps that best serve them. We are only here to try and make the best applications that we can the best way that we know how. But unlike baseball caps, there is no One-Size-Fits-All.

As far as Tomboy being pushed by GNOME devs onto users, I don't think this has been true. GNOME devs have no power of F/OSS users and therefor cannot force people to use something that they do not want to use. We are not overlords, we are only public servants.

About compatibility with Windows the thing is that (at least I think so) if the purpose is not to make bridge between Windows and Linux then why .NET?

Mono is trying to also be a bridge between Windows and Linux where it can and the developers working on Windows.Forms right now are doing the best they can to meet the needs of Windows projects wanting to reach the Linux audience.

Many of the people who first become interested in Mono as a means of making their software available to Linux users later decide to try out Linux and begin targeting Linux as a first-class platform for their software.

Not everyone ends up doing this, but more than zero - and that's a good thing because their minds have been opened to the F/OSS way of doing things.

Some will even begin writing F/OSS apps that never would have likely done so had it not been for Mono.

Is it really the best thing there?

If you ask my opinion, yes, .NET is one of the best platforms available for writing software.

Others may have differing opinions...

And if the purpose is to bridge Windows and Linux worlds, I (another personal opinion) feel that this is helping more MS than FOSS.

I suppose it benefits MS in that if F/OSS devs decide to write software based on Mono, then Windows gets some applications for free. Is this what you are referring to?

If that is what you are saying, then I should point out that Windows has more to lose than it has to gain from Mono. Linux has more to gain from Mono than it has to lose.

Mono is a win-win for F/OSS.

Windows has a much larger developer pool than Linux, therefor it is safe to say that there are more apps being written for Windows than for Linux - if these apps will work on Linux via Mono, then Linux gets more apps for free. Linux will gain more apps for free because of .NET than Windows will gain from the F/OSS community.

I should also point out that many of the larger F/OSS projects are already working to port their software to Windows anyway (KDE, GNOME, Mozilla, OpenOffice, and many others), so .NET doesn't really give Microsoft anything that it wasn't getting already.

So what is the benefit of this. Most Windows applications with no free alternative (or at least not good one) are paid and closed sourced.

What is the benefit of not having Mono?

The benefit of Mono is that many of these Windows .NET programs will run on Linux. That gives the users choice.

For example, if Photoshop was a .NET application, then artists on Linux would have the option of using Photoshop instead of GIMP, if that is what they really wanted.

There are a growing number of Linux users who are not Free Software idealists, they don't mind paying for software and they don't care about the Free Software politics, they only care that they have software that works for them the way they need it to.

For those users, Linux isn't a viable alternative to Windows unless they have the apps they need - if they feel they need some of their favorite .NET applications, then Mono is a great way for them to justify moving to Linux.

You and I, who prefer Free Software, may not care to run these closed-source .NET applications under Linux, but that is just our choice.

I hope that answers your questions.

Igor said...

Take it easy dude, software is software don't make it personal, anyway I was just fooling around you.

The thing is that IMHO Tomboy is the best software in its category, and also F-Spot and Evolution. So why does Gnome devs have to take them out just because "you" don't like Mono?

I like Mono not because its a .NET implementation, not because its opensource, I just like it because I think its superior, better than anything I have tried(even Fortran... :D), so if you want to take Mono out of Linux, well write something better ;), or improve the-so-cool-dev-platform-that-you-use to reach the level that Mono have.

Jeffrey Stedfast said...

Anonymous: I'm sure your Linux distribution must provide a way to not install Evolution... even OpenSuSE allows you to opt out of installing Evolution in the installer.

Sean Toner said...

Someone previously said:

"Let's put the last one this way:
If you have full competability with latest version of .NET you are just helping Windows application run in Linux enviroment. If you dont have such competability, why trying to copy .NET? Why not Java, or python or something else?"

This is not the only way to look at it. It assumes that you have an application that you intend to be Windows-centric to be useable on other platforms. Why not just assume that if Mono was indeed 100% .NET assembly compatible, that you could achieve a "write once, run anywhere" mantra that Sun has long proclaimed? In other words, having Mono be compatible means I can be platform agnostic...not necessarily a toehold for Windows to crack into other OS's.

So why not use some other language like Python or Java that can do the same? Well, I give kudos where kudos are due and .NET is a great idea (and I work as an embedded linux system developer for a company that makes scientific instruments that is both a Java, MS, and Linux shop). Microsoft made the right move by making .NET not only platform neutral, but language neutral.

As long as you conform to the CLS, you're not tied down to the language that the programmers wrote in. As long as there is a .net (or mono) compiler, then program in the language YOU are comfortable with. For example, if I write some .net assemblies in VB .NET and release these in an SDK, but my customer only knows C#...so what? He can extend my classes if he wants. If I write in python or Java, while it is true they are platform neutral, you force your client programmers to also write in that language.

So Mono is not a bad thing. It greatly expands freedom...it doesn't limit it.

Anonymous said...

Whatever is the choice of developers I can't change that. But for sure I can tell you that people are annoyed because of MONO. Tell it FUD, Fanboyism or anything to support your choice but still the fact will remain same, we look mono suspiciously, we hate it and we don't want to get anywhere near of it. Your purpose seems to be developing a great application but lacking a GNU viewpoint. Kindly develop all these great application in windows. As a linux user and my fellows don't want your beautiful bounty. We use crashing applications, fixing bugs overnight.. why ?? why can't we have used windows instead of all these troubles? Ask yourself.

Anonymous said...

we look mono suspiciously, we hate it and we don't want to get anywhere near of it

I concidere myself a member of the "Gnome Users Community" and I do not like to be included in that "we".

I really feel like users who do not like Mono are making more noise than users who like it ...

I think this is one of the point here : There is a buzz which tends to make people believe there is a majority of people not liking (hating) Mono. I do not think it is true and I am still waiting for evidence ...

Anonymous said...

Some intelligent ancestors wrote "Once bitten twice shy".

And here we are "100 times bitten and still posing ourselves brave".

Whom are we fooling? Ourselves in my opinion. MS did bring MSIE, office initially for mac users to make it popular but discontinued later when they were the solo options left. Mono is controlled by MS. And if you can trust those std. then good for you. What you called as noise is real fear among people. And they have good grounds to be feared. Fundamental Q comes why gnome was created?? To have a true GPL DE when KDE fear spread. And today you just out of the blue want people to believe its nothing, mono is safe, mono is good, mono is the altimate technology without which linux users won't survive. We are definitely not eating grass.

Good luck to all those who believe its okk. Just think about std trails of MS. (MSIE std cause wc3 is crap, OOXML cause ODF is a FUD, protocol space ... ....). And yeah, its not noise. Look at KDE guys and have real guts to develop own application than giving proxy reasons of tomboy or beagle.

Anonymous said...

Arf, you are going to be very disapointed by KDE devs too : they believe Mono is enought safe to make a KDE/QT binding for it named qyoto ...

http://websvn.kde.org/trunk/KDE/kdebindings/csharp/qyoto/

Are KDE devs and lawyers as blind as Redhat, Ubuntu, Novell and Gnome ones ! I believe so ;-)

Anonymous said...

Well ! nice to see that :). Mine and in fact many other people's opposition is not that gnome is providing binding for mono. I welcome for providing support to as many technologies as possible. Opposition is making it kind of must in the long run for installing a standard desktop. You may say that mono is not necessary for installing gnome but it remains half truth when many of the useful applications are coded in mono, and i can very well see mono is kind of the most welcomed thing in gnome project.Its more of a sad thing than outrageous.And in a manner it does sacrifice people's confidence in gnome. And its not just about a damn DE or application, its about what people believed and trusted so many years, being shattered now.

Jeffrey Stedfast said...

Whom are we fooling? Ourselves in my opinion.

By "we", I can only presume that you mean you and the other people spreading FUD about Mono. In that case, I agree ;)

MS did bring MSIE, office initially for mac users to make it popular but discontinued later when they were the solo options left.

Okay... and what has that got to do with Mono?

Is Mono developed by Microsoft? No.

Is Mono controlled by Microsoft? No. The specification for the CLR and C# language were originally written by Microsoft, yes, but they are now public ISO standards.

Office and IE for the Mac were both developed by and controlled by Microsoft. There are no similarities between those pieces of software and Mono.

Mono is controlled by MS.

I just answered that above.

And if you can trust those std. then good for you.

Well, if we can't trust ISO standards, I guess we shouldn't be using C either, as it too is an ISO standard... and note that C was also created by a company, which, at the time, had a monopoly, AT&T.

What you called as noise is real fear among people.

Only among a small number. Ever hear the expression "vocal minority"? That describes the people spreading FUD about Mono. They are all part of the vocal minority.

These people scream the loudest because otherwise they wouldn't be heard. If the majority of people saw it their way, they wouldn't have to scream so loud.

And they have good grounds to be feared.

No one has yet to specify why this is so. Instead, they make wild accusations that are provably false or else they make predictions based on unrelated past events.

Fundamental Q comes why gnome was created?? To have a true GPL DE when KDE fear spread.

There are two answers I could give you, both of which you will not like:

GNOME was created because, at the time, Qt was not licensed under a Free Software compatible license while KDE itself was licensed as GPL. This cause legal concern because KDE was illegally breaking the licensing agreement of Qt.

Turns out, everything worked out ok and that Trolltech had no intention of suing KDE or anyone using KDE, so it was not a problem in the end.


If we pretend that your claim is the truth, however, in that GNOME was created because of KDE FUD, then I say "look where that got us... 2 competing Free Software desktops!" :)

And today you just out of the blue want people to believe its nothing, mono is safe, mono is good, mono is the altimate technology without which linux users won't survive.

...???

No one ever said that Linux can't survive without Mono. Mono simply makes writing applications easier because programmers don't have top spend a vast amount of time debugging memory lifecycle problems.

You might find this article by Jamie Zawinski enlightening.

We are definitely not eating grass.

Never claimed otherwise.

Good luck to all those who believe its okk.

Thanks.. we're doing great so far!

Just think about std trails of MS. (MSIE std cause wc3 is crap, OOXML cause ODF is a FUD, protocol space ... ....).

Nah, those aren't Microsoft standards... those are Microsoft's implementation of standards. Big difference.

And yeah, its not noise. Look at KDE guys and have real guts to develop own application than giving proxy reasons of tomboy or beagle.

Yes, let's take a look at those KDE developers... why, looky here, they've got a Mono project called Qyoto. Oh heavens, me.

Anonymous said...

Dear Jeffrey,

Until your last comment I had no doubt about your sincerity. But your claim that Mono tries to implement an open standard is so obviously wrong that it sound like demagogy. Mono tries to implement "MS .Net". The ISO standards constitutes a subset of the de facto MS standard which is collectively called .Net n ( {n: 1, 1.1, 2.0, 3.5, ...} ) . MS doesn't even have a process like Java standardization process.

I don't even want to comment on the Qyoto bindings here because I feel it would be futile (Richard Dale rocks, btw).

Igor said...

I knew that I was right!, this is a:

Java vs .NET, and GNOME vs KDE thing.

And in the end always uninformed people and fanboy arguments.

Igor said...

@Anonymous: Duh!, and who do you think that have the decision to get Mono out of GNOME, and by instance Ubuntu?

GNOME DEVS!

btw, you can uninstall Mono just after your first boot in Ubuntu, so you can avoid Microsoft to sue you.

Jeffrey Stedfast said...

hilmi:

The goal of Mono is to implement the ISO spec as well as the extensions such as Windows.Forms, ADO.NET and ASP.NET.

Just because Mono implements more than the ISO standard specifies does not somehow make it any less accurate to say that Mono implements the ISO specification.

I never said it was limited to the ISO standardized portion of .NET.

I don't see what difference it makes that Mono tries to implement Windows.Forms, ADO.NET and ASP.NET - if it didn't, would you deem it kosher?

If so, simply ignore the extensions ;)

Igor said...

There is a WHOLE WORLD of options. Why stick with this fucking problem one?

Because IMHO its BETTER!, is that hard to understand?

Anonymous said...

Not "difficult".

But it must be _really_ better.

Better than C, C++, Fortran, Python, Perl, Java or any other option that came to ours mind to keep us producing: (a) a framework to use it; (b) the applications; (c) the FUD involving a company which is, at least, not friendly with the Open Source (and Free Software, if it all matters) model.

I declare that I personally don't know .NET to judge it's technical advantages, but it seems to much trouble to keep with it.

Jeffrey Stedfast said...

The only trouble with it is the trouble in your imagination.

Jeffrey Stedfast said...

If you don't know the language at all, how can you possibly judge that it isn't "_really_" better than C, C++, Fortran, Perl, Python, Java, etc?

This is the problem with the people spreading FUD about Mono... they pull "facts" out of thin air and argue those "facts" as if they were something more than imaginary.

Anonymous said...

RedHat ship what? RHEL 5.x doesn't contain mono. It's in EPEL, but is not shipped with the product. I like mono. But the proof you seek will not come because Microsoft has not bucked up and even showed the 250 patents they claim Linux violates. So both sides have a baseless argument, the proof can not be derived until the suit is filed. Will it be filed, we will never know, just like the qt problem, could they have went to court, yes. You just don't know till it happens. Mono, should you be worried, maybe a little, microsoft did win a case over the word "windows", but is it most likely fud to drum up license sales, yes. If you don't want to have to worry, don't use it or pay patent protection. If your worried about it becoming a requirement then vote on a specific add-in instead of broad based complaining. The last thing you have to ask yourself after 500 comments is this argument going to go anywhere, probably not. People are usually more apt to see others faults in logic then their own, especially on the internet.

Anonymous said...

Remeber this asbestos is a great building material also.

Anonymous said...

@Igor

Dude, you must be seriously retarded.
I talk about shitty installation options in Ubuntu* and out of the sudden you try to link me with Gnome developers*...

lol.

Jeffrey Stedfast said...

No need to resort to name-calling.

Igor said...

Doing that, we take you less seriously.

vexorian said...

If a user agrees that f-spot, banshee and tomboy are best of breed applications, then why should they care what language they are written in? :)


So, that really is your plan, to make the community dependant on MONO, it is great that gnome devs are finally accepting it. The non-sense post and the very uninformed comments I read have finally convinced me to migrate from gnome.

Strawman: MONO dependency opponents are afraid that MS will sue everyone one by one, which is impossible.

No, I am afraid MS will attack companies distributing Linux and force them all to charge a patent tax to gnome users effectively turning Gnome proprietary.

I am also very afraid that Novell has all the right to relicense MONO as they please (read the conditions to contributing to MONO)

Strawman: They want MONO out of Linux.

I want MONO to stay as an option, but I'd rather not see distributions include it by default, the problem with gnome pushing MONO apps so much is that it forces bigger Gnome distros to include MONO.


I don't want the default Linux distribution to get dependent on a patent mine, remember .net is only an optionally open spec and thus many parts of MONO are indeed, dangerous. Not to mention the fact that MS can drop its promises eventually.

..
MONO also promotes .net by giving the illusion it is cross platform, nothing stops MS from making the next .net version totally restrictive or even charge for it.

.net is effectively the next winapi, I am terrified to see the IT industry make the same mistake twice.

So, keep MONO as an option for developers in gnome, just like any other language, but don't force it on users , please.
--
"Victory condition: Every computer running Microsoft" ~ Microsoft's evangelism is war.

Jeffrey Stedfast said...

Vexorian: No one is trying to force GNOME to use Mono, stop trying to twist words.

All I and other Mono developers want is to be able to write our applications in whatever language we want - this is, in fact, our right. If you, the user, doesn't want to use our software because of the language we choose, then don't. We aren't forcing you to use our software.

We just don't want people to be spreading lies about Mono to convince people that Mono is somehow evil just because they don't happen to like it (due to irrational hatred of anything Microsoft, seemingly).

I don't like perl or python or java, but you don't see me going around spreading lies about how evil those languages are. I don't even necessarily refuse to run software written in those languages if the software meets my needs better than anything else.

As far as "Mono promoting .NET by giving the illusion that .NET works on Linux" - that is the most clueless argument I have ever heard.

Same goes for your argument about .NET being the next winapi. The .NET API is no more Windows-specific than Java's APIs - in fact, in other arguments I've seen you claim that the .NET APIs were a direct rip-off from Java... so which is it? :)

You and your buddies slandering Mono on every public web forum you find disgusts me, personally. Especially since you so clearly don't know the first thing about Mono or .NET.

I guess the lesson to be learned from this is that some people, no matter how clueless about a topic they are, will still post their opinions believing that they themselves are experts in the field.

Code Snippet Licensing

All code posted to this blog is licensed under the MIT/X11 license unless otherwise stated in the post itself.