06.26.09

Gemini version available ♊︎

Why free software shouldn’t depend on Mono or C# — by Richard M. Stallman

Posted in Debian, GNU/Linux, Microsoft, Mono at 5:52 pm by Dr. Roy Schestowitz

Debian’s decision to include Mono in the default installation, for the sake of Tomboy which is an application written in C#, leads the community in a risky direction. It is dangerous to depend on C#, so we need to discourage its use.

“We should systematically arrange to depend on the free C# implementations as little as possible.”The problem is not unique to Mono; any free implementation of C# would raise the same issue. The danger is that Microsoft is probably planning to force all free C# implementations underground some day using software patents. (See http://swpat.org and http://progfree.org.) This is a serious danger, and only fools would ignore it until the day it actually happens. We need to take precautions now to protect ourselves from this future danger.

This is not to say that implementing C# is a bad thing. Free C# implementations permit users to run their C# programs on free platforms, which is good. (The GNU Project has an implementation of C# also, called Portable.NET.) Ideally we want to provide free implementations for all languages that programmers have used.

The problem is not in the C# implementations, but rather in Tomboy and other applications written in C#. If we lose the use of C#, we will lose them too. That doesn’t make them unethical, but it means that writing them and using them is taking a gratuitous risk.

We should systematically arrange to depend on the free C# implementations as little as possible. In other words, we should discourage people from writing programs in C#. Therefore, we should not include C# implementations in the default installation of GNU/Linux distributions, and we should distribute and recommend non-C# applications rather than comparable C# applications whenever possible.

Share in other sites/networks: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Reddit
  • email

Decor ᶃ Gemini Space

Below is a Web proxy. We recommend getting a Gemini client/browser.

Black/white/grey bullet button This post is also available in Gemini over at this address (requires a Gemini client/browser to open).

Decor ✐ Cross-references

Black/white/grey bullet button Pages that cross-reference this one, if any exist, are listed below or will be listed below over time.

Decor ▢ Respond and Discuss

Black/white/grey bullet button If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channels.

40 Comments

  1. Sir Sane said,

    June 26, 2009 at 7:22 pm

    Gravatar

    I like RMS’ stance on the matter. Rather than simply proclaiming that C# is a horrible language, or that Mono is evil, he really touches on the big issue: patents. It would be nice if Mono could find a way to completely circumvent Microsoft’s patents, then the whole issue would practically fall in on itself and no one would have to worry about it anymore.

    That said, some of the non-mono replacements in development are, to my surprise, pretty nice. Gnote is basically the same thing as Tomboy, down to the interface, layout, functionality, and icon. I have yet to find a good GTK-based replacement of F-Spot (sorry guys, but I don’t think Solang doesn’t quite cut it yet)

    As for Banshee, there’s a plethora of options out there. Amarok is great for both KDE and Gnome thanks to its QGtkStyle option. Rhythmbox is alright, although I personally don’t care for it. I’d really like to see a good GTK music player that plugs into Jamendo in a fashion similar to the iTunes music store. That’d be sweet.

    Kabatology Reply:

    I agree with you when you say mono-free Gnote (that i presently use) has little or nothing to envy Tomboy, given that is a well ported Tomboy, but I won’t bash on baby Solang, i also use it now and sincerely for that little need i have for photo managers, Soyang is satisfactory — Photo mangers are not photo editors.
    As for C#, don’t mention how horrible it is. Worked on c# many years back and gave it up. I need to say the traps are many, even for an able dodger.

  2. Will said,

    June 26, 2009 at 8:58 pm

    Gravatar

    Well, from the sound of what I’ve read, Solang is still early in development. But it has good potential, and it isn’t patent-encumbered. Give it time to mature.

    Sir Sane Reply:

    Oh, for sure. Solang is lightweight, and I believe I read somewhere it’s written in Python. Anyways, it’d be really neat to see a photo management app depend on Clutter and OpenGL, graphically propelling FOSS photo management to be much better than proprietary options visually.

    But you’re right, just give it time.

    Also, Gnote 0.5.1 seems to be excellent. I currently have an in-depth article on Linux.com waiting to be published, it should be up on FS Daily shortly.

  3. twitter said,

    June 26, 2009 at 10:10 pm

    Gravatar

    Here’s a link to the same text on the FSF website. Thanks, Roy!

    Roy Schestowitz Reply:

    Stallman’s views on this are not new. In 2007 he wrote:

    “The patent danger to Mono comes from patents we know Microsoft has, on libraries which are outside the C# spec and thus not covered by any promise not to sue. In effect, Microsoft has designed in boobytraps for us.

    “Indeed, every large program implements lots of ideas that are patented. Indeed, there’s no way to avoid this danger. But that’s no reason to put our head inside Microsoft’s jaws.”

    David "Lefty" Schlesinger Reply:

    Except that it’s somehow okay to pimp DOT.GNU in the midst of all of this, even though it has every single one of Mono’s problems and a generally poorer implementation…?

    I see a lack of consistency here.

    Sean Tilley Reply:

    I’m pretty sure RMS said in his post that ANY implementation at C# is problematic at this point, even DOT.GNU.

    NotZed Reply:

    “The problem is not unique to Mono; any free implementation of C# would raise the same issue.”

    Looks pretty clear to me.

    David "Lefty" Schlesinger Reply:

    It does…?

    “This is not to say that implementing C# is a bad thing. Free C# implementations permit users to run their C# programs on free platforms, which is good. (The GNU Project has an implementation of C# also, called Portable.NET.)”

    So, which is it? Good? Bad? Maybe you folks should read the entire article before you leap into comments…

  4. saulgoode said,

    June 27, 2009 at 1:08 am

    Gravatar

    I believe Mr Stallman misstates things in claiming Debian has decided to include Mono in default installations — unless the situation has recently changed, according to Debian project leader Steve McIntyre “there’s a chance that it might do, but it’s under discussion at the moment.”

    Roy Schestowitz Reply:

    I believe Mr Stallman misstates things ..

    I think Slashdot misstated it originally.

  5. David "Lefty" Schlesinger said,

    June 27, 2009 at 1:36 am

    Gravatar

    Hm.

    C# is dangerous, except that we’ve got a free implementation of it, except that you shouldn’t use it…?

    What?

    Roy Schestowitz Reply:

    Perfectly normal.

    David "Lefty" Schlesinger Reply:

    Relevance?

    123 Reply:

    RMS is saying it is good to have free .Net implementations, but we shouldn’t depend on them for writing new software. We should only use them to help run existing .Net software on GNU/Linux.

    Rob Reply:

    It’s not a case of depending on them. It’s what people choose to develop the application in.

    If people are writing good apps in Mono, that can’t really be helped. And if they are better than other applications built not using Mono, then it’s no surprise people are adopting them.

    We can’t dictate to people that they can’t write apps in Mono. That would be very anti open source, and work against the community.

    Linux is about choice, hence all the different distro’s. Some include Mono, others don’t. I don’t care to be honest, it’s the apps I concerned with. Whatever is best, and helps me work.

    123 Reply:

    We are warning people about the potential patent danger posed when people adopt Mono. It is dangerous for us to use Mono because Microsoft controls .Net standard as well as the non-standardized extensions to the .Net standard. Microsoft has proven time and time again that they are psycopathic towards technology competition on the computer desktop and our GNU/Linux systems and community are competition in their eyes.

    We predict that Microsoft intends to use the .Net platform and Mono for the following:
    1. Promote FUD against the GNU/Linux system and community
    2. Control the GNU/Linux vendors and developers
    3. Hinder the GNU/Linux system.

    I will not substantiate my claims in this post because the purpose of this website is to keep an eye on Microsoft and Novell. You could try reading the other news stories in this if you are interested in learning more.

  6. eet said,

    June 27, 2009 at 4:21 am

    Gravatar

    Well, I’m a Torvaldsian, not a Stallmanian… ;)

  7. rasta said,

    June 27, 2009 at 5:33 am

    Gravatar

    Wouldn’t it be better for FSF to try to acquire that license for mono (royalty-free…) and clear up its legal status once and for all? They of FSLC should be most appropriate for this, and I think they really ought to do it.

    Roy Schestowitz Reply:

    I mailed Kuhn and Moglen about this over a year ago, to no avail.

    latex Reply:

    And I wonder why not one takes any notice of you Roy ?

    Mabey they know you.

    As for Mono, if its so scary for you, why are you using C or C++ im sure you are able to write patent infringing code with those languages too.

    I think mabey evern TOMTOM used C then they violated the FAT patent from microsoft.

    So are you going to strip out all C code from FOSS too ??

    Ofcourse not, that would be stupid right, no one in their right mind would be silly enough to think that a programming language is a problem.

    Its like you saying what im writing here is copyright because im suing “words” to say things.

    Words or C or C# are simply languages a way of organising idea’s or instructions.

    But Roy, if people dont take any notice of you, that would be because they take the effort to fact check you’re claims. As soon as they do that they see you for what you are.

    Like RMS, its a shame your waisting your life and time of this cause.

    as if there are not more important things you could be doing with your time and your brain.

    Roy Schestowitz Reply:

    Stop nymshifting, “darryl”. Your trolling in Linux sites got your banned from them already.

    Moo Reply:

    Have you thought that these people can see things that you don’t? For a very long time, people claimed that RMS was paranoid and irrelevant when they learn of RMS’s predicaments. RMS sees and understand various predicaments long before the issues become big problems. Time and time again, history has shown that RMS’s foresight is indeed accurate. RMS’s track record qualifies him as a real thinker and I intend to listen to his words when he speak.

    P.S. : just because RMS has excellent foresight doesn’t exempt him from making mistakes or making non-optimal decisions.

    Rob Reply:

    Ok, although the Ubuntu team have spoken:

    https://lists.ubuntu.com/archives/ubuntu-devel-announce/2009-June/000584.html

  8. Rob said,

    June 28, 2009 at 8:12 am

    Gravatar

    I have to disagree with his comments. Quite strongly in fact.

    Ok, so the patents issue is a touchy one, but “encouraging” people not to use C# is just restricting the open source movement, innovation, and competitiveness. In terms of development, you couldn’t be putting a more negative signal out there.

    Banshee is a good example of a Mono project. Developers for it may well be suited to C# (they came from C#, or switched from Java) so can’t easily switch to another language. However, the Banshee project is moving on very quickly, especially compared with Rhythmbox. It brings new ideas to the table, and pushes Rhythmbox to keep up. That’s a good thing.

    Ok, so we don’t want a world of just C# developers, and just Mono apps, but we shouldn’t be discouraging them from writing good apps like Banshee and Gnome-Do.

    If they do disappear for whatever reason, then you just migrate to another app. It’s not difficult, much like how people migrate from Windows to Linux everyday.

    And finally, Mono won’t disappear overnight. If anything will it ever disappear? Will Microsoft be able to control it, I doubt so. It’ll just go underground, much like XBMC survived all these years. And it’ll still be actively developed, and you’ll still be able to run all your apps.

    I couldn’t be without my Linux Mint, but at the same time I recognise a good development platform, and innovative open source projects. People need to get off the hate Microsoft bandwagon, and instead of living in “*probably* planning to force”, actually enjoy the software out there, and how it’s not only developing, but other apps are developing around it.

    Roy Schestowitz Reply:

    Mint does not need to depend on Mono.

    Rob Reply:

    It ships with Gnome-Do, so it does need and depend on Mono.

    It’s the only app in Mint that needs Mono (I think), but it’s the best of it’s type.

    Roy Schestowitz Reply:

    Try Launchy, Katapult, or Deskbar.

    Rob Reply:

    Good suggestions, but I find them all inferior. I’d rather use the better app. I know it’s based on Mono, but it’s one app, and should it “be forced underground” then

    a) Linux Mint has a plethora of apps to fall back on.
    b) Mono goes underground, and I run Gnome-Do illegally.

    I use Launchy at work, but prefer and find Gnome-Do better.

    I’m not a KDE person, so Katapult doesn’t fit.

    And Deskbar isn’t quite the same as Gnome-Do. I actually use both Gnome-Do and the Deskbar already but for different things.

    Roy Schestowitz Reply:

    Remember that no-one suggests removing GNOME-Do. It’s about what’s included by default.

    Moo Reply:

    b) Mono goes underground, and I run Gnome-Do illegally.

    This is a predicament for free citizens. A free citizen should not be required to hide underground in order to conduct any just activity. Mono going underground is a truly plasible scenario which is the reason why we lobby against it.

    Rob Reply:

    It’s not like I’ll be sitting in the basement of my house using Mono. I don’t find it much of a predicament.

    I’ll download it from somewhere and use it like any other peice of software. And still be a free citizen.

    XBMC is exactly the same. And free citizens do all sorts like use illegal versions of Windows, download music and movies illegally etc… Mono going underground, if ever, isn’t a huge problem in my eyes.

    Anyway as mentioned, the Ubuntu team have already posted their view, and will continue working with and using Mono. They take patent issues seriously, and don’t find it to be a threat.

    Moo Reply:

    It’s not like I’ll be sitting in the basement of my house using Mono. I don’t find it much of a predicament.

    I’ll download it from somewhere and use it like any other peice of software. And still be a free citizen.

    This is a problem for free citizens. A free citizen and upstanding citizen should be allowed to conduct their business in an upright manner.

    Please don’t confuse having technical aptitude as equal to having freedom. Having the aptitude to perform certain actions (ex. install and use unauthorised copies of proprietary software) is not the same thing as having freedom to perform these actions.

    You as an individual may have the aptitude to hide your actions from people that threaten harm, but that doesn’t mean you have freedom. Consider this experiment:
    1. Make 5000 copies of Microsoft Windows and Adobe Photoshop and $LATEST_POPMUSIC_SENSATION without permission of Microsoft and Adobe and $POPMUSIC_DISTRIBUTOR.
    2. Share every single copy of these things
    3. Make video evidence of you sharing all your copies.
    4. Collect 3rd party witnesses to verify the authenticity of your evidence.
    5. Send copies of the evidence to Microsoft and Adobe and $POPMUSIC_DISTRIBUTOR along with your name, address and phone number.

    Rob Reply:

    I can see your point, but most end users won’t care about “conducting their business in an upright manner”, nor the difference between technical aptitude and freedom. When wanting to achieve something the difference often has little meaning.

    Your example does actually show freedom. The user has the freedom to do what you stated, but at the risk of being caught.
    And that’s why so many people download dodgy music and movies. They make that choice.

    The main point is that an end user just wants something to work, they often aren’t bothered about how they get there. A constant example I come across is people asking if I have a “copy” of Microsoft Office or know where to get one. They still have freedom to do so, but they may get caught. In most cases they don’t care, they just want to be able to achieve a goal.

    Another example is XBMC. An excellent application, and a more realistic example. Open source in development, so you can download the source no problem, but compiled illegally. People still go and get it though, and it has become huge, so much so it has spread to other platforms.

    Either way, it’s obviously much better if Mono stays above ground. I’m not denying that.

    My point was that if it goes underground, it will happily live on and so will much of the community around it. And I doubt they’ll have much concern about the difference between technical aptitude and freedom. They’ll just want to use Gnome-Do etc…

  9. Rob said,

    June 29, 2009 at 5:26 pm

    Gravatar

    The article actually goes quite a bit further than what is “included by default”.

    And if it’s purely what is included by default, then surely the solution is a lot more simple. You’d be better off:

    a) changing distro
    b) making your own fork of Debian and not including Mono
    c) using Debian, but simply removing what is in their by default.

    We are of course a minority arguing here. The reason for including apps like Tomboy, or Gnome-Do are simply because they are better than a non-Mono equivalent. When a better non-Mono app comes along, Tomboy etc… will not doubt get dropped.

    This decision is based on what the majority of users would want, and is done so, so that people adopt and use that distro.

    You’re forgetting that Linux is about choice. Choice to develop an app in whatever language you want. Choice to pick whatever distro you like. Choice to add/remove the things you do and don’t like.

    Saying, we discourage people to use Mono, and don’t want it included by default just means you should be making your own distro.

    Roy Schestowitz Reply:

    I wasn’t suggesting not to code in any language of choice. Maybe someone else suggested this.

    latex Reply:

    No you would just rather spead FUD about it, and im sure I could find quotes from you that are very anti-mono, and you do suggest people dont use it. and promote ways to remove it,

    so you can try to lie to some, and mabey they will even believe you, but again anyone that knows you will know different.

    Just as you yourself really know. but i guess your “in” so far now that backing out would be impossible.

    But good luck in trying to get any tech industry credability in your lifetime. You will forever be that guy who hates Novell for no reason anyone can really work out.

    If I was hiring someone, and i googled your name there would be NO WAY on earth you would get a job with me. .

    But I think getting a job is not high on your list of things you want to do.

    Being a permanent student and a leach on the system does not win you any friends either.

    But continue to get Linux programmers not to use C# after all its a programming language that forces type-safe and secure and reliable programming. Certainly something that FOSS would not like to see. IE, software quality and software reuse.

    Its in FOSS’s interest to create second rate code full of errors and “bugs” this ensures sustained “service halo” support services for your $$ revinue. As you have to give your software away for free, as no one is willing to pay for it.

    But keep forcing mono out, all the vast majority of coders will learn it, and use it, they will get the IT jobs and the Linux crowd will be stuck deep in the 1970′s.

    “Linux the OS for historians”.

    Roy Schestowitz Reply:

    Stop nymshifting, “darryl”. I can see who you are and you were banned from Linux sites.

  10. eet said,

    July 1, 2009 at 10:23 am

    Gravatar

    Ow, ow – Roy emabrassing himself… Roy, I hope you don’t consider your blog ‘a Linux website’. It’s a paranoid hatefest, that’s what it is.

DecorWhat Else is New


  1. Links 25/05/2022: Librem Tries Another Approach

    Links for the day



  2. IRC Proceedings: Tuesday, May 24, 2022

    IRC logs for Tuesday, May 24, 2022



  3. Links 24/05/2022: nginx-1.22.0 and WordPress 6.0

    Links for the day



  4. [Meme] Divine Protection

    You won’t find Monopoly Tony (António Campinos) wearing a mask at the EPO because the rules of the Office do not apply to him



  5. António Campinos and the Alicante Clique (EPO Management, Appointed Based on Nepotism Despite Lack of Qualifications) Nowadays Exploiting Kids for PR Charades

    The sick old habit of exploiting kids for Public Relations (PR) and marketing purposes is all too common at the EPO (they’re constantly exploiting “the children” to associate criticism of the EPO with demeaning the young and innocent), but the management — which enjoys nepotism and immunity rather than relevant skills — carries on today and it’s being called “inaugural”



  6. [Meme] Snake on a Plane

    The EPO‘s President ‘Monopoly Tony’ (António Campinos), whom you never see wearing a mask (none of the photo ops; he does not even socially distance himself from peers, he wears sneakers instead of masks) during the height of a pandemic, is the "f***ing president"; don’t tell him to wear one…



  7. Microsoft GitHub Exposé — Part XX — Entering Phase II

    We're about to resume the long-running series about the sick clique which ran GitHub until the assault on women became too much of a liability (among other wrongdoings and PR blunders)



  8. Links 24/05/2022: Fedora 37 Test Days and Tor Browser 11.0.13

    Links for the day



  9. Microsoft Vidal, as USPTO Director, Already Plays 'Political Cards' to Disguise and Deflect Away From the Corporate Agenda

    Microsoft Vidal, another corporate pawn in charge of the world’s most dangerous patent system, is using soft-spoken defle



  10. Links 24/05/2022: WAL-G 2.0

    Links for the day



  11. IRC Proceedings: Monday, May 23, 2022

    IRC logs for Monday, May 23, 2022



  12. Unethical Advertising, Published as So-called 'Articles', in CNX Software

    As we noted earlier this year, the CNX team is looking for money in the wrong places



  13. Links 23/05/2022: Broadcom to Buy VMware?

    Links for the day



  14. LibreOffice Conference 2022, As Before, Puts the Keynotes on Sale (the Rich Buy Influence, the Price Doubles)

    Discrimination against the community; talks and mentions are based on money, not merit ($2000 has become $4000 in just one year)



  15. Links 23/05/2022: Kdenlive 22.04.1 and New Alpine Linux Released

    Links for the day



  16. António Campinos Promotes Software Patents Using Buzzwords and Sketchy Loopholes With Dubious Legal Basis

    ‘Monopoly Tony’ (António Campinos) is shamelessly manipulating EPO processes at both ends (sender and receiver) to facilitate the illegal granting of invalid European software patents; we’re meant to think this former EU official and imposter (banker) is some guru in the sciences because he reads a lousy speech crafted for him with lots of meaningless buzzwords peppered all over it (he’s not good at reading it, either)



  17. [Meme] Jorgotta Be Kidding Us, Campinos!

    Monopoly Tony (António Campinos) runs the EPO by attacking the very legal basis of the EPO’s existence



  18. Unified Patent Court (UPC) Relies Too Much on Lies and Mischief Without Any Basis in Law

    Today’s video runs through the typical (weekly) lies from Team UPC — lies that are very easy to debunk; Team UPC not only drafted the thing but also looks to profit from it while misleading politicians and bribing publishers to spread intentionally misleading statements (lies)



  19. IRC Proceedings: Sunday, May 22, 2022

    IRC logs for Sunday, May 22, 2022



  20. Links 23/05/2022: Fedora 36 Reviewed

    Links for the day



  21. [Meme] It's My Working Party... And I'll Cry If I Want to!

    EPO President António Campinos is still not being held accountable for his Code of Conduct violations



  22. Links 22/05/2022: The 5.18 Kernel is Out

    Links for the day



  23. Gemini is Bigger Than Most People Care to Realise

    Geminispace has gotten to the point where it's too computationally expensive (or outright pricey) to study, let alone keep abreast of, Gemini capsules or the domain space as a whole



  24. Links 22/05/2022: Rock64 and Peppermint OS Release

    Links for the day



  25. [Meme] UPC is Always Next Year (and Next Year It'll Surely be the Year After That)

    The UPC will come “next year”, just like every year (since almost a decade ago) just because the lunatic promises so and crushes the law, quite frankly as usual, cusioned and protected by the UPC lobby



  26. UPC: Turning Patent Lawyers Into Liars and the Media Into Their Money-Grabbing Megaphone (Platform for Fake News)

    The above 26 screenshots (with necessary annotation added) hopefully illuminate the degree of deceit, manipulation, bribery and distortion of public discourse (fake news and advocacy of patently unlawful activities)



  27. Number of Working/Online Gemini Capsules, Known to Totally Legit Gemini Search (TLGS) and to Lupa, Exceeds 2,500

    Assuming that Lupa reduced its crawling capacity (this graph seems to confirm this), we’ve decided to aggregate data from 3 sources and assess the size of Geminispace; Lupa says it can see 1,947 active capsules, but there are many more it has not kept track of



  28. [Meme] Monopoly Tony

    The gentlest, kindest president the EPO ever had



  29. It Took Campinos Three or More Years to Undo Illegal Battistelli Actions on Boards of Appeal and Strike Regulations (Only After Losing at ILO-AT!), But He Does Not Mention That

    Let’s all remember that as the EPO‘s so-called ‘President’ António Campinos (Monopoly Tony) vigorously defended completely unlawful actions of Benoît Battistelli until courts compelled him to stop doing that (Strike Regulations); notice how, in the video above — a portion of this full clip from several months ago — he did not bother mentioning that for 3.5 years that he had “led” the Office the Boards of Appeal were in exile, in direct violation of the EPC, yet nobody is being held accountable for it



  30. IRC Proceedings: Saturday, May 21, 2022

    IRC logs for Saturday, May 21, 2022


RSS 64x64RSS Feed: subscribe to the RSS feed for regular updates

Home iconSite Wiki: You can improve this site by helping the extension of the site's content

Home iconSite Home: Background about the site and some key features in the front page

Chat iconIRC Channel: Come and chat with us in real time

Recent Posts