Vive la différence

There seems to be a remarkable number of ways for people to define “Free Software” to themselves.

Richard Stallman has four freedoms.

Debian has ten guidelines.

The OSI has ten guidelines too (but they’re different).

These are all fairly detailed, and to someone who doesn’t understand the idea, take a while to explain. There are subtleties and fine-grained issues which are important in a dictionary definition, but are unhelpful in a single headline item. So, here’s my Free Software definition, the big difference between it and proprietary apps – and it’s only one point long.

Consider the average computer user. They don’t really “like” their Windows experience, and Office does funny things to them at least weekly, but that’s just the way things are, right? Well, yes, and that’s the real value Free Software can offer:

When Free Software sucks, you can actually do something about it.

Windows is crap? Tough. Skype is crap? Tough. CoPilot Central 2.0 for Windows is worthless and crashes on startup? Tough. NVIDIA drivers getting you down? Tough. Not happy about the default wallpaper in Debian? Well there, my friend, you can do something about it! Everything else is just window dressing. Important? Sure. There’s license contamination and copyright assignment and blah blah blah…important, but boring. The simple, headline point to explain what Free Software is, and why you contribute to it, can be summed up in one simple sentence.

Imagine for a moment how much better software would be if every piece of impotent rage directed towards something proprietary could instead have something done about it… Every crash in Windows, every random X-server lockup courtesy of FGLRX, all of it comes down to what we can do. Hammer that core point home as hard as you can – you can always save explaining the GPL for another day. As a frustrated Windows user, consider how empowering the mere concept of being able to do something about your woes is. Just the ability to report bugs is novel for some folks wedded to “take what we give you and enjoy it” proprietary software.

36 Responses to “Vive la différence”

  1. You have a fine point there.

    Yet consider this:

    Most people whom I have explained Free Software with the simple fact, that you can do something about the problem have always retorted with: “So what, I can’t program anyhow, so it doesn’t help me.”

    So that helps for some tech savvy guy, but not your average John Doe
    cheers
    Robert

  2. @Robert von Burg, I’m not sure what the solution is to the false belief that only programmers can be contributors – even coherent bug reports are valuable, yet many don’t bother. And quality artists are our most precious resource IMHO. Any ideas?

  3. @directhex, A better effort by projects? Instead of aiming people directly to the version control checkout point, maybe a How to contribute if I am an (a) developer / hacker (b) artist (c) writer, … but that is really on a per-project basis and I don’t know if I have ever seen that in practice.

    I also think we [hackers] underestimate how much understanding/knowledge is actually required to file a “coherent bug report”. Having helped a few users do just that I’ve realized that the entire process is WAY beyond how most users think about their applications.

  4. Ditto. It is like the fact that a poor person has the legal right to travel between states, or protest, or whatever but without resources the right is ineffectual (and “smart” governments, corporations, etc understand that very well).

    I think this may be a reasonable quick definition of Open Source, but it is a bad pitch since an extremely small percentage of the computer using population has the skill set required to make significant contributions and most lack the resources [time!] to commit to acquiring those skills. As a pitch I think openness as a protection of their investment [value of their data, etc…] is a better approach. But then lots of people are putting their lives [and livelihood?] in the hands of GMail, Google Docks, Facebook, and Flicker without much hesitation, so …

  5. @Robert von Burg,
    When I explained this to a cousin, I said “and if you can’t program, hire the kid down the street that’s good with computers to add the feature if whoever made the program is unwilling or MIA.” She got it.

  6. Well said!

  7. Robert is completely right. But it gets worse:

    When I tried to contribute an improvement to pidgin, I was ignored.

    I’ve had similar experiences submitting bugs. Sometimes the developers care (like in the case of Ubuntu One), but often the report is triaged for a future version and that’s the last I hear of it.

    Open source projects are only open if the dev team is willing to accept external input.

  8. @Erigami, In defense of project maintainers, but not Pidgin specifically – I don’t know anything about Pidgin, and someone who has been accused of this:
    (a) New submitters do need to do a bit of lobbying to get onto the radar of busy people. Pests are hard to ignore – BE ONE! We really don’t mind, honestly. It is only after I see some continuum of traffic from someone that I start to take them seriously – and I very much doubt I am alone in that regard. What choice do we have? People randomly appear and bitch/praise/speechify and then disappear forever ALL THE TIME! A patch is added to bugzilla or posted to a list out of the clear blue sky, often the submitter doesn’t reply to inquiries or comments. I have one such experience where the non-responder was later bitching on a forum about how unresponsive the project was – were my inquiries SPAM filtered? Or was the guy just a deuche?

    Aside: Maybe people who use crazy anti-SPAM techniques, thus breaking the entire intent and purpose of e-mail, are just all deuches? A possibly I am open to.

    (b) A project has to pick a direction as well as near term goals. Limited resources [often very limited] have to be targeted at those goals. A patch not in-line with those goals will probably get ignored [unless the submitted is a pest about it]. Someone it may be a perfectly good patch but just not reflect where the project is going, that is just life in a collaborative solution.

  9. @Erigami, Pidgin is a pretty toxic project and has for a while. I’m disappointed that Carrier didn’t take hold; they were a nice counterpoint to Pidgin’s “we know what’s best for you” behavior.

  10. Side comment about the OSI and Debian guidelines: the OSI ones look like near word-for-word copies of the debian ones. They just add some explanations and a real 10th guideline.

    And I can’t agree more on the first comment: John Doe doesn’t care being able to modify the software. I know how important it is and it is great for a big company which can pay someone/another company to do the changes, but it is just not so easy to sell to “normal people”.

    Bug reports and artists are great as well but only large projects (and some exceptions) seem to have the infrastructure in place to take proper advantage of such contributions (no offense to anyone intended!).

  11. @Aurelien, there’s another problem with bug reports: most users don’t think they can make them and most can’t make them well enough to be taken seriously by most developers, who in a lot of projects (obviously not all) are…well…jackasses to bug submitters.

    Other users, myself included in a lot of cases, just don’t have the interest. I’ve had bug reports in to Mozilla that were ignored or, even better, were called “not a bug” despite functionality being broken. I’ve had other bug reports in other projects outright languish because nobody bothers to look into them. It is not my job to bug people to follow up on bugs in their software; it is much cheaper, and therefore, for me, smarter, to go buy a proprietary piece of software, where it exists, if it does not have the same bugs.

    Expecting your users to treat it as an ideology is where RMS’s not-actually-free software goes off the rails, and developers who make the same mistake and assume people will help them out “because it’s free” are kind of not paying much attention to how people actually are.

  12. Bullshit, the lack of source code hasn’t prevented generations of crackers from removing the copy protection and other undesirable features from proprietary software. Also, the demoscene stuff that is written with hex editors.

    For most people the freedoms given by FLOSS are completely useless due to their lack of programming experience. Frankly hardly any of them know such a thing is possible, desire it or would desire it if they knew it was possible. And then there are the projects that simply don’t accept external patches of any kind.

  13. The “am not a programmer” is a bullshit argument, because FLOSS is commercially friendly, they can pay someone to _do something about it_ like if they paid a technician to fix their car. However with proprietary this is not always possible.

    The real problem that concerns me a lot is the “projects that simply don’t accept external patches of any kind”. Sure you can fork, but forks are not so visible as the main project, and forks all over the place are the real reason why the excess of diversity makes free software not take off brutally compared to proprietary software (we need more cooperation).

  14. @Andrés G. Aragoneses,
    “projects that simply don’t accept external patches of any kind”

    I just don’t believe this is widespread. Many ‘contributors’ do not make themselves easy to work with. A fire-and-forget contribution strategy will fail.

    “we need more cooperation”

    With this I agree; I’m personally really happy to see so many projects supporting GroupDAV (for example) as that is something that heralds from my corner of the universe.

    But a real problem I see is the no-project-has-exactly-feature-X-so-I-build-a-whole-new-solution-from-scratch rather than take the time to work with anyone else. For example, how may CMS systems or MP3 players does the work need? I don’t believe this is because feature-X wouldn’t be accepted by any existing project but because of the mentality of a great many hackers / developers.

  15. @Andrés G. Aragoneses:

    The “am not a programmer” is a bullshit argument, because FLOSS is commercially friendly, they can pay someone to _do something about it_ like if they paid a technician to fix their car. However with proprietary this is not always possible.

    Is it even possible for open source software? Sure, you can pay someone to write some code. But since you’re not a programmer, you don’t know if it’s good code, and worth the money. You don’t know if bugs are because of the new code, or because of the project’s other code, and your leverage to get them fixed by your contractor is limited. (It is no surprise to anyone that there are contractors out there who will lie and shift blame wherever they can, right?)

    How are you going to maintain it? It’s not like a reasonably-feature-complete piece of proprietary software; you may be stuck using a piece of software still under regular development. Do you only pay the contractor if they get their patch into trunk? What if they don’t? Are you going to maintain your own branch of the code without actually knowing how to program? What if it does get into trunk and breaks down the line–are you going to go pay to get it fixed again, or hope somebody else does it?

    Open source software is not as friendly to contract programming as you think it is, and is downright hostile to non-programmers a lot of the time.

  16. @Ed Ropple, you can get all these similar problems with any kind of contractor work. How many times have you been pissed off by how the mechanics repaired your car? In the end it’s just confidence what counts. People would find developers in which they trust.

  17. My story: My favourite TV app (me-tv) stopped supporting DVB-S at version 0.7…

    So I contacted the developer and he was willing to help me get DVB-S support back in. Voila: Version 0.8 reintroduced DVB-S, and.. my name was in the release notes! 😉

    Thanks, Free Software, and thanks, Michael.

  18. I think your single headline item misses one crucial aspect. It is not very useful to get the source with a proprietary program if you can’t share your changes with others (like with Microsoft Reference Source License). I suggest the following modified headline item:

    When Free Software sucks, we can actually do something about it together.

    PS: This way all the programmers can cooperate, and this way even non-programmers enjoy Free Software by using the result of all the programmers.

  19. While I think it’s difficult, I applaud the attempt to make a free software explanation for normal humans. I feel though that the debate is getting lost in the swamp of “can normal people code?” because of the word “fix”. Fix implies changing something that can *objectively* called broken. No one can *objectively* say “The artwork is broken” or “the usability is broken” or even “the documentation is broken.” Onky code can really be called broken, and thus be “fixed”.

    Here’s my suggestion for a definition:
    “Software that everyone is free to help improve whatever they want, and everyone gets to share the benefits together.”

    A couple of important points here:
    – Improve not fix (see above)
    – *Whatever* part you want to improve (art / usability / whatever) is open
    – You get the benefits of *others* improvements (yes, even if you don’t code!)
    – It’s shared
    – This mentions the other people that make up the all important *community* (no, you *don’t* need to fix *everything* all by yourself!)
    – Short reference to freedom in a way most people understand without confusing it with zero cost (“you’re free to…”)

    So what’s everyone else think?

  20. Arguably this sense of “you can do something about it” is a false illusion of power granted to users.

    Who then A) ignore it since they have other pressing concerns in their lives or B) try to become empowered and are then disappointed when they encounter something that they didn’t create, can barely influence, and probably still don’t understand.

    Yes, it is important to the interaction of user and computer, for us to close the gap between developers and user feedback for the betterment of the software.

    But that actually has nothing to do with open source. “Improvement” is not an exclusive quality of free software.

    As for the “freedom” part: if a user is allowed to do what he wants, he doesn’t care whether it’s an unretractable right or just some proprietary “privilege” that could be yanked at any time. It doesn’t bother them. They just see if computers can do what they want, and if so, yay. Admittedly I feel the same way despite using Linux. It doesn’t bother me whether I’m DMCA-circumventing or not: I just want to watch my darn DVDs.

    Theoretically from a capitalist viewpoint, the market must cater at least in part to what users really need (not necessarily want). If the world didn’t -need- Microsoft, or some degree of interoperability, these things wouldn’t be here and people wouldn’t buy Windows.

    All of this stuff about “rights” and “free exchange of information” is icing on the cake, and is not a substitute for actual good software, which can in fact be made by proprietary companies with a ton of money and talent.

    Proprietary software: crack. Users are hooked on it. It’s bad. But now we’re all dependent on it.
    Free software: crack for your intellectual conscience!

    Crack is still crack.

  21. I either must be dealing with some really really smart users or there is some disconnect between tech folks in FOSS and users considering how users are marginalized (not thought smart enough to understand FOSS concepts).

    I’ve yet to have even ONE instance of a user, management, or other “lay” person not understanding FOSS and its benefits to them, when I tell them about it. Like some posts here, they recognize that *they* might not be changing code, but almost to a person they’ve asked “so I could hire someone to change a program for me?”

    Some other points that users have noticed when I explain FOSS is that it’s not just the program that is free, but their data. No more lock in.

    Naturally once they understand foss (which as I’ve stated has been after just a few sentences from me), the next thing they typically want to know is whether programs they need are FOSS and whether they are any good. I answer truthfully. Just like proprietary software some are really excellent, some are good, some are ok, some are mediocre, some are utter shite. How often, I’ll ask, have you paid for software only to realize you are out the money because it doesn’t perform as expected? At least with FOSS they can test before they commit.

    A key here though is honesty. For all the complaints about Stallman, he is tap on point with the POINT of FOSS. Other folks have indicated that “millions of eyees are looking at FOSS.” That might be true for certain projects (or at least thousands of eyes) such as the Linux kernel. But in most cases you’re dealing with a couple pairs of eyes only. And then there are the somewhere in between projects with a team, however small, of developers. So presenting that as one of the main benefits of FOSS will lead to failures when users realize it’s not true.

    Yes projects could make it easier for users. Start by not continually marginalizing them and underestimating their ability to understand foss. Believe me, they are smarter than most of yens are giving them credit for being.

  22. > When Free Software sucks, you can actually do something about it.

    Yes, but that only works for computer-literate people who actually know how to write or modify code. In other words, for 99.9% of all computer users that freedom has almost no relevance, because they simply cannot use it because they do not have the required technical knowledge. Let’s face the reality: Most users actually only care for software that is free as in beer. Only geeks care for the free as in speech part of free software – and only geeks make a fuzz about it.

  23. @Winfried Maus, A self-perpetuating issue.

    NON-PROGRAMMERS ARE HELPFUL. Why is this so damned complicated to understand? Consider the value to the OOo developers of a simple document which demonstrates a problem – do you need to be a programmer to say “this document is fine in MS Office but sucks in OOo”? NO!

  24. How about this? You can tell windows users that they can install mono on their machines and get back that wonderful MS experience!

    I don’t hate mono because it’s part of some paranoid scheme to undermine linux – that’s just nuts. I hate mono because it bring with it all the same stupid errors and bugs and conflicts I grew to hate when I used Windows.

    I used to LOVE programming in javascript… er, Jscript. I was really god with it; I had whole desktop apps written in jscript; I had a media player and even a front end for a video editor (I contributed a good bit of code to avisynth and longed for a decent front end for it). I knew how to write dlls in jscript (most folks didnt even realize you could do that back in 1999) and had all the docs right there in a most prominent spot on my desktop.

    Then, I got an actual job doing it and when tried making my cool desktop toys work on other machines, I stumbled into a support nightmare. They wouldn’t work on xp cuz xp had security lockdowns; they wouldn’t work on win2k (where I wrote them) unless this exact set up was installed; they would never work on win98 (which many were still using) and would probably never work on xp. Every time ms updated its jscript engine and we needed to upgrade because the database devveloper needed some new functionality, I ended up having to rewrite chunks of my code too.

    What a pain in the ass. After that job I continued in ms-land a little while longer, but after gettign code red and having to spend three fucking days trying to get all my dev tools back to functionality I said screw this and installed linux FOR GOOD. No more dual boots, cuz dual boots make it too easy to not use linux, which ends up just wasting drive space. It was a tough ten weeks but after a few months I felt comfortable enough to be sure I was never going back.

    So now, every now and then, I get this wild hair and decide hey this app looks interesting so let’s try mono. The first time was back when beagle was in early development – man was that a nightmare. So now the ubuntu crew have beagle sorta working, and tomboy and banshee… yeah, ok. They SORTA work. Just don’t ever rip out mono and think you’re gonna get it reinstalled. You can apt-get remove and apt-get install and shit will be broken. What’s broken? Dunno. And even if you never do this, good luck trying to get some other app working. Oh, this app is looking for mono 1.1 and you have 1.4 installed. It’s using function that was deprecated or just “worked different” on 1.1, so now you have to install that. Yes, it was made that way – so what’s the problem? So what if you have five different versions of mono installed? Don’t want the stupid mserr messages? Just install every version! Then MAYBE you can get that sewing machine app working!

    Screw it. I’ll just install windows in a vm and run the fucking windows app there… it’s easier, and at least the MesS feels “contained.”

  25. @poptones, There’s no point actually explaining to you why you’re wrong, is there?

    Didn’t think so.

    Let’s settle for a simple childish “NO U” instead, it’s just as productive.

  26. Oh yeah, that’s mature.

    So much for an adult conversation. Why don’t you go sit at the little people table?

  27. @poptones, the little people table in my own home? Hm, how about “no”?

    Just because you feel affronted that I’m actually responding to your unmitigated bollocks, doesn’t mean I care what you think. Frankly, it’s because I’m very, very tired of carbon-copy bullshit being posted by ill-infomed twat after ill-informed twat. If you want to be treated at an adult, perhaps it’d help if your own screeds weren’t argumentative shit with a firm foundation in crap?

    Yet again, I find myself referring back to my favourite quote: “Ridicule is he only weapon which can be used against unintelligible propositions. Ideas must be distinct before reason can act upon them…”

  28. Wonderful. What part of my post above was carbon copied? I notice that when someone comes to you with an argument based on fact all you seem able to do is deliver a hearty “sez you” and call me names. You talk a lot of talk about having an “adult conversation” but all it seems you want to deliver here is a bunch of self aggrandizing blathering about how you know more than all those “fanbois” who don’t like mono. When someone steps up and says I don’t like mono because it sucks as a development tool mr adult seems to shrink away like Tom Hanks at the end of Big. Whatsa matter baby, can’t fill them britches anymore?

    Sorry, my bad. I wasn’t aware when I stepped in here I was taking a seat at the kiddy table. I’ll depart now and leave you to your kiddie court…

  29. @poptones, Okay then “poptones”, since you seem so in need of validation, here you go:

    How about this? You can tell windows users that they can install mono on their machines and get back that wonderful MS experience!

    How about Windows users run, I dunno, Windows? And Mono has nothing to do with “that wonderful MS experience”

    I don’t hate mono because it’s part of some paranoid scheme to undermine linux – that’s just nuts. I hate mono because it bring with it all the same stupid errors and bugs and conflicts I grew to hate when I used Windows.

    I used to LOVE programming in javascript… er, Jscript. I was really god with it; I had whole desktop apps written in jscript; I had a media player and even a front end for a video editor (I contributed a good bit of code to avisynth and longed for a decent front end for it). I knew how to write dlls in jscript (most folks didnt even realize you could do that back in 1999) and had all the docs right there in a most prominent spot on my desktop.

    Then, I got an actual job doing it and when tried making my cool desktop toys work on other machines, I stumbled into a support nightmare. They wouldn’t work on xp cuz xp had security lockdowns; they wouldn’t work on win2k (where I wrote them) unless this exact set up was installed; they would never work on win98 (which many were still using) and would probably never work on xp. Every time ms updated its jscript engine and we needed to upgrade because the database devveloper needed some new functionality, I ended up having to rewrite chunks of my code too.

    What a pain in the ass. After that job I continued in ms-land a little while longer, but after gettign code red and having to spend three fucking days trying to get all my dev tools back to functionality I said screw this and installed linux FOR GOOD. No more dual boots, cuz dual boots make it too easy to not use linux, which ends up just wasting drive space. It was a tough ten weeks but after a few months I felt comfortable enough to be sure I was never going back.

    So, potted version, you picked an extremely shitty language to write desktop apps for a shitty OS, and it didn’t work for you. So far, so mundane.

    So now, every now and then, I get this wild hair and decide hey this app looks interesting so let’s try mono. The first time was back when beagle was in early development – man was that a nightmare. So now the ubuntu crew have beagle sorta working, and tomboy and banshee… yeah, ok.

    Beagle’s problems are almost universally caused by the Unmanaged (i.e. C-based) library, not the Mono-based code.

    They SORTA work. Just don’t ever rip out mono and think you’re gonna get it reinstalled. You can apt-get remove and apt-get install and shit will be broken. What’s broken? Dunno. And even if you never do this, good luck trying to get some other app working.

    Utter unmitigated bullshit. This is precisely what a packager takes care of – and if it’s not done effectively, ANY language will do the same thing. Haskell, Java, whatever.

    Oh, this app is looking for mono 1.1 and you have 1.4 installed. It’s using function that was deprecated or just “worked different” on 1.1, so now you have to install that. Yes, it was made that way – so what’s the problem? So what if you have five different versions of mono installed? Don’t want the stupid mserr messages? Just install every version! Then MAYBE you can get that sewing machine app working!

    You *CAN’T* have multiple versions of Mono installed outside the shitty realm of /opt (which always goes wrong due to user stupidity, I might add), there was never a 1.4, and your made-up anecdote pretty obviously needs some work.

    Screw it. I’ll just install windows in a vm and run the fucking windows app there… it’s easier, and at least the MesS feels “contained.”

    Except they’re not Windows apps, and this line is only trotted out by people with a bizarre Windows fetish.

  30. How about Windows users run, I dunno, Windows? And Mono has nothing to do with “that wonderful MS experience”

    I meant linux users.. new linux users. portential linux users. You know, the “vivre la diference?” The topic you introduced? For those who are skeptical about linux, mono presents a terrific way to retain some of that microsoft experience. They even get dlls and exe files out of the deal.

    ” They SORTA work. Just don’t ever rip out mono and think you’re gonna get it reinstalled. You can apt-get remove and apt-get install and shit will be broken. What’s broken? Dunno. And even if you never do this, good luck trying to get some other app working.

    Utter unmitigated bullshit. This is precisely what a packager takes care of – and if it’s not done effectively, ANY language will do the same thing. Haskell, Java, whatever.”

    No bullshit to it – except the bullshit of screwing with mono apps that don’t work well or often don’t even install. Lots of bullshit when it comes to trying to solve the problems when something dont install properly. Maybe it’s just a problem with most mono apps I have tried being made by careless idiots who cannot properly document – oh well. If the majority of mono apps one finds are like this, that is also a problem with the language. Maybe there’s something to be said for the language providing a barrier to entry – maybe language snobs actually have a point.

    You *CAN’T* have multiple versions of Mono installed outside the shitty realm of /opt (which always goes wrong due to user stupidity, I might add), there was never a 1.4, and your made-up anecdote pretty obviously needs some work.

    http://blog.carrion.ws/2009/07/01/multiple-parallel-mono-environments/

    I don’t care about numbers. The anecdote isn’t “made up” it’s a recent experience in fact. So pray tell, why would mono developers need to constantly go back and forth through multiple versions?

    .NET was “invented” to correct, in part, that problem of outdated libraries. This isn’t opinion it’s a statement of fact as told by MS reps. It would allow libs to be updated while you still keep the old libs around and (ideally) they all work together. Except they don’t. And there’s no reason for it if the code is being properly supported in the first place. Is mono not just an open .net? What is monos reason for existing if not to simply keep up with those joneses?

    Screw it. I’ll just install windows in a vm and run the fucking windows app there… it’s easier, and at least the MesS feels “contained.”

    Except they’re not Windows apps, and this line is only trotted out by people with a bizarre Windows fetish.

    How do you know what are and are not windows apps? You ain’ paying attention – I specifically mentioned a windows app – a sewing machine app, I believe. Written in .NET.. but it dont work in mono. So it ain’t portable.. except the dev says it is. So it’s a Windows app, no?

    I have no fetish for windows. I hate windows. I really don’t have a problem with windows apps aside from they tend to be ugly and clunky feeling cuz they look like windows. But I am completely mercenary about it – I got no problem with wine or running things in a vm; I do it all the time.

    I simply hate mono. I have seen no unique and high quality apps using it. It seems to create more problems than it solves, and it has no reason for being aside from facilitating the intermingling of two very different gene pools of programmers.

    I think the people who insist mono is part of some giant conspiracy to undermine the entire linux desktop are paranoid fools (worse case is they are right about miguel so… oops! gnome is dead, long live kde) I just hate mono because of a number of technical problems. There’s many things I hate about python as well, but at least there are enough unique high quality apps to give it value. Maybe mono will get there one day, but I doubt it will be any time soon. It’s had nearly a decade – but how many great python apps were there in 2000?

  31. @poptones, Try <blockquote>. It makes things more readable.

    How about Windows users run, I dunno, Windows? And Mono has nothing to do with “that wonderful MS experience”

    I meant linux users.. new linux users. portential linux users. You know, the “vivre la diference?” The topic you introduced? For those who are skeptical about linux, mono presents a terrific way to retain some of that microsoft experience. They even get dlls and exe files out of the deal.

    Demagogic bullshit. There’s really no other way to summarise this, sorry. You have the gall to complain about childishness when you’re arguing OMG LOLZORS TEH FILE STENSIONS SI SMELLY LIKE POO!?

    Furthermore, if you had actually read what I wrote beyond the title, you’d have noticed that my blog post has absolutely nothing to do with what you think it does

    Maybe it’s just a problem with most mono apps I have tried being made by careless idiots who cannot properly document – oh well. If the majority of mono apps one finds are like this, that is also a problem with the language.

    You’ve never found a C/C++/Java/Haskell/LOLCODE/Python/Ruby/PHP app which is badly documented or doesn’t “just work”? What a curious range of apps you’ve tried out.

    I don’t care about numbers. The anecdote isn’t “made up” it’s a recent experience in fact. So pray tell, why would mono developers need to constantly go back and forth through multiple versions?

    If you’ve never had an app which compiles with GCC3 but not GCC4, or Python 2.5 but not Python 2.6, then you must be very new to this Linux malarkey. Ditto if you’ve never wanted to install something newer than is found in the distro for one reason or another (e.g. to try out some new feature)

    .NET was “invented” to correct, in part, that problem of outdated libraries. This isn’t opinion it’s a statement of fact as told by MS reps. It would allow libs to be updated while you still keep the old libs around and (ideally) they all work together. Except they don’t. And there’s no reason for it if the code is being properly supported in the first place. Is mono not just an open .net? What is monos reason for existing if not to simply keep up with those joneses?

    Having multiple versions of corlib side by side is fine. It’s always been fine. However, Mono is not Microsoft.NET, Ubuntu is not Windows, and I have no particular interest in keeping libraries unneeded by the majority of people (i.e. Ubuntu users) lying around on their systems for no good reason. If all the apps are 2.0-only, why install corlib 1.1? And if you have a 1.1 app to run (an UNPACKAGED app which does not contain and therefore automatically deal with dependencies), why not install the libraries it needs rather than pissing and moaning? Do you behave the same way when you try to run a C app you download & don’t have all the libs already installed, rather than checking with ldd & installing what’s missing?

    How do you know what are and are not windows apps? You ain’ paying attention – I specifically mentioned a windows app – a sewing machine app, I believe. Written in .NET.. but it dont work in mono. So it ain’t portable.. except the dev says it is. So it’s a Windows app, no?

    You were bitching about a lack of “high-quality Mono apps” – non-portable (despite misguided developers’ protestations) apps for Microsoft.NET are not Mono apps. They MIGHT run on MOno, especially if the developer fixes whatever buggy non-portable assumptions they’re making, but it has NEVER been the primary goal of Mono, and certainly isn’t my own goal with Mono. If Windows compatibility is your own goal, why not contribute fixes to Windows-related nonsense?

  32. From the honcho at Novell…

    “Mono 2.0 is a milestone in the project because, as Novell product manager Joseph Hill explains, “We’re really signalling that we’ve completed compatibility with .Net 2.0’s API.””

    Mmmmkay… so mono doesn’t exist as a “portable” development platform. It was never meant to. You don’t care if it does… except.. it was. It is. And what you care about is meaningless unless your name is Miguel or Marc or something rich and/or connected like that.

    “However, as Hill points out, Mono has already done considerable work on compatibility with .Net 3.0 and 3.5, so Mono 2.0 is “a little more like 3.5 minus several of the big libraries that were added to 3.0 that we’re not seeing a lot of uptake on — for example, the Windows Communication Foundation (WCF) and the Windows Presentation Foundation.””

    Sure sounds to me like mono is all about supporting .net on linux. Think me as dense as you like but I didn’t get into honors English in college for nothing. How’s your comprehension skills?

    “Even more importantly, for de Icaza, the release is a moment to reflect that the project has “come to the point where people consider Mono an alternative implementation” of .Net. For example, he cites the example of the compiler for F#, whose developers “not only test on Mono before shipping, but also provide installation scripts for Linux. Now we’re finally regarded as a serious project, and not just a toy project.””

    In those paragraphs they’ve mentioned .net and Microsoft more than mono. Yes, the object is mono… but the verb is “compatible” and the secondary object is most definitely Microsoft.

    And yes, I’ve had plenty of python apps that require this version not that, or require some funky library… but.. whoah, wasn’t the whole point of .net (and mono) to fix most of that? It really doesn’t matter, because it doesn’t fix any of it. And that’s the point: it has no reason for being. It’s completely redundant.. on so many levels.

  33. @poptones, Try reading http://www.mono-project.com/Mailpost:longreply for something which actually puts Mono in historical context, including detailed explanation of motives.

    Y’know, the *actual* whole point of Mono, not the whole point you’ve decided in your own mind

  34. Ah… you mean something written by someone else who agrees with something you said, right? As opposed to NOT stuff I made up but stuff anyone can find – objective online content quoting mono principals? You know.. the people with the money… Icaza, Novell…

    You really remind me of a Mac user. Do you actually develop mono or develop with mono? Surely you don’t USE mono apps! If so you must have a very small picture and/or music/media collection, because this shit is heinously slow.

  35. @poptones, I mean something written in 2002, very early in the life of the project, by the guy who started it. Subsequently, sure, new uses have been found for it – but Mono was started because C based Evolution was an unmaintainable mess.

    Do. I use Mono? Yes, three packaged apps (Banshee, GNOME Do, MonoDevelop), plus an in-house app I’ve been working on since 2007 which I’m in the process of trying to release under a Free license.

  36. […] Vive la différence. The person responsible for getting Moonlight easier to install for Ubuntu users has a great post […]

Leave a Reply