Why I Hate Proprietary Software

I’ve spent a lot of time writing arguments for why open-source software is a good idea and everyone should do it. On the evidence, I’m pretty good at this. I achieved that goodness through a strategy of making rational, technical, utility-maximization arguments in which I explicitly disclaimed having any normative or moralizing agenda.

While I’m happy with the results I’ve gotten from that strategy, it means there are people in the world who think they can persuade me to give proprietary software a second look by making rational, utility-maximizing arguments of their own. One of my regular commenters wrote this recently: “Eric, you may want to give MSDN, Windows, and their developer tools a second, unprejudiced look; they really are better than what Linux has to offer.”

It’s not going to happen. Ever. And the fact that anyone could say that to me, and believe for a nanosecond they might get any other answer, means that I need to explain something in public: why I hate proprietary software.

More precisely, I hate the proprietary software system of production. Not at the artisan level; I’ve defended the right of programmers to issue work under proprietary licenses because I think that if a programmer wants to write a program and sell it, it’s neither my business nor anyone else’s but his customer’s what the terms of sale are.

No, what I hate is when that system scales up into what left-wingers call soulless corporate machines. Unlike them, I’m OK with soulless corporate machines in general; they’re positively good for you compared to the things governments get up to. It’s the specific things that happen when the management of programming gets separated from the art of programming that I hate.

And yes, the emotionally-loaded word ‘hate’ is the rignt word to use, in contrast to all the cool rational-maximizer reasons I like open source. It’s not a lofty idealistic loathing like Richard Stallman’s; it’s a bitter, gut-clenching personal hatred. I’m not a moralist, and am not arguing that everyone should share my feelings about the matter at peril of being damned. Still, I’m going to put my feelings on the record so that the next time some idiot feeds me a similar line, I can point him at that record.

I’ll start with a deliberately melodramatic simile, then explain it. When you tell me I should give proprietary software a fair technical evaluation because its features are so nice, what you are actually doing is saying “Look at the shine on those manacles!” to someone who remembers feeling like a slave.

From 1979 to 1985, and then briefly in 1988-89, I was a component in the proprietary-software system of production. In that world, the working programmer’s normal experience includes being forced to use broken tools for political reasons, insane specifications, and impossible deadlines. It means living in Dilbert-land, only without the irony. It means sweating blood through the forehead to do sound work only to have it trashed, mangled, or buried by people who couldn’t write a line of code to save their lives.

If you love programming, trying to do work you can be proud of in this situation is heartbreaking. You know you could do better work if they’d just goddamn give you room to breathe. But there’s never time to do it right, and always another brain-dead idea for a feature nobody will ever actually use coming at you from a marketing department who thinks it will look good on the checklist. Long days, long nights and at the end of it all some guy in a suit owns all that work, owns the children of your mind, owns a piece of you.

And you know what? Comparatively, I know I had it good. Truly incompetent or evil bosses abused some of my peers far worse. Mine weren’t a bad lot, as these things go. All of us were ensnared in a system of production that could only rarely rise above shitty code and shitty outcomes because the logic of the system trapped us in dysfunctional roles. I’m not naming companies and people because the dysfunction was, in a horrifying but undeniable way, nobody’s fault.

Some of us, including me, dreamed of completely “free” software environments before the public launch of FSF not for abstract moral reasons or because of some soi-disant social problem, but because the conditions of our craft were intolerable to us. We were suffocating, being ground down into unfeeling cogs taught by repeated pain that we must not care about our art because to care was to lose.

The stupid and the timeservers were lucky. It was the really bright, creative people among my peers that hurt the most. And we were all very young and malleable and eager to please; it took me years after I’d escaped to understand that I had a right to feel angry about how I had been used, and many of my peers never figured that out at all.

Yes, I’ve written a lot of intellectual arguments for open source. And they’re both true and sufficient. But now hear the emotional subtext — what lights the fire beneath me, personally, when I make those arguments. And that is this: nobody, ever again, should have to eat that kind of shit. Never again! If it takes seizing control of the craft of programming back from the suits, that’s what it it takes. If it takes blowing the entire system of production to smithereens…well, then it’s long past time.

I have all the usual reasons open-source fans give for refusing to have anything to do with Microsoft or any other proprietary tools: I don’t trust their reliability, I don’t want to be in a single-vendor jail, I won’t have my data locked in closed file formats, I refuse to write in languages that aren’t cross-platform portable…and so on. Those are rational reasons, and I have rational flexibility on them. On that level, it is possible in principle that I could be persuaded by cool features and a winning cost-benefit ratio. Or even if somebody offered me a sufficiently huge pile of money — enough, say, to finance a space program run from a Bond-supervillain-style fortress on my own Caribbean island.

But it doesn’t matter. Because there’s an emotional place where I have no give, and that is in is my visceral, steaming hatred of the production system that Microsoft exemplifies. I refuse to support it in any way, no matter how shiny the products look to other people. I will have no part of helping it do to the young, malleable, innocent programmers of today and tomorrow what was done to me and my peers.

Because two decades later, my scars still ache.

190 comments

  1. I think most people who end up in the free software/open source world have similar stories to yours, Eric. Although I never got very far into attempting to program for Windows (in retrospect, it seems that Windows actively stymied my efforts), I knew at a gut level that computing did not mean taking whatever Microsoft, Apple, or Adobe decided to give me.

    Unfortunately, one of the possible reasons for Linux and open source not being as accepted as it could be is that in a lot of circles, attacking Microsoft is tantamount to attacking capitalism and free enterprise. Your work, particularly “The Cathedral and the Bazaar” in particular, does a good job of dispelling this myth. People doing what they want with software is a much more accurate vision of freedom than mindlessly accepting standardized, cookie-cutter products.

  2. Wow! Is Eric an amazingly fragile and delicate flower, or what? Aching scars two decades after having a constrained programming environment?

    There are people who pick up trash or dig ditches their whole lives for very little money. It’s a little tough for me to feel Eric’s pain here.

  3. Eric,

    I understand your points. You make some good arguments, especially to someone that is stuck in circumstances similar to what you have been stuck in.

    Rather than disagree with you, I will point out a tangent point that I think you, and others often miss upon, specifically regarding whats happening to Windows these days. Its turning from a product into a concept.

    Let me clarify what I mean. Many years ago, as you know, UNIX was a product of AT&T, a.k.a. THE phone company. It eventually became a concept. It was cloned, forked, improved, etc. We know have this concept of what unix should be. We do have hard tests (posix standads) that can arbitrarily decide if something is or is not UNIX. However, most of us apply an, “I know it when I see it,” test, similar to pornography.

    Windows is beginning to become similar to this. Wine is basically “done.” Mono implemented .NET better than java was reimplemented before Sun began open sourcing it. ReactOS (http://www.reactos.org/) is the only slowpoke amongst the bunch in giving us and entire Windows OS, but if someone can implement the SCM under the Linux kernel, then that would allow most server software to run on Linux. At that point we could have a completely open source Microsoft Free “Windows Stack” that would interop with the “official” Microsoft stack.

  4. Eric, I don’t speak in anger when I disagree with you: my point was not that you had to like the tools of the devil, but that you should know them if you don’t want to repeat mistakes, and if you want to gain new insights. Otherwise, your comments against how dull the authors of UHH were when deciding to vent rather than make a sound criticism sound very, very hollow.

    There’s an anecdote that says that Zhou En-lai was giving an interview and the journalist saw a copy of the New York Times on his desk; and asked him how could he read that filth. The answer was “How could I afford not to?”

    Apocriphal or not, I think it illustrates my point perfectly.

  5. In that world, the working programmer’s normal experience includes being forced to use broken tools for political reasons,

    That never happens in the OSS community. All of our projects always offer cutting-edge features and are never simple wheel-reinvention for political reasons. Prime examples of cutting-edge software are GTK/GNOME, ALSA, AIGLX, Beryl, etc.

  6. Eric,

    since it’s the mode of production that seemed to piss you off, what do you think of the agile software development methodologies such as SCRUM, eXtreme Programming, and the like? In their approach, they try to recapture a lot of the hacker ethos and industrialize it, which seems a good thing to me. What’s your take on this?

  7. > There are people who pick up trash or dig ditches their whole lives for very little money. It’s a little tough for me to feel Eric’s pain here.

    Eric isn’t complaining about the labor. He’s complaining about the conditions imposed by, for lack of a better term. “the man”. “the man” doesn’t have much impact on the work circumstances of ditch diggers or trash haulers.

    More to the point, Eric probably doesn’t object if other people want to change the circumstances in which their work is done (presumably as long as they don’t coerce others into supporting their preferred circumstance).

  8. Maybe that’s the reason why most FOSS is so broken: in free software people works for fun, and nobody forces them to do the hard work. And software engineering, do not kid yourselves, IS hard work most of the time and not fun at all.

    Perhaps that also explains why the truly successful FOSS software project, such as Firefox, are well financed and have a well-defined and working business model. It’s also the software common people want to use, because it works and it’s not hopelessly broken.

    Good luck creating art. The rest of the software world moved to engineering a long time ago.

  9. >since it’s the mode of production that seemed to piss you off, what do you think of the agile software development methodologies such as SCRUM, eXtreme Programming, and the like? In their approach, they try to recapture a lot of the hacker ethos and industrialize it, which seems a good thing to me. What’s your take on this?

    I’m probably not going to surprise you by reporting that, yes, I am a fan of agile approaches. Partly for the reason you cite, and partly because I like the technical results. I think, for example, that test-driven development is a very good thing in any circumstances where you can actually wrap a test jig around the software.

  10. >Eric isn’t complaining about the labor.

    No, I’m not. I believe I work harder, and longer hours now, than I did when I was 25 – because for me the rewards are greater.

    >Eric probably doesn’t object if other people want to change the circumstances in which their work is done (presumably as long as they don’t coerce others into supporting their preferred circumstance).

    Got it in one.

    >Maybe that’s the reason why most FOSS is so broken

    Right, most FOSS is so broken that studies like the Fuzz papers and Coverity’s defect scanning consistently show that open-source programs have lower defect rates than their closed-source analogues. If that’s broken, may I have more please?

    I think I know why some people believe this, though. Closed-source producers are better at hiding and rationalizing their errors. Open source is no worse or messier but the mess takes place under arc lights. That’s actually a good thing, I think.

  11. Right, most FOSS is so broken that studies like the Fuzz papers and Coverity’s defect scanning consistently show that open-source programs have lower defect rates than their closed-source analogues. If that’s broken, may I have more please?

    Remember Kim Vicente’s maxim: “If technology doesn’t work for people, it doesn’t work.” That’s the criterion for brokenness under discussion here.

  12. Thanks for sharing this personal story with us, Eric. I know exactly where you come from because I’ve seen much the same sort of thing myself. But that doesn’t change my perception that for most uses in the home and office, proprietary software is, on the whole, better and the proprietary software ecosystem, as miserable and crushing as it can be, does a better job of meeting end users’ needs.

    Much like Pete Bessman, I wanted so hard to believe that open source was a better way, and yet I see proprietary software beating the pants off open source again and again, and it’s not just a nice feature here and there but basic stuff like halfway decent sound functionality. And the reason is simply because open source is full of people like you and like me, and not enough people like Steve Jobs. And the situation is still in 2008 what it was in 1995 when I first started with Linux: For any creative endeavor outside of computer programming, all of the halfway decent software is proprietary and your best bet for a platform is either Windows or the Mac. These platforms are simply more friendly to users and developers because they’re proprietary and because they’re backed by companies who want to make money off them.

    Yes, Mac and Windows are more friendly to developers. Here I take “developer” to mean “one who is accountable to deliver software to the end user” as contrasted with a hacker, one who programs for the fun of it. The tools, the documentation, the support structure and the community are all geared to enabling developers to deliver user-friendly, well-integrated apps and providing complete functionality for those apps. That simply doesn’t exist in the open source camp except in certain, isolated pockets like, perhaps the Qt ecosystem (remember that Qt is a commercial product and is distributed in GPL and closed-source terms.). Most of the time it’s all cargo-culty: “If Linux had an attractive Windows-like GUI, maybe that’d attract end users.” “If Linux had OpenGL compositing window managers, maybe that’d attract end users.” But it’s still much the same thing: it’s still hackers writing software for other hackers. It’s not about providing a platform that developers can target and support over the long haul. Now mind you, hackers writing lots of high-quality software is really cool, and in 1995 the hacker community was real exciting. We could write a production-ready kernel; we felt we could do anything. 13 years later, Linux’s desktop market share is still statistical noise. (And no, I don’t think the recent “netbook” phenomenon will change that. All the major manufacturers — including OLPC — capitulated and implemented plans to offer Windows on their machines.) Which indicates to me that the community is suffering from a case of WORLD DOMINASHUN — UR DOIN IT WRONG.

  13. >These platforms are simply more friendly to users and developers because they’re proprietary and because they’re backed by companies who want to make money off them.

    I pointed out previously that my 70+ year old mother now uses Linux and Firefox every day. She finds it simpler and better than the Windows machine it replaced. Thus I refute you.

  14. And your mother is a representative of _all_ computer users and especially developers. Of course. From the single datapoint of your mother we can extrapolate that open source IS THE BEST, GODDAMMIT.

  15. >And your mother is a representative of _all_ computer users and especially developers. Of course. From the single datapoint of your mother we can extrapolate that open source IS THE BEST, GODDAMMIT.

    Universal claims are refuted by a single counterexample. That’s what I was doing.

  16. Among consenting adults, sometimes this universal claim is understood as “hey, this platform has 80+% of the market, I can avoid saying so everytime I refer to it, because I think it’s well known”.

    Obviously, for people who find themselves quite at home on Linux / VMS / OS X / OS/2 that sentence is invalid. We know. Shame they’re (we’re) not the huge majority.

    +1 in logical reasoning, -1 in reading comprehension.

  17. She finds it simpler and better than the Windows machine it replaced. Thus I refute you.

    Suggested experiment: Get your mother a Mac and watch your refutation crumble.

  18. >Suggested experiment: Get your mother a Mac and watch your refutation crumble.

    She’d have to pay a significant amount for a Mac, which, as a retiree, she’d prefer not to. It’s not like Linux, for which just about any old cheap PC hardware that I or my brother Kurt can scrounge will do. The machine she’s using now is a 5-year-old Pentium IV; given her light usage pattern (browsing and mail through Firefox), it’s fine. The nameplate premium for an Apple would be money wasted and the usability gain marginal if not zero.

    I’m describing her situation in this much detail because I think my mother is in fact representative of a large class of users. Linux on some recycled old hardware is an excellent fit to her needs. Granted this wouldn’t have been true as recently as two years ago, but Ubuntu has been doing excellent work on packaging and polish. The despairing cry that we’ve gotten nowhere since 1995 is nonsense, and my mother is proof.

    So is my sister Lisa. And my brother Kurt, who is the unofficial computer geek for his architecture firm and actively looking to switch the whole firm over the second we can verify that AutoCAD actually will run over Wine 1.0.

  19. >Suggested experiment: Get your mother a Mac and watch your refutation crumble.

    No, it wouldn’t. It would confirm it. The bulk of what is used by the casual home user is the browser. Question: where did the Mac browser come from?

    That doesn’t even get into the use of Firefox on Linux and Windows. Other examples of software which I’d say are now superior to their counterparts, IMHO, include, but are not limited to:
    Evince. Doesn’t keep bugging me to upgrade – just works. I do a lot of PDF work. Not creating, processing.
    GIMP. Unfortunate name but it, again, just works. I am not a professional so the features Photoshop has would just confuse me.
    Gedit. Painless and smart.

    I use proprietary and open source software throughout the day on the job. The open source software doesn’t jump in my face all the time.

    Second question: where did the kernel on that Mac come from? Awkward for your assertion Jeff.

    I gave up programming rather than have somebody own my art. I still have my art, just in another field. I own it.

  20. Little typographical correction: “wants to write a program and well it” where “well” should be “sell”. Unless you mean you believe a programmer should be free to write software and stuff it down a well. (Which I’m sure you do, but that doesn’t really fit the rest of the post.)

    esr says: Correction accepted, thanks.

  21. Neither Jeff nor I are asserting that closed source software is fundamentally better made than open source software. It usually isn’t. We are contending that because it’s designed to be sold, and meet the expectations of a non-technical market, closed source software is more USABLE. That is changing with Ubuntu…but Ubuntu’s baby steps in usability improvement are even smaller than the steps that Windows has taken in making real security happen, and they’re starting VERY late out the gate.

    In game design (which is my field of art), the design part is fun, but it’s about 20% of the total work load for making a product. The rest of it is not unlike doing bug reports and dealing with feature requests from idiot sales and marketing reps. Hell, convincing people that they should just use consistent terminology, and use more examples, is like pulling abscessed teeth from an unanesthetized polar bear.

    I contend that the difference between a LOT of FOSS versus proprietary development is that hacking is like the design part of designing a game. It’s fun! Your brain is sizzling with Kewl Ideaz. You code or write for 20 hour stretches because everything makes sense and it all falls into place! The Muses are whispering naughty things in your ear and tempting you to do One More Subroutine.

    Turning it into a finished product is the other 80%, where the Muse is that girl who never gave you her phone number, smirking at you as you push that rock up the hill. I’m not saying it doesn’t get done – but it gets done damned slowly, when someone feels like it.

    Shuttleworth is challenging the OSS community to make the next revision of Ubuntu stunning and more usable. I hope he succeeds…but I suspect the anarchist enclave meme in the Hacker community will result in resistance to being “forced to use broken tools for political reasons, insane specifications, and impossible deadlines.” or putting in “another brain-dead idea for a feature nobody will ever actually use coming at you from a marketing department who thinks it will look good on the checklist.”

  22. >I think I know why some people believe this, though. Closed-source producers are better at hiding and rationalizing their errors. Open source is no worse or messier but the mess takes place under arc lights. That’s actually a good thing, I think.

    Hmmm, perhaps propietary software companies seem to produce more reliable software than open source because they have marketing departments that harp on them to create attractive user experiences. The closed nature of thew product allows them to sweep bugs under the rug, out of user-visible areas. The bugs are theoroetically unnoticeable under “normal” usage patterns, but geeks tend to find them anyway, because geeks by definition have “abnormal” usage patterns.

    The transparency of open source projects is good, but unfortunately it has a side of effect of shipping software with egregious bugs visible to end-users. The message for hackers is “join us and fix it”, but this only sends nontechnical users running back to Microsoft and others.

  23. “And that is this: nobody, ever again, should have to eat that kind of shit. Never again!”

    I think this sort of shit comes from the combination of two things: corporate culture and software as a piece of mass-manufactured product: something that’s burned onto CD’s in 50 000 copies, get shrinkwrapped and sold on shelves. So you are building something for 50 000 different people, as a product, and therefore the usual corporate culture for mass-manufactured product design kicks in, with, yes, marketroids demanding features that don’t do anything else but look good printed on the shrinkwrapped box and in the ads.

    I have the misfortune (OK, I admit: knee-jerk risk-aversion of taking a profound career change) of working with proprietary software, but it’s not a mass-manufactured product. It’s customizing ERP software. No marketroid asks me to build a feature because he thinks it will look good on the box. Instead, users ask me to build features they themselves want to use, they need them, they are happy when they get it, it’s meaningful for them because it saves 4 hours of mind-numbing work of comparing printed lists. OK sometimes it’s a bit repetitive, it’s not always challenging… but if I understand you correctly, the main problem isn’t too easy tasks, but unmeaningful, useless tasks, of which I as a customizer have none. Neither do I really have bosses. The customer is the boss. Bosses usually don’t have the time to keep up with all these feature requests, so they only hear about a project when I feel some decision is a bit above me, so I delegate it up to them, to get rid of the responsibility in those cases when it looks a bi too much. So it’s proprietary, but because it’s not a mass-manufactured product, it’s bearable.

    So I think proprietariness might be responsible for half of the problem, but the other half is software-as-a-mass-manufactured-product. Software is information. Information in general wasn’t really meant to be a mass-manufactured product. F.e. buying music is supposed to mean a musician comes to your house and plays. When it’s instead burned to a CD and sold as mass product, so you get “music in a can”, in 50 000 copies, all sorts of problems arise, from copyright to quality or taste.

  24. >In game design (which is my field of art), the design part is fun, but it’s about 20% of the total work load for making a product. The rest of it is not unlike doing bug reports and dealing with feature requests from idiot sales and marketing reps

    OK. Now go download Battle For Wesnoth, the open-source game I work on. Critique it from that fit-and-finish point of view. Read our documentation. Look at the state of our bug tracker. Then tell us we haven’t done that 80%, if you can still say that honestly.

    Yes, I’ve heard versions of the hackers-won’t-do-the-80% critique before. It’s easy, and sounds plausible and mature and thoughtful, and it’s dead wrong a large enough percentage of the time that I have to work hard to not be offended by it.

  25. Battle for Wesnoth looks really, really cool.

    Kudos to the team (including Eric) for putting in the effort. Will download as soon as I get in front of a gaming machine.

  26. Judging from the screenshot, Battle for Wesnoth definitely looks much better that those FLOSS games I looked at 3-4 years ago and made me run away screaming (Lincity, Freeciv etc.). Interesting. OK on some screenshots it still has that Amiga-look from 1988, but it’s definitely getting better.

    Two questions:

    1) FLOSS seems to have a completely different approach to programming than f.e. Microsoft. MS first wants to make things look and feel cool so people buy it and worry about the core engine quality later on. FLOSS hackers seem to want to get the core engine right first, even if the interface is horrible, and add the look and feel later on. Because from the end-user point of view the look and feel is bottleneck that either lets you experience the quality of the core engine or not. Therefore, my prediction is that typical FLOSS from an end-user point of view does not have a linearly improving quality. Rather, it’s like aw it suck, and 2 years later, it still sucks, and 4 years later it still sucks, and then another year and they holy shit, it’s wonderful – when the look and feel finaly lets the quality of the core engine to be experienced. Is that correct?

    1) Unix philosophy. The mechanism vs. policy-stuff. How reusable BfW is? Could you turn it into a completely different game (say, WW2) just by changing arts and scripts, without any deep hacking? Is the goal to build a game or to build an engine for a lot of potential games?

  27. >FLOSS hackers seem to want to get the core engine right first, even if the interface is horrible, and add the look and feel later on.

    Yes, that’s kind of a Unix trait — programming from the engine outward rather than from the interface inwards.

    >Rather, it’s like aw it suck, and 2 years later, it still sucks, and 4 years later it still sucks, and then another year and they holy shit, it’s wonderful

    Some Linux window managers have been rather like that :-)

    >How reusable BfW is? Could you turn it into a completely different game (say, WW2) just by changing arts and scripts, without any deep hacking?

    Yes, in fact it’s been done twice. Both projects are moribund now, but for a while there was a Spacenoth (SFnal space-combat game, 2D only of course) and a Napoleonnoth (Napoleonic-era grand tactical warfare, probably a better idea).

    The game core is an interpreter for a specialized markup language that describes unit types, maps, scenario dialog and logic, etc. The markup can contain references to PNG images. Campaigns are actually written in this WML (Wesnoth Markup Language). By supplying your own WML data tree and image sets you can drastically re-skin the game.

  28. esr/Shenpen: I’d like to speak from the perspective of the uneducated user. Battle for Wesnoth is incredibly fun, and since it’s free, it has easily got the highest value of any game I’ve ever played. I don’t know, but I’d like to think that the cause of the high amount of very good content is the hundreds of enthusiasts that are programming, drawing, composing, etc. for Wesnoth, just because they like (no, love) doing those things. Then they either make this stuff available as add-ons or become part of the mainline game.

    And to Shenpen: There are some famous Wesnoth mods with quite different mechanics/game-play styles, particularly A New Land (which is more of a Civilization sort of thing) and Galactic Empires, which is a very good space opera simulation. Of course, these aren’t separate games and they have a lot in common with regular Wesnoth, but I think they show another way in which Wesnoth has the flexibility you and ESR are talking about.

  29. The machine she’s using now is a 5-year-old Pentium IV; given her light usage pattern (browsing and mail through Firefox), it’s fine. The nameplate premium for an Apple would be money wasted and the usability gain marginal if not zero

    Perhaps if you could find it in yourself to compare apples with apples (oh wait, that causes all types of internal namespace collisions..)

    Anyway, 5 year old mac hardware is only marginally more expensive than 5 year old PC hardware, because 5 year old PC hardware is free (as in, get it out of my garage), and 5 year old Mac hardware still has some utility for legions of Macheads.

    5 years ago was 2003, right? In late 2003 the currently shipping model was a 17-inch iMac with an IBM PowerPC G4 CPU @ 1.25 GHz. These are currently selling for $250-$300, and come *with* a screen.

  30. > The game core is an interpreter for a specialized markup language that describes unit types, maps, scenario dialog and logic, etc. The markup can contain references to PNG images. Campaigns are actually written in this WML (Wesnoth Markup Language). By supplying your own WML data tree and image sets you can drastically re-skin the game.

    Duuuuude. That sounds pretty :-)

  31. Ken Burnside wrote:
    “Neither Jeff nor I are asserting that closed source software is fundamentally better made than open source software. It usually isn’t. We are contending that because it’s designed to be sold, and meet the expectations of a non-technical market, closed source software is more USABLE. That is changing with Ubuntu…but Ubuntu’s baby steps in usability improvement[]”

    An analogy could be made between closed vs. open software and between commercially produced, solid state hi-fi equipment vs. diy tube hif-fi. Overpriced, fraudulently spec’d and over-hyped hi-fi components are snatched up by consumers, who have much dispensable income yet no experience – whatsoever – with good audio.

    No-one can expect a pedestrian to break out a soldering iron.

    The analogy collapses, however, in the assumption that software, available to all and contributed to by so many, would hold a small niche in a market as firmly and for over a period of time as long as a hobby which is self-selected by very few.

    I think Linus said once that the future of Linux did not lie in user friendliness. If he did not care about the market share of Linux, he was correct. But, that does not obviate Linux distros or open source generally from pursuing the opposite strategy.

    Open source software is usable, but it takes participation or commitment on the part of end users to use it. The vast bulk of computer users – unfortunately – have had no experience with software other than by clicking, clicking and clicking with a mouse. Most to me seem to regard a computer as a TV set with tons of channels and the mouse as the remote control. Maybe, open source developers need to recognize reality (how most people conceive of computing and their abilities) for what it is and react to it.

  32. >Open source software is usable, but it takes participation or commitment on the part of end users to use it.

    Simply not true. My 70-year-old mother doesn’t have any “participation or commitment”. Perhaps more to the point, nor do most Firefox users.

  33. Allright. Downloaded Wesnoth;

    The installation script did not provide an option for it to be visible from an account on the Windows machine other than the Admin account. I was able to go and set permissions so that my non-Admin account could see the file and I could run without it being in a privileged account. Most likely caused by the install wizard creation tool used; not the fault of the programmers, but something they should be aware of.

    The tutorial is well done. I find the music mildly annoying, but I find most game music annoying. Not being able to toggle settings like music volume from within the tutorial or the game itself is a minor knock.

    If there is a way to ‘group’ units so I’m not clicking and moving them individually, I did not see it in the tutorial. This is mildly annoying, as I see no game benefit to forcing the user to do this sort of repetition.

    I’m reasonably certain there’s a way to scroll around the map without moving units. I’ve not found it by trial and error yet. Documentation doesn’t seem to show it either.

    In comparing it to commercial games, the one I have on hand that’s closest in theme is WarLords: BattleCry II, which is vintage of 2002 for the version I have.

    In terms of game play – they’re similar. Recruit your troops, manage their healing and progression in capabilities, while meeting objectives. Wesnoth uses a boardgame hex and move system, which appeals to me; WarLords: BattleCry II uses a more ‘free” movement system with a finely granular grid. Both use similar (though not quite identical) statting systems, put an emphasis on leader units boosting the abilities of minions.

    WarLords: BattleCry II is an RTS, this is turn based – major point of difference, and makes a point by point comparison on game play less than perfect.

    Chrome and such: WarLords: BattleCry II has MUCH less repetitive music. (Personal quirk – repetitive music is annoying), and I can change most settings from within the game itself rather than save, change and reload.
    WarLords: BattleCry II uses 3-D accelerated graphics. Wesnoth doesn’t. Me personally, I go for game play first, chrome second. However, WarLords: BattleCry definitely wins on chrome. Wesnoth is basically a sprite game with a reduced color palette. Its major innovation from 1993 computer games in terms of display and chrome is its support for resolutions greater than 1024×768.

    Documentation: I recommend adding a documentation page that lets someone mouse over a map and get pop ups explaining what each thing IS prior to starting the tutorial. This is also good for showing locations of things like the End Turn button.

    Contrast issues: Putting black buttons on a dark brown border on top of a black area of the screen is a great way for buttons to get lost. I spent noticable amounts of time trying to find the End Turn button initially, because I simply couldn’t SEE it. Not a major issue, but could definitely be addressed.

    When I compare this to turn based strategy games (Civ III, circa 2002), the graphics don’t compare well. Comparing to Civ IV, the graphics really don’t compare well.

    Overall: Game play is OK. Graphics are retro in a way that probably hinders its consideration for the under 30 age set. Music is annoying enough that I turned it off completely the second time I started it up.

    Am I likelier to blow time away playing this or Civ IV? Probably Civ IV. Though now that I’ve got WarLords BattleCry reinstalled that might get a few turns on the wheel over Civ IV. Most of that is because CIV IV, to me, is deeper game play than “string scenarios together to make a campaign”; WarLords BattleCry got uninstalled because I didn’t find the theme compelling enough to make me go through the campaign grinding; Wesnoth may well suffer the same fate.

    I’d rather play Command and Colors: Ancients than this.

    I’m running it on a WinXP box (Pentium IV, 2.8 GHz, 4 GB of RAM, 512 MB 3-D accelerated video card) My machine high end in early 2004 when it was built, and got a video card upgrade in 2005, but it wasn’t cutting cutting edge 5 years ago when built, and it’s far from cutting edge now.

    I run on a 1280×1024 monitor. I didn’t see options for higher resolutions than I’ve got, but I’ve seen Eric poking at things in it – can Wesnoth support 1900×1980 widescreen?

    Now, here’s my counter example on usability and documentation:

    Open Office Calc. We’ll ignore the fact that I can’t get useful work done in OO Calc. I’m not a fair sample of the target demo.

    In terms of the tutorial for this versus the tutorial for Excel, Microsoft wins out. Ditto on documentation and examples. Microsoft has more of them, and puts more thought into how to make them relevant to the end user. Large chunks of Calc’s docuentation read very much like a programmer wrote it quick to make sure there was at least something there, but didn’t try to look at it from the perspective of an end user. OO Calc is more or less relying on people having used Excel before getting thrown at this, then making the transition through the changes in convention.

    And OpenOffice, next to FireFox, might be the most widely used Open Source desktop app in the world.

  34. Ken, any objection if I forward your report to the Wesnoth development mailing list? Some useful criticism in there, including some things I think we could address quicky like the button-contrast issue.

    >BattleCry II uses 3-D accelerated graphics. Wesnoth doesn’t.

    We’ll get that via OpenGL when SDL (Simple Drawing Library) ships 1.2, which should be pretty soon; it’s on their roadmap.

    >I’d rather play Command and Colors: Ancients than this.

    Actually, so would I. But opportunities are rare and there’s substantial setup time. BTW, I have all three CC:A expansions now; next time you visit we can do Roman civil wars or various Romans-vs.-barbarians battles.

    >1900×1980

    That would be a very weird resolution. Did you typo?

  35. Firstly, Linus is also from Sweden; I think we need to take his culture into account here. Whereas most of us were taught the “American dream” (if you are honest and work hard, you can make more money than Scrooge), I think Linus is just a smart-guy, and he’s out to have a good time in his own way. (Warning: run-on follows.) Those who wish to expand on his work by demonstrating that superior software can also be user-friendly, are hopefully trying to do exactly the same thing- have a good time, while trying their hand at a new problem. They are every bit as aware of reality as kheper– possibly more. You can tell, because distributions like Ubuntu offer a bit of something for everybody. There’s mindless, click-through interfaces and tools for people who just want a fancy television, and there’s an “under-the-hood” level that makes it easy for hobbyists, who want to fiddle with everything in site.

    Secondly, Eric, I find it fascinating that you don’t take the bait on any claims that I’ve seen here: claims to the effect of, “I see proprietary software beating the pants off open source again and again, and it’s not just a nice feature here and there but basic stuff like halfway decent sound functionality…” [Jeff Read], and “Perhaps that’s the reason why FOSS is so broken…” [Steve B.] I see this as very wise; no need to rehash rebuttals to resurrected replies that have been relegated beyond any requirement for reexamination.

    Finally, I have a question. I found your page back in 2002, right after I started college, and have considered myself an “aspiring hacker” (read: one who aspires to be/come a hacker) ever since. With the rapid pace of cultural and technological evolution, I somehow put myself under the impression that hackers were the true staple of the computer industry, and could be found anywhere. So, with this youthful naivety in hand, I got myself a job very similar to the one you are describing in this post, to my chagrin.

    My question to you is: somehow, you’ve managed to support yourself without having to give up on doing the things you love. What is the secret? I’d like to believe that I don’t need to be independently wealthy in order to survive as a techophile.

    Many thanks and much sincere admiration,
    Abraham

  36. >My question to you is: somehow, you’ve managed to support yourself without having to give up on doing the things you love. What is the secret?

    1) Make occasional but largish lumps of money from book royalties, consulting jobs, and other irregular work.

    2) Hook up with a high-earning professional spouse.

    She pays the regular food/shelter bills. Almost all of what I make goes into our (emphasis our savings), though I use a bit of it to pay for my own toys — computers, weapons, musical instruments, that sort of thing — so she doesn’t have to buy luxuries for me. And I buy a luxury for her occasionally.

    It helps that neither of us has expensive habits. Well, other than buying several books a week :-).

  37. Wait, Cathy takes care of all the real living expenses, while you use your income for ‘savings’, your extensive toy collection, and to purchase an occasional trinket for her?

    Her (dependable) income gets used for *needs*, while your “occasional” income gets used to buy things that, should the economy continue to crater, you’ll be attempting to pawn at the local hock shoppe?

    C’est la vie.

    And you may find yourself behind the wheel of a large automobile
    And you may find yourself in a beautiful house, with a beautiful
    Wife
    And you may ask yourself-well…how did I get here?

    … same as it ever was. ..

  38. esr:
    > My 70-year-old mother doesn’t have any “participation or commitment”. Perhaps more to the point, nor do most Firefox users.

    Okay. Maybe this phenomena of using a computer just for web browsing and email does characterize the experience of many computer users. Surely, this has to do with closed source evolving extreme user friendliness and becoming adopted by satisfying the demand of non-computer savvy consumers. Windows 95 would not have won the battle in the OS war for MS had it not been simple to use. Remember those long lines in 95? The people queuing up for Window 95 were not computer geeks.

    30 years ago did you envision a computer being used by a 70 year old women for two tasks?

    Relative to closed source, using open source requires more “participation or commitment” than using closed for “normal” or non-trivial computer tasks.

  39. > I guess I’ll have to use Eric’s “Sex Tips for Geeks” in order to land a lawyer too.

    Got an engineer, managed to keep her for 18 years now. Thanks but ‘no thanks’.

  40. Two lawyers were sitting in a bar when a esr walks in.
    One, squirming in her chair, says: “I’d sure like to f**k him!”

    — the other inquired: “Out of what?”

    (“I’ll be here all night. Be sure to tip your waitstaff…”)

  41. Since some people found it un-obvious, I’ll note that the income I make would in fact be quite large enough to pay for my own food and shelter. Cathy’s salary solves the cash-flow problem that I would otherwise have because my money tends to come in large lumps at odd intervals. On the other hand, without what I make we wouldn’t be able to save very much, so the combination works out well for both of us.

    Cathy did subsidize me for a number of years when I wasn’t making the kind of money that I can now. She was, in effect, betting that my open-source work would end up raising my marketplace value to the point where I ended up making more for us, because of it, than I would have in a continuous regular salaried job over the whole period.

    The bet paid off, quite handsomely actually; she has no complaints. But it is only fair to note that an external observer would have had grounds to consider it a risky one. Ex ante, the odds that I would in fact become something like a much-sought-after ubergeek and famous author were not high; OK, I’m bright and creative, but there are lots of bright and creative guys who never manage to turn that into real-world success.

    Cathy, however, believed in what I was doing, and got the last laugh on a couple of people in her peer group years ago who thought I’d never amount to anything. Occasionally she’s even a touch smug about her own prescience, these days. Not that I mind.

    Coincidentally, she came home while I was typing this and handed me a $498 royalty check she found in the mailbox. She read this comment and thinks the coincidence is funny.

  42. ESR,

    If I remember correctly, you’ve made a fortune on VA Linux’s IPO. Didn’t you sell those stocks while they were up?

  43. >If I remember correctly, you’ve made a fortune on VA Linux’s IPO. Didn’t you sell those stocks while they were up?

    Nope. Didn’t sell before the bust. Too busy worrying about other things, like changing the world.

  44. “My 70-year-old mother doesn’t have any “participation or commitment”. ”

    No, I think she has a commitment to the technical support you provide, and you have a commitment to Linux. This is a very common pattern, of older people using whatever their children recommend, because they figure that’s what they are able & willing to support most. If I worked as a Peugeot car mechanic or designer or engineer or whatever, don’t you think my father would drive a Peugeot? (Even though he hates them, for good reason.)

  45. >No, I think she has a commitment to the technical support you provide, and you have a commitment to Linux. This is a very common pattern, of older people using whatever their children recommend, because they figure that’s what they are able & willing to support most.

    I use Mac OS X and Linux, but I can’t seem to get my mother to switch from Windows. Her reasoning is “I’m used to this, I don’t want to learn anything new!” I can’t even get her to use Firefox. Some people are just unwilling to change.

  46. Mmmm… maybe. Or just too many levels of abstraction. I got my dad to user Firefox, but it was quite hard to explain that when he clicks on the blue E for IE, it’s not “the Internet”, but just a tool to access it. I said it’s like a car for accessing roads, but he said that’s the computer. The computer accesses the road of the Internet, and the blue E tells it to do so, isn’t it so, said he. Err… it wasn’t easy. And the strange thing is that he isn’t stupid, in general. He is very good in his profession (construction). It’s just that computer-related things offer more levels of abstraction that buildings or cars, and it might be hard to grok. And as many of those layers are just software and thus quite malleable, it might be hard to grok to someone who spends his life thinking in terms of bricks, concrete and steel. (I was surprised too when I learned at school that there are 7 layers of the Internet (or any network). It just didn’t seem that much.)

  47. BTW if it’s not quite clear what I was driving at when I commented about the problems arising from software as a mass-manufactured product: you’d get some (or maybe many) of the same problems ESR wrote about hacking FLOSS as a Canonical employee. Because some (or maybe many) of these problems come from software as a product: something you build upon some _anticipation_ of the requirements of users, upon what you _think_ they need.

    Steve Yegge got it right: http://steve-yegge.blogspot.com/2008/08/business-requirements-are-bullshit.html
    Summary: if the first step of your project is “gathering requirements”, it’s already failed. You cannot gather requirements, as people haven’t got the slightest clue what their requirements are if they don’t _already_ do much of those things the software is supposed to do. And then you get marketroids figuring out requirements and that’s when it starts to suck.

    The FLOSS hobby-hacker doesn’t gather requirements: he programs whatever features he personally wants. He knows his requirements. I don’t gather requirements either as a shared-source Microsoft-partner ERP customizer: people phone me and tell me what report or whatever they want. They know their requirements too. Microsoft employees gather requirements. I think Canonical employees gather requirements too, even though it’s FLOSS.

    Therefore, software-as-a-product contributes to the problem, perhaps a lot, even when it’s FLOSS.

  48. >(I was surprised too when I learned at school that there are 7 layers of the Internet (or any network).

    Prepare to be more surprised. The Internet does not actually have the 7 layers you learned about in school. That 7-layer model was invented back in the 1980s as theory to justify a European anything-but-TCP/IP effort called Open Systems Interconnect. It failed miserably. For some bizarre reason the theoretical model lingers on in a fair number of textbooks despite having no discernible connection to reality.

  49. >Prepare to be more surprised. The Internet does not actually have the 7 layers you learned about in school. That 7-layer model was invented back in the 1980s as theory to justify a European anything-but-TCP/IP effort called Open Systems Interconnect.

    RFC 793 actually specfies a four-layer model. I like the idea of having packets not know how about how they’re actually being physically transmitted. That’s what makes TCP/IP so robust. If the telcos and cable companies get really obnoxious, we can just build a new, decentralized internet out of something like wireless mesh networks.

  50. Eric, you may forward all of my comments to the Wesnoth team. And it should be 1900×1080 resolution; the impending wide screen standard.

  51. The FLOSS hobby-hacker doesn’t gather requirements: he programs whatever features he personally wants. He knows his requirements. I don’t gather requirements either as a shared-source Microsoft-partner ERP customizer: people phone me and tell me what report or whatever they want. They know their requirements too. Microsoft employees gather requirements. I think Canonical employees gather requirements too, even though it’s FLOSS.

    Therefore, software-as-a-product contributes to the problem, perhaps a lot, even when it’s FLOSS.

    Shenpen, you may declare the color of the sky in your world to be C=36/M=94/Y=14/K=12, but until GIMP consents to meet my user requirements, I’ll only be able to see it in closed source software.

    User requirements MATTER.

    (I am still considering printing a tee shirt a shirt that says “I’ll keep wearing C=100/M=100/Y=100/K=100 until they make something darker.”)

  52. “Too busy worrying about other things, like changing the world.”

    May I use it as an example to annoy the Neoclassical economists with? :-) (To annoy them from an Austrian point of view: that even highly rational people aren’t always “utility maximizers”, people maximize subjective, psychological utility and not necessarily a measurable, objective utility i.e. money.)

    “European anything-but-TCP/IP effort called Open Systems Interconnect”

    It somehow became an ISO standard. We learned it as “ISO OSI standard”. ISO is big over here. (Yes, I do hate it, especially ISO 9001 “quality assurance”. I mean it’s an oxymoron, quality cannot be “assured”.) Anyway, thanks for the info that the Internet isn’t “ISO standard”. I did not know. That might explain why it works :-) (I might be a bit too biased against ISO as an organization, but you’d be too, if you’d have to live through an ISO 9001 implementation.)

    ““I’ll keep wearing C=100/M=100/Y=100/K=100 until they make something darker.””

    Sorry Ken, I have no clue what are you talking about. I’m anything but an artist, the one and only time I tried to draw is http://www.magyarok.org.uk/templates/rhuk_solarflare_ii/images/header_short.png , it took me 4 hours and after that I swore I’ll rather pay as much as I have to to an artist, but will never try to draw anything myself again, because even after 4 hours it still looks like something an averagely talented 3 year old child would not be proud of :-) (BTW I did it with GimpShop.)

  53. >May I use it as an example to annoy the Neoclassical economists with? :-)

    Sure, I lean towards the Austrians myself :-)

  54. Shenpen:

    When printing something on a screen, the color space is RGB – Red, Green, Blue, with intensity of the light transmitting through being the determinant of brightness and color saturation.

    When printing something for use on a printer, the color space is CMYK – Cyan, Magenta, Yellow and blacK. The numbers range from 0 to 100 and represent the percentage of each color that shows up in each pixel, using what’s called a 4 color process – all the blue ink is laid down first, then magenta, then yellow, then black. This results in a better quality printed image.

    Putting all four values at 100 is “Total Black” – it’s the deepest black you can get on an offset press. Most stuff that’s printed with black background uses C=60/M=60/Y=60/K=100 for a “Rich Black”, with some variance in this depending on your offset house.

    One of the major failings of GIMP for me – and it’s been a failing for over a decade – is that until recently, it hasn’t handled CMYK natively. Now it handles CMY – but cannot produce a true rich black. It also a recent innovation that the GIMP could handle image dimensions with a DPI setting in the output file. I have no idea how they’re going to try and implement PANTONE colors.

    This is very much a case where the people doing the coding “made it work the way they wanted it to”, rather than trying to assess requirements for the user base.

    Very few computer coders ever have to send files off to offset printers; most would look at the process that offset printers use and, if Eric was any indication, look somewhere between baffled and appalled. :)

  55. it took me 4 hours and after that I swore I’ll rather pay as much as I have to to an artist, but will never try to draw anything myself again,

    This is, by the way, VERY MUCH the reason why people use closed source software. Just replace “an artist” with “a programmer” and “to draw” with “attempt to code”. I’m a programmer more as a courtesy; what I do in Excel about qualifies, sorta kinda, if you use a sloppy definition of programmer.

    My brain handles math and such as spatialization sets, which makes sitting down and writing code really daunting. I’m doing things in Excel, even though it’s so not the right tool for the job, because it’s the tool I know how to use well, and that works the way my brain does…and I use it because I’ve paid too much money to coders who never met a deadline, didn’t participate in the requirements discussion, and turned in things that were nearly useless.

  56. David Delony:
    > I can’t seem to get my mother to switch from Windows. Her reasoning is “I’m used to this, I don’t want to learn anything new!” I can’t even get her to use Firefox. Some people are just unwilling to change.

    That is sort of what I was getting at. You need to observe what people do with computers or – better – what they refuse to do with them. Everyone I know hauls his/her box over to my house, ordering me to fix them for the most trivial of problems. They refuse to even try to install software on them. I tell them “just become the administrator, click on the damn exe and install what you wish to install.”. Their replies are, “I am no computer wiz. I never went to college to learn this stuff. It is beyond my capacity.”.

    Open source developers may instinctively cringe at the thought of dumbing interfaces down to the point where a slow baboon could operate them. But, these baboons seem to represent the dominant share of the desktop market.

    I have given up installing Linux or another free OS on a spare partition on any new box I set up. I spend hours installing, configuring and setting the desktop up to look and feel like windows, but I cannot even bribe these people to boot into a non-windows OS.

    I do not think that Linux was not more widely adopted on the desktop 10 years ago for the proffered reasons: “No good substitute for MS Office”, “Too hard to connect to the internet”, “Too hard to install” etc. It has to do with inertia, downright laziness and with proprietary software developers enabling a dependence on utter helplessness.

  57. “This is, by the way, VERY MUCH the reason why people use closed source software.”

    I figure it’s more because of my inability than because of the tool. If you have trouble hitting the wide side of a barn from 15 yards, it does not count much how good is your gun :-) But that’s exactly the reason why shouldn’t I take sides it this particular subject, so count me as a neutral when it comes to PhotoShop vs. Gimp/GimpShop.

  58. > It has to do with inertia, downright laziness and with proprietary software developers enabling a dependence on utter helplessness.

    And this is one of the things Linux (as opposed to Windows) does: it enables the next generation of hackers to learn, and not to be helpless. I don’t know about you guys, but I grew up on the BBC Micro and the Commodore 64 (and I were lucky…), and to this day, the concept of a “computer” without at least one programming language available by default seems oxymoronic to me. Linux is hackable. That’s partly because it’s open source, and partly because it’s Unix, but it doesn’t really matter why, only that it is.

    The “ooh, I don’t want to learn that, it’s all new” problem will, I hope, die out in the next generation.

    Eric: can you suggest anything more, y’know, scalable than the marry-a-lawyer plan? :-)

  59. >Putting all four values at 100 is “Total Black” – it’s the deepest black you can get on an offset press. Most stuff that’s printed with black background uses C=60/M=60/Y=60/K=100 for a “Rich Black”, with some variance in this depending on your offset house.

    Waste. The K in CMYK is what? Most color printers/plotters have those 4 colors as units, be it wax, toner, or ink. Nothing annoys the frugal me than somebody printing black in color. Don’t send any C, M, or Y. What do you get? K. Cheaply.

    YMMV. Depends on the printer/plotter. Our wax ones print K in a very nice black.

  60. >Eric: can you suggest anything more, y’know, scalable than the marry-a-lawyer plan? :-)

    It is only technically true that I married a lawyer. We bonded for life while before she even went to law school. :-)

    My wife adds that you pretty much have to catch your lawyer that young, because once she’s got a job she won’t have time to build a relationship.

    As for more scalable…I dunno. Marry two secretaries?

  61. >Putting all four values at 100 is “Total Black” – it’s the deepest black you can get on an offset press. Most stuff that’s printed with black background uses C=60/M=60/Y=60/K=100 for a “Rich Black”, with some variance in this depending on your offset house.

    Waste. The K in CMYK is what? Most color printers/plotters have those 4 colors as units, be it wax, toner, or ink. Nothing annoys the frugal me than somebody printing black in color. Don’t send any C, M, or Y. What do you get? K. Cheaply.

    And when you go to an offset press, which is what the majority of commercial printing is done on, doing 0/0/0/100 gets you a “construction paper” black, that looks awful when used next to full saturation colors. The reason why is because all of those inks are assumed to be translucent. You do need all four to make a rich black, or an opaque black (Opaque is 20/20/20/100)

    Indeed, one of the ways to identify someone who knows NOTHING about file prep (and there are several) is when they give you what’s meant to be a saturated black at 0/0/0/100. It’s very clear that they’ve only used a direct output device rather than something for a commercial press.

  62. I think the big problem with open source usability is that the developers really have no idea who their audience is apart from other programmers. I was reading about companies employing anthropologists to do ethnographies of customers to help in designing products. Developers need to do some serious research into nontechnical audiences to find out what thier needs are.

    If only there was someone in the open source community who had an anthropology background… ;-)

  63. David Delony:
    > I think the big problem with open source usability is that the developers really have no idea who their audience is apart from other programmers.

    If they intend to develop for geeks, then they hit the nail square on the head, succeeding. If they intend to develop for the median PC user, then they miss the nail, the table and the entire floor, failing.

    I do not think it has to do with anthropology, ethnology, sociology, etc. . Ask the average PC user what he does (or does not do) with his computer. My sister is a SAS programmer. She works on computer s all day long, but she carts her full tower box over to my house, asking “Will you install MS Office for me?”. I say “But, but, but… You have more than enough computer skills to run a dopey install wizard!” She shrugs, proclaiming her ignorance about such arcanum.

    One time I booted off of a floppy, and she said “Oh boy, I bet you could really make alot of money with this!”

    There is something or someone making reasonably intelligent people go foggy, when they sit behind monitors. Radiation pouring from the
    device? It is as though they are being convinced that they cannot perform menial tasks, if it takes more than one moment’s thought.

    But, would you really want to run a *NIX operating system with a wizard for installing this, a gizmo for auto-configuring that, a clickable GUI for making daemons start, restart and stop, etc.?

    Heh. At one time a UI was opening a configuration file in the vi editor…

  64. Heh. At one time a UI was opening a configuration file in the vi editor…

    And EMACS was considered so bloated that the acronym was apocryphally “Eight Megs And Caching Still”.

    And when we played computer games, cheat codes involved resequencing your punch cards without your opponent realizing it!

    I just recently re-watched Apollo 13. Those guys had stones. Saying their computer tech was stone knives and bear skins was vastly over-stating their potential; the skins were still on the bears…

  65. Ken, CMYK is an interface, not a requirement. “Printing on an offset press” is a requirement. Obviously none of the people hacking on the gimp have that as a requirement.

  66. But, would you really want to run a *NIX operating system with a wizard for installing this, a gizmo for auto-configuring that, a clickable GUI for making daemons start, restart and stop, etc.?

    Such a system exists. It’s called Mac OS X. Plenty of tech-types have switched to it from Linux.

  67. Ken: but they had duct tape, so no power in the ‘verse could stop them :-) Interesting stuff about the offset press printing – I too would have guessed 0/0/0/100, but I did indeed know nothing about commercial print shops. Now I know nothing + epsilon – thanks!

    Eric:
    > My wife adds that you pretty much have to catch your lawyer that young, because once she’s got a job she won’t have time to build a relationship.
    I can believe that. I used to date a law student, and her time was a rare and valuable commodity.

    > As for more scalable…I dunno. Marry two secretaries?
    Sadly illegal in this jurisdiction (at least in parallel, and there’s not much to be gained from doing it in series). I think I’ll stick with my neuroscientist :-)

  68. Some assorted thoughts:

    The success of open source on the desktop, if it were to come about, is wholly predicated on a mainstream user base that has the kernel of a hacker spirit inside them. Not really hyperintelligence, but rather curiosity and a willingness to explore. (Listen to Auguste Gousteau’s monologue near the beginning of Ratatouille; he neatly outlines the necessary personality type, applied to cooking instead of programming. Unsurprisingly, many hackers of my acquaintance are also competent cooks.) For a variety of reasons, our culture is engineered to prevent that from ever happening, from childhood on forward. The result is what we see today: we want a solution now and we want it to work now. And, we don’t want to have to fix it if it breaks. We’ve got more important things to worry about, like third-quarter projection analysis spreadsheets that have to be on the boss’s desk yesterday. That is why Microsoft wins. “That is why you fail.”

    So society will evolve not in an open-source and hacker-friendly direction, but rather in the opposite direction. See below.

    I think Linus said once that the future of Linux did not lie in user friendliness. If he did not care about the market share of Linux, he was correct.

    The future of Linux is behind a hypervisor, neatly sequestered away from the rest of the system.

    I just bought a PLAYSTATIONâ„¢3 home video game console. It comes with a hard disk, and a feature called “Other OS” which lets you load Linux or another OS onto a special hard disk partition. The “Other OS” lies behind a hypervisor, which intercepts hardware I/O requests and restricts access to various hardware. The hard disk outside the “Other OS” partition is not visible, for instance; and the machine’s high-end 3D graphics chip is presented only as a simple frame buffer. This is to prevent a legitimate PS3 game from being anywhere near playable on the restricted platform. Sony wants to have its cake and eat it too: it wants to cultivate a hacker community on its hardware, and yet have a licensed platform on which it can guarantee lack of piracy. (They have similarly been two-faced with respect to homebrew on their portable PSP machine.) With an initial investment of millions of dollars to develop a single game, widespread piracy of games could kill the game industry, and on the PC this has already begun to happen. Even id Software is focusing on consoles for its upcoming release.

    I think Sony hit such a sweet spot with the PS3 that all major platforms will head in this general direction. Apple has even begun this process with the iPhone; their problem is they tightened the noose too tight and now there’s a backlash among some developers. Despite all this, it’s still an attractive platform because it’s an attractive device that Just Works. There’s a very good chance that a future version of Windows would require TPM hardware, a signed BIOS designed specifically to boot an official Microsoft kernel image, signed drivers with mandatory DRM (already got it in Vista), and signed applications. Development by end users would take place either on top of an existing application (VBA for Word and Excel), or in a restricted sandbox. A license key purchased from Microsoft (they might throw a few free into each copy of Visual Studio, under a nontransferrable nondisclosable EULA) would enable the wole platform to be unlocked. Another OS, such as Linux or BSD, could be run if you are willing to accept the limitations of the sandbox. Freedom from viruses, malware, spam, and piracy if you are a developer will be the selling point here. This will enable most hackers and proto-hackers to sate their curiosity with an OS of their choice while protecting the platform and Microsoft’s dominance thereof. Those not satisfied will likely begin importing black-market, highly-illegal, massively patent infringing MIPS-clone econoboxes from China.

    It’s sure to make Stallman eat his own beard even more so than he already does, but I think it’s largely an inevitability given the nature of society as a whole.

  69. kheper: That your sister is an SAS programmer explains a lot. SAS, much like Excel, is an environment that enables nonprogrammers to leverage computing power to solve high-level problems with an interface that relieves them from worrying about “computery” details like file storage and databases. To her, a computer is a tool that she can just sit down in front of and use to crunch statistical numbers. Maintenance of the machines is reserved for lower level minions like yourself, I guess :)

  70. >So society will evolve not in an open-source and hacker-friendly direction, but rather in the opposite direction.

    This is not what we observe to be happening, so your theorizing is dubious. Everywhere from favorable mentions in pop culture to the slow fall of DRM and the stagnation of Microsoft to adoption trends in open source itself (notably in inexpensive netbooks) things are moving our way. Not as fast as we’d like, and with occasional local reverses, but the overall trend is positive.

  71. DRM isn’t falling. It’s simply becoming invisible. The problem for end users is not that it restricts their fair use rights and adds to the cost and complexity of hardware; these things are abstractions to them. The problem for end users is that DRM is annoying. Remove the annoyances and people embrace DRM-encumbered systems if they present a significant value add. See Windows XP and Vista, Steam, iPhone, iTunes Music Store, every game console since the NES.

    As for netbooks, Linux netbooks are returned four times more often than Windows netbooks.

  72. >The problem for end users is that DRM is annoying.

    So? Remember, I care liitle *why* people become our allies, just that they do. Beliefs follow behavior.

    >As for netbooks, Linux netbooks are returned four times more often than Windows netbooks.

    True — but it’s that they’re selling and consumers are *keeping* them in large numbers that matters. Compared to where we were even five years ago this is wonderful and positive,

  73. Jeff Read:
    > The success of open source on the desktop, if it were to come about, is wholly predicated on a mainstream user base that has the kernel of a hacker spirit inside them.

    I am arguing the opposite: that for at least one Linux distro to capture the dominant share of the desktop market (ie. success) would require it to capture the predilections of those not “with the hacker spirit” but those “with the deer caught in the headlights gaze when sitting behind monitors lack of spirit”.

    > That is why Microsoft wins.

    You under-explain why MS won. The history of MS’s dominance in the desktop market was on many levels quite fortuitous. Windows ’95 came out at the right time and gave incredibly uninformed consumers what they thought they wanted in an OS. Their winning was not because the code was proprietary and certainly not because it was pristine or highly functional.

    To extend what I think is a bad evolutionary analogy, MS’s continuing success may be properly characterized as the founder effect.

    > So society will evolve not in an open-source and hacker-friendly direction, but rather in the opposite direction.

    This evolutionary terminology of yours smacks of a blind mechanistic process leading to an inevitable outcome, rather than looking at “society” for what it really is: in this case, millions and millions of apparently un-coerced decisions with respect to purchasing preferences and deployment choices.

    The IP, the DM, the TMP, the DMCA, and whatever else are recent adaptations(!). I would not make book that these artifacts will persist forever. A ground swell of disgust against the constraints laid down on what consumers can do with the software or the devices which they shelled out their hard earned money for may indeed rise up.

    The logical extension of the “IP mentality” would be that any OS not conforming to closed source dictates would be rejected as a virus (or worse) by any potential host computer. I do not regard your projections as fated and inelecutable.

  74. Jeff Read:
    > That your sister is an SAS programmer explains a lot.

    You are hyperanalyzing the hypervisior… Err…

    My sister is but one representation from a universe of PC users, who are not stupid but who will expend neither the time nor the thinking required to solve a simple task. It may be how they have become inculturated: their expectations about what PCs are and their relationship (or duties?) to them having been laid down by entities unknown, who have instilled into them the ethos of helplessness.

    My brother-in-law took college courses on how to run Autocad and Windows. He is – of course – competent at neither. He lugged his computer up to my house, demanding that I install his new laser-jet printer. I told him that there is a manual and even a quick-start instruction guide to assist him. “Just follow the illustrations in the guide. It will take you all of 5 minutes.” He thew on a blank stare as though his eyes were lasers slicing the core of a diamond, and he muttered something incoherently along the lines, “This is all just too much detail for me!”.

    > signed drivers with mandatory DRM (already got it in Vista)

    Well, there was at least one bright episode of success for the FOSS crowd. Since it is a royal pain in the *ss to force Vista to use an un-signed driver for a particular video capture card, I prevailed on my neighbor to give Linux “just a chance”. The card was recognized immediately by the default kernel. He is using mythtv and other OSS apps now and has sworn off MS permanently.

    Maybe MS is cutting its own throat with this signed driver scheme?

  75. I didn’t say nor did I mean to imply that your sister was stupid.

    My sister is but one representation from a universe of PC users, who are not stupid but who will expend neither the time nor the thinking required to solve a simple task.

    That is precisely what I was getting at.


  76. My sister is but one representation from a universe of PC users, who are not stupid but who will expend neither the time nor the thinking required to solve a simple task. It may be how they have become inculturated: their expectations about what PCs are and their relationship (or duties?) to them having been laid down by entities unknown, who have instilled into them the ethos of helplessness.,

    Actually, it has more to do with the psychology of decision making.

    There is a lot of cognitive research that indicates that every decision you make in a ‘sleep-wake’ cycle increases your carried stress level. Basically, the more decisions you make in a day, the more you have to plan ahead, the more stress you build up.

    Which is the genius of Microsoft and Apple. They simplify all their decisions, because they’re aware of that cost to the user.

    Hacker culture is built around people who have a much higher lower incremental cost per decision; the more times you make the same kind of decision, the more familiar it becomes, and the less trouble it is in the future.

    To you, those are easy decisions. To me, they’re easy decisions. To a lot of other people? It’s doing something they don’t understand with feedback that makes no sense, and hoping it comes out well. What’s the natural tendency in that regard? Shamanism. Get an expert to placate the spirits of drivers and kernels for you so that your magic box does what you want it to.

    If you can deliver an OSS desktop that does what the user wants, without them having to consult a shaman to get it running, or become one to get it running, you’ve got a chance. Ubuntu is a baby step in this direction; the fact that it’s a baby step shows up in the return rate for Linux netbooks.

    Eric feels that return rate is a net positive, but what it’s showing is that there’s room for improvement.

  77. If Linux gurus define success as being able to surf the web and read some emails, then yes, by all means. Linux and open source is a complete success. I don’t know if you’ve ever put some serious thought into this… but it looks like 99% percent of the world needs a little more than that.

  78. Ken Burnside:
    > There is a lot of cognitive research that indicates that every decision you make in a ’sleep-wake’ cycle increases your carried stress level.

    Your little thesis fails in this case because it aspires to be a generalized description of human behavior. The people of whom I speak are not stress-averse to decision-making in any domain – other than with their own computers. However, it is quite true that they are in no sense hackers.

    > Which is the genius of Microsoft and Apple. They simplify all their decisions, because they’re aware of that cost to the user.

    Agreed. But, these vendors also foster and reinforce the “bewitchment of users by their own PC’s inscrutability” strategy, further driving normal users into gape-jawed ignorance and the mentality of dependence.

    If you cannot see under the hood, perhaps you can convince yourself that there is an intelligence inside somewhere – sort of a Turing Test or a Turing Illusion. Maybe that is what is at the bottom of this proprietary software with its IPs, DRMs, etc., an illusion for profit.

    I tried to explain to my nephew how the i386 processor works, and he said “Stop! You are making my head spin! This is all just too fantastic!” And he is a CPA – a math-wiz.

    > If you can deliver an OSS desktop that does what the user wants, without them having to consult a shaman to get it running, or become one to get it running, you’ve got a chance.

    Infantilizing a Free/Open OS to the extent that grey-haired granny in her orthopedic shoes can DOS a mailserver with point and click GUI access seems a sacrilege (on more than one issue).

    If you do not need to consult a shaman to run your microwave, but instinctively know that you need to consult the manual to run it properly, then you do not need the shaman to hook up your PNP printer.

    The shaman/hacker identity routine with his little magic box seems a bit all too self-congratulatory, though having a definite kernel of truth to it.

  79. The logical extension of the “IP mentality” would be that any OS not conforming to closed source dictates would be rejected as a virus (or worse) by any potential host computer. I do not regard your projections as fated and inelecutable.

    That would raise a huge stink on groklaw, reddit, Slashdot, and here, among other places. The problem then becomes how to enforce the “IP mentality” as the dominant paradigm without pissing off the hacker types enough to create bad PR. Sony has come up with a solution: sandbox the free OS. It seems to have worked out rather well for them, as attempts to “crack” the PS3 console have been rather less frequent than for their other hardware.

    So? Remember, I care liitle *why* people become our allies, just that they do. Beliefs follow behavior.

    Near as I can tell from the recent Spore fallout, the mainstream position is that “DRM is not the end of the world” and that you are a kind of Stallmanesque radical if you oppose all DRM on principle. Intrusive, annoying, or potentially damaging DRM, however, is bad and pressure should be placed on companies to abandon it. However, the vast majority believe that some form of mechanical protection is necessary in order to protect the software, music, or movie creators’ copyrights.

    So no, annoying DRM isn’t netting us any allies. It’s just making the marketplace more difficult for annoying DRM.

  80. Your little thesis fails in this case because it aspires to be a generalized description of human behavior. The people of whom I speak are not stress-averse to decision-making in any domain – other than with their own computers. However, it is quite true that they are in no sense hackers.

    It’s fear, plain and simple. They’re afraid the thing will break if they do the wrong thing. They’re used to living in a world where consequences where proportional to action: small goofups lead to small consequences, big goofups lead to big consequences. At a computer, oftentimes the tiniest slip-up can erase all your data, or at least the perception is there that that could happen. In the days before real operating systems, poking a byte into the wrong memory location could destroy your expensive equipment. Which, of course, made those machines so much more fun. :)

    If you cannot see under the hood, perhaps you can convince yourself that there is an intelligence inside somewhere – sort of a Turing Test or a Turing Illusion. Maybe that is what is at the bottom of this proprietary software with its IPs, DRMs, etc., an illusion for profit.

    You’re right, and I think people fear “thinking machines” for the same reason they fear aliens: they cannot be reasoned with in a human-like way (which oftentimes means being bribed or cajoled; as expressed in the discussions of economics, humans are far from rational). IBM established the tradition of turning this fear into a profit generator. Even as late as the PC they were playing all sorts of language games to deliberately confuse people. They sold — at considerable markup — a peripheral for a PC called the Data Migration Facility. I was going to say it was just a serial cable but apparently it was kind of a null modem for the parallel port. You connected it between your new IBM computer and your existing computer and presto! You could now transfer files between the two machines with the included software — something you couldn’t do before, certainly not with a $10 cable from Radio Shack and a copy of ProComm.

  81. Ken Burnside:
    > There is a lot of cognitive research that indicates that every decision you make in a ’sleep-wake’ cycle increases your carried stress level.

    Your little thesis fails in this case because it aspires to be a generalized description of human behavior. The people of whom I speak are not stress-averse to decision-making in any domain – other than with their own computers. However, it is quite true that they are in no sense hackers.

    You’re being blinded by your own hacker nature.

    To them – it’s “too much detail” to absorb. It’s like going back to a college level class that they sort of rote-regurgitated their way through.

    I installed Ubuntu and Windows XP on a dual boot system over this last Sunday for a bright, but non-techie friend who had gotten a Windows box as a hand me down computer from her brother. None of the data on the machine needed to be saved, the thing was full of crapware and malware.

    Windows XP, to SP 3, took 45 minutes to install. It took another 10 minutes to install her copy of MS Office, and another 5 to download FireFox. It took another 10 minutes to get the UI tweaks in place (including hiding the icon for IE, uninstalling Outlook Express) and making sure that FireFox was the default browser and Gmail the default email app. I installed AVG and LavaSoft AdAware to run on system startup, and to do deep scans every Friday morning at 7 AM if the machine is on – another 15 minutes.

    Wireless networking worked without my having to do anything; all apps were set up with an Admin account, and her login was for user level access. Her 7 year old Brother printer was recognized by the driver automatically, as was her digital camera.

    Ubuntu took the same 45 minutes to do a base install. Wireless networking didn’t work; I had to boot into XP to download the wireless driver I needed. Once wireless was up, I was able to tell Ubuntu to go download its patches – which took another 2 hours, but did install Open Office, and it had Firefox in from the start. Her printer got generic PSL 2 drivers, which sort of work, but output is noticeably different. Her digital camera still doesn’t show up as a mountable drive on a USB port (Canon camera). I ran out of time to get that installed, and may do it next weekend. Again, her baseline is “Apps need to be installed from the Admin account, log into this account for everyday use.”

    So, Windows was about 1.5 hours to set up from bare metal, on a machine I’d never seen before. Ubuntu was a bit over 5 hours all told with all fiddling, and it installed things that I have no CLUE what they do. I don’t doubt that someone with more experience with Ubuntu could’ve halved my time on this, primarily by whacking through the “download all patches” routine to only get the stuff that’s needed.

    We’ll see which OS she’s using around Thanksgiving.

  82. Ken, did you run a full Microsoft Update on that XP install? I’ve had to install a number of Windows XP boxes at my job–mostly on Pentium 4 boxes–and there’s no way on earth I could do a base install of XP and Office in an hour and a half if I had to run Microsoft Update. The thing takes at least an hour–not kidding here–to load, and since we have don’t have SP2 or SP3 install discs, I have to do it several times. I’m not sure why it’s so low–I remember it being a bit perkier in years past–and we could, of course, just download the updates in the background and install them at the next convenient point… but you could do that with Ubuntu as well, couldn’t you?

    Also, I doubt this’ll be that much consolation, but I don’t think Canon cameras appear as mass storage devices; if they do on Windows, it’s because the camera driver includes a filesystem driver. You can get a similar effect with gphotofs, if you really need to browse the camera as a filesystem rather than just import all of the images on it when you plug it in automatically.

  83. grendelkhan:

    The install media I had for XP Home was XP Home, SP 2. It took about 20 minutes to do the raw install and 25 minutes to suck down what it needed for SP 3. Office was 2003.

    The install media I had for Ubuntu was the LiveCD for 8.04.

  84. Grendelkhan, if you have to install Windows XP very often, you can make your own SP3 install disc. If you have to do even 3 machines afterwards, it will save you time and frustration. You can do it by hand, which I’ve done once, but I prefer using nLite as it lets you customize quite a lot of things and is incredibly quicker and easier. It can also theoretically let you pre-install hotfixes and updates.

  85. > My wife adds that you pretty much have to catch your lawyer that young, because once she’s got a > job she won’t have time to build a relationship.

    Untrue. The better bet is to seduce / steal her away from her first husband after she has begun to enjoy some success at her career, and she has started to tire of her first husband. You can just be her “boy toy”, if thats your thing.

    esr has even written about this effect.

    it helps if you find her physically attractive, of course. This does limit the field of play, somewhat.

  86. Jeff Read:
    > you are a kind of Stallmanesque radical if you oppose all DRM on principle. Intrusive, annoying, or potentially damaging DRM, however, is bad and pressure should be placed on companies to abandon it. However, the vast majority believe that some form of mechanical protection is necessary in order to protect the software, music, or movie creators’ copyrights.

    Clamping a DRM chip into devices which control access to copyrighted media is just “the foot in the door” angle, the prelude to the DRM (and friends) being grafted into every device and every bit of software imaginable.

    It is roughly comparable to the “Sudatenland” angle. Take an aggressive move then make a somewhat plausible-sounding case for the aggression, insisting that the act was designed to protect something or someone.

    Hitler: “By annexing the Sudatenland, we the German people are not establishing a Greater Germany. We do not intend to use the resources of this coal and steel rich region to fuel our war machine. Nor should anyone contemplate this seizure as presaging any future act of aggression, such as the invasion and occupation of Czechoslovakia – as a whole. The German People and the people of the Sudatenland are ethnically continuous. They are our brothers. We need to protect them by extending German rule to them.”

    The vast majority: “Ok. Give him the Sudatenland. To oppose the protection of an ethnic minority is truely the mark of radicalism. There will be peace in our time.”

  87. >> There are people who pick up trash or dig ditches their whole lives
    >> for very little money. It’s a little tough for me to feel Eric’s pain here.

    Bret, I’ve heard that line before. It looks like you’re either forgetting or incorrectly assuming important points. Ditch diggers and programmers are not created equal. Nobody wants to be a ditch digger, but some people just can’t do complicated things. Anyone can dig a ditch. Not everyone can think.

    However, if you prefer to identify on the level of ditch digging, this scenario might help you understand: Imagine your ditch digger doing his job with a Proprietary Teaspoon and desperately dreaming of a Free Shovel…

  88. Jeff,

    “For a variety of reasons, our culture is engineered to prevent that from ever happening, from childhood on forward.”

    See, the capability and willingness to figure out hard problems requires a special kind of personality: one who does not have much respect for authority or “the way things have always been done here”, but does have a lot of respect for reality, the laws of logic, the empirical laws of the given system in question etc. There is a very, very thin line between respecting common sense, which is a very useful tool in those cases when you don’t have enough information to design a fully rationalized way of solving a problem, and respecting “conventional wisdom”, which can be quite an obstacle of innovative approaches. It requires both a self-confident drive and self-control. It requires you to use your imagination, but never let it run away. At the end of the day, it requires the capability to understand fine distinctions, and not to think in black-and-white terms.

    I suspect most people might be inherently incapable of developing this kind of personality, but that doesn’t help either that education is either based on obedience, or on the “free play of imagination” (Waldorf schools f.e.), neither tends to develop this kind of personality.

  89. Jeff,

    “The problem for end users is not that it restricts their fair use rights and adds to the cost and complexity of hardware; these things are abstractions to them. The problem for end users is that DRM is annoying.”

    Wow. Welcome to history. The loss of a theoretical kind of liberty have always worried only the intellectuals, but when it leads to preventing people from doing what they personally want to do, then the less intellectual folks have woken up to it too. Do you think the average soldier in the American Revolution cared about such theoretical concepts as taxation without representation or society as a contract? Nay. He fought because things were done to him on a very tangible, real level that he really hated. (Of course, that was the logical result of the loss of theoretical liberties.)

  90. “You under-explain why MS won. ”

    It’s very easy to explain why MS won. Linux was nowhere near usable at the time of Win95, and Apple had the nasty habit of not giving a fuck about the user’s previous investments and breaking backwards compatibility. You can still run 1988 MS-DOS games or accounting software under WinXP in 2008 without emulation, just setting up the shortcuts right. Same with Linux, but not with the Mac.

  91. BTW let’s forget the myth that Windows is easy for non-technical users. It never was. What is easy is double-clicking the link that starts your third-party accounting software, and that software is then indeed easy, because 1) you’ve been using it for 10 years 2) they’ve been developing it for 15 years. It’s perceived easiness came from NOT BREAKING BACKWARDS COMPATIBILITY and thus letting the third-party vendors and the users do what they did before. Windows philosophy was the enlightened, liberal kind of absolute monarchy: let business as usual continue and you can people will gladly pay for that “privilege”.

    “I first heard about this from one of the developers of the hit game SimCity, who told me that there was a critical bug in his application: it used memory right after freeing it, a major no-no that happened to work OK on DOS but would not work under Windows where memory that is freed is likely to be snatched up by another running application right away. The testers on the Windows team were going through various popular applications, testing them to make sure they worked OK, but SimCity kept crashing. They reported this to the Windows developers, who disassembled SimCity, stepped through it in a debugger, found the bug, and added special code that checked if SimCity was running, and if it did, ran the memory allocator in a special mode in which you could still use memory after freeing it.”

    http://www.joelonsoftware.com/articles/APIWar.html

  92. Ken,

    “What’s the natural tendency in that regard? Shamanism. Get an expert to placate the spirits of drivers and kernels for you so that your magic box does what you want it to.”

    Exactly. EXACTLY. You are more right than you would think. See, before the age of science people thought about Nature in anthropomorphic terms. Everything is guided by invisible sentient beings, let’s be on good terms with them. There is no mechanical predictability, no cause and effect, they forces that direct everything either like you or not. It’s called superstition. With science it gradually disappeared, but computers brought it back: the computer is a “thinking machine”, sometimes even looks as if it had a personality, and even programmers talk about software in anthropomorphic terms: “It complains about so-and-so” etc. To a user it’s more similar to a temperamental, capricious spirit than to a predictable machine.

    Therefore superstition is back. People regard cars and microwaves as predictable even when they are LESS user-friendly (Blinking yellow light with some pictogram? It’s 2008, why can’t the car *tell* me what’s wrong in *words*?) than computers. But computers *seem* to exhibit a kind of pseudo-sentience, a kind of personality. Even when they are friendly… they are seen as friendly just because they are in the mood to be. They can change their “minds” and turn malicious… therefore, go get a shaman, even when it looks friendly, who knows what “he” ‘s up to… this kind of reasoning.

  93. Shenpen, your last point is exactly what I was getting at when I said people fear thinking machines for the same reasons they fear aliens. Good show elaborating on that point.

  94. Shenpen:
    > before the age of science people thought about Nature in anthropomorphic terms. [] There is no mechanical predictability, no cause and effect, they forces that direct everything either like you or not. It’s called superstition.

    There is plenty of predictability in nature: the tides, the seasons, eclipses, phases of the moon, the motion of the stars, etc. However, pre-scientific minds did attribute the periodic (re)appearance of these events to superhuman mentalities. A god – with his mind alone – made the waters rise as he wished them to rise. (The first Turing Delusion.)

    > even programmers talk about software in anthropomorphic terms: “It complains about so-and-so” etc. To a user it’s more similar to a temperamental, capricious spirit than to a predictable machine.

    Programmers (I hope) speak about the “behavior” of computers in terms of as if they are sentient beings. Else, we are left with another installment of the Turing Delusion.

    > superstition is back. People regard cars and microwaves as predictable even when they are LESS user-friendly

    Superstition never went away; It may have been more self-consciously submerged below the surface in reasonably educated sectors of the population than in the past, but it is probably a predisposition in-built into humans.

    Hooking up cordless phones is more taxing intellectually than hooking up a PNP device to a computer. No-one ever demanded that I haul *ss over and fix their cordless phones. What I am supposed to believe is that cordless phones lack a certain ineffably esoteric property, characterizable a proto-mind or mind, which “the little sensorium within the computer” has. Yeah, yeah, yeah.

    Then again…

    My boss ordered me to “find a way” to make the GPIO registers in a Sokeris card interact with a device which checks the validity of credit card numbers. Nothing happened at first. But somewhere along the line, the device clicked, flickered and whirred. I said, “OMG. This is occult! I could not have done this! It’s alive! It has a mind of its own!”

  95. :-)))

    “He got me other jobs, and kept telling everybody what a
    tremendous genius I was, saying, “He fixes radios by *thinking*!” The whole
    idea of thinking, to fix a radio — a little boy stops and thinks, and
    figures out how to do it — he never thought that was possible.”

    http://www.gorgorat.com/

  96. esr > I pointed out previously that my 70+ year old mother now uses Linux and Firefox every day. She finds it simpler and better than the Windows machine it replaced. Thus I refute you.

    Adriano > And your mother is a representative of _all_ computer users and especially developers. Of course. From the single datapoint of your mother we can extrapolate that open source IS THE BEST, GODDAMMIT.

    My 80 year grandmother uses Linux too. She can surf the internet, see emails and talk with her sons, all using open source software. She used to have a windows machine and called me every single week to fix that stupid system. From one year until now, with Linux, she didn’t have any problem at all.

  97. Completely off topic:

    Linus has a blog now, and in his third entry he calls the winner-take-all two-party American political system a “fundamental design flaw”. Would be inclined to know ESR’s thoughts as to whether this is truly a flaw and if so, how does it not prevent the US from being the best country EVAR.

  98. Another offtopic question: Clarke’s Third Law: have you ever encountered a technology sufficiently advanced that for a moment it felt like magic?

  99. > Linus [] calls the winner-take-all two-party American political system a “fundamental design flaw”.

    The flaw(s), if they are by design, did not originate with the beginning of this country. No Vice President was selected by a presidental candidate. The person who racked up the second highest number of vote tallies in the presidental election became installed as the Vice President. Since the winner and “placer” were (usually) rivals from different parties, this scheme intentionally prevented a monopoly over the executive branch by one party. The executive branch was designed to be checked and divided. Today, the mere mention of this is taboo.

    The two party system is nowhere mentioned in the constitution, but it may have been a logical outgrowth of some constitutional precepts.

    The electoral college has been made to confer a “winner take all” outcome and mentality over the executive branch, but only because Vice Presidents are now selected by Presidental candidates, not the voters.

    If Al Gore (or another Democrat) were GW Bushes VP, the policies, decisions and behavior of the US government over course of the last 8 years would have radically dissimilar to what they have been.

  100. Kheper & Jeff,

    Every system in which you vote on individual representatives (as oppose to party lists) leads to a two-party system, because people don’t want their vote to be lost (to be spent on a candidate who has no chance of winning) and therefore will always take a look at the two most popular candidates and vote on the one they hate less. This creates a two-party system.

    The solution that is a change in the electoral system so that half of the mandates are won on party lists and not by individual candidate. So, if 5% of the people of the given country vote on a party, they get 5% of that half of the mandates, therefore 2.5% mandates. Thus, votes are not lost and people vote on smaller parties too.

    Such a system can prevent a two-party system, but nevertheless it does not mean that it’s better. In a such a system this half of the candidates do not have any personal loyalty to their voters. Voters voted on the party list, not on them. They got their mandates only because the party gave them a good position on the list. Therefore, they are loyal to the party and not to the voter. Such systems are in Germany, Israel, Hungary etc.

    Therefore, such systems tends to reinforce party loyalty which I consider a bad thing. In such systems there are few disagreements with the party line. Ron Paul would be unimaginable. Therefore, the two-party system of US/UK/France may be preferable: two parties are not enough, but at least the representatives seem to think for themselves, more or less, have their own ideas, and not just toe the party line.

  101. ESR, is your mom the equivalent of “Aunt Tilly?”

    God help her if she ever wants to install a new printer with CUPS, you know darn well she will be calling….

  102. OT: ESR, what about doing a scifi topic for your next post? You said you were going to do a post deconstructing Philip K. Dick. Also, have you read the latest Neal Stephenson novel, Anathem?

  103. I’ve always been a fan of Australian Ballots.

    (If you’re not familiar with them – you divvy a certain number of points between a slate of candidates for each position; highest point total wins. The usual pool of points is about 1.3x the number of candidates, rounded up.

    They would probably be deemed discriminatory under the “educational requirements” laws; in essence, requiring that voters be able to demonstrate a basis of education before casting their ballots, because of abuses that ran rampant through Reconstruction and beyond in the South, is now deemed to be discriminatory.

  104. >ESR, what about doing a scifi topic for your next post? You said you were going to do a post deconstructing Philip K. Dick. Also, have you read the latest Neal Stephenson novel, Anathem?

    I still have a bit set to write “You don’t know Dick”. Haven’t read Anathem yet.

  105. >ESR, is your mom the equivalent of “Aunt Tilly?”

    Not quite. While she’s got the fluttery little-old-lady “this is too complicated for me” display down to perfection, my mom is actually way too bright to be an archetypal Aunt Tillie. My teaching strategy consists of being rude about the little-old-lady flutter until she stops, then explaining things to her carefully. Normally I only have to do this once.

  106. >Clarke’s Third Law: have you ever encountered a technology sufficiently advanced that for a moment it felt like magic?

    Hell, yes. Mobile phones are still magical to me. TiVo, a box that lets me watch whatever I want whenever I feel like it, is magic. So is the Roko player for NetFlix. I have a terrible sense of direction and poor visualization skills, so my handheld GPS navigator is definitely magical; I used to get lost on a regular basis, and now I never do.

    But the real magic is this: My great-grandfather went blind because he had glaucoma, which nobody knew how to diagnose or treat. Well, I have glaucoma too, and it was detected within months of the initial onset. Twice a year, I visit my ophthalmologist, who uses Star Trek-like technologies to scan my retinas, generate high-resolution 3-D images of my optic disk, and monitor the inside of my eyeball for any physical deterioration of the sort that robbed my great-grandfather of his sight. And for five years now, that deterioration — which would have inexorably destroyed my vision a hundred years ago — has been completely arrested by prescription medication. What kind of medication? One drop in each eye at bedtime. That’s it. One drop, and the invisible vision-destroying monster called Glaucoma is defeated and banished.

    Magic? That’s a bloody MIRACLE.

  107. Pat, I was born completely blind. Congenital cateracts. Spent the first 6 years of my life blind and in a two room log cabin with no electricity, no running water, and limited access in Alaska.

    I can see because in ’78, they did a (then new, now routine) Interocular Lens Implantation on my right eye (it didn’t take on my left, and there’s interesting neuroscience saying I’d’ve never integrated the left eye into binocular vision).

    To me, unlimited hot running water is a sign of wealth because of what was ‘normal’ for a deep imprinting when I was younger.

  108. In order to make open source programs actually usable, we’ll have to look at the ways users actually *use* them in their natural habitats. This may mean applying the anthropological tools of observer participation and in-depth interviews in order to find out how users actually make sense of their computing environment. Proprietary vendors use ethnographic methods when designing user experiences, so why can’t open source projects do the same thing?

  109. Steven den Beste had an interesting analysis of the two-party system as a noise rejection filter in

    http://denbeste.nu/cd_log_entries/2002/08/Faulttolerantdistributedc.shtml

    Except now it doesn’t work that way. What we’ve witnessed since at least 2000 is a strategy of both parties balancing their positions with respect to the other, in the manner of a Wheatstone bridge. The signals cancel out, and the noise (a handful of swing votes in Florida, say) determines the election.

    It’s kind of like the “free market”. A magnificent and noble theoretical construct, but as Chomsky points out in implementation it’s easily corrupted by the elite class and turned to serve their ends only.

  110. I should correct the above to read “now it doesn’t work that way, at least in the Presdential elections”.

  111. One could observe that most “agnificent and noble theoretical constructs” are “easily corrupted by the foo class and turned to serve their ends only”.

  112. Except that a market isn’t a theoretical construct any more than sex or hunger are theoretical constructs. If you repress rape, then what’s left is normal consenting sex. It’s a residual, something that was left when all else was taken away, not something that was constructed. Similarly if you repress agression, all that’s left is what’s normally called market exchange. It’s a residual too, so it cannot be a construct. It’s not something constructed to be good, it’s just taking all already existing human interactions and repressing the agressive ones, and whatever is left is considered a market.

    Electional rules and all those stuff are theoretical constructs indeed.

  113. den Beste seems to talk about democracy in general and not just 2-party systems.

    BTW I think democracy is a scam. There are two *honest* approaches to ruling:

    1) The libertarian one: no one should rule others.
    2) The aristocratic/monarchical one: certain people have the ability and the character to rule others and should do so. They have this ability and ethics in themselves, in their own minds and hearts, therefore, they do not represent anyone at all other than their own aforementioned qualities – rulership is their own right, not a mandate from the people.

    Now, the democrat sazs the majority should rule others i.e. in other words themselves – it’s such a crazy idea that I can hardly imagine anyone can really mean it seriously. F.e. either you decide yourself what to have for dinner (libertarian approach) or have an expert prescribe a strict and healthy diet for your (aristocratic approach), but would you have your neighbours vote upon what should you have for dinner? That’s about the worst possibe way to decide it, really.

    I can’t imagine that anyone *really* wants the majority to rule *him*. I find it hard to imagine a person to gladly and wholeheartedly submits, not to another person, but to a mass, to a crowd.

    Instead what democrats wants (small-d so it includes more or less all modern political parties) is that he himself rules others, but does not have to guts to own it up and say *honestly* that yes, I want to rule because I know what’s good like an aristocrat or a monarch would do. Instead a democrat hides his desire to rule behind the screen of wacky slogans like “the will of the people” and wants to disguise his rulership as “representing the people”. So basically the democrat is a very dishonest kind of would-be aristocrat who does not dare to openly admit that he wants to rule.

    Aristocratic and monarchical governments are always limited (f.e. low taxes) because he who says he rules because he himself, by himself, by his own personal faculties knows what to do, he who does not represent anyone else, he can say that he knows what to do in this thing or that thing but he can’t say he knows *everything*, everybody would think he is a madman if he would attempt to appear omniscient. He can be an expert in one thing or another, but cannot be an expert in everything, so his rule must be seroiusly limited and small.

    But the democrat does not say he rules because of his own personal faculties and qualities. He says he does not follow his own will and does not make his own decisions: he represents “the people” and it is the “will of the people” who makes the decisions, not him. Of course it’s a scam: the “will of the people” does not exist and in reality it’s the democrat himself who rules. By disguising his decisions as the “will of the people”, and concinving “the people” that they themselves as a collective are omniscient, which of course is something they love to hear, the democrat’s government does not have to be limited: he represents “the people”, not himself, and thus can and is allowed to do *anything*. Thus, monarchical and aristocratic governments are small, democratic ones are big.

    Dictatureship (or tyranny) is simply the most extreme form of democracy, *not* the opposite of it. In a dictatureship the democratic scam is simply followed to it’s logical conclusion: a Leader has absolute power, and he has it because he disguises his rule as the omnipotent rule of the “will of the omniscient people” and not the rule of his personal, human, and therefore error-prone and limited capabilities. The Leader isn’t a person, who is fallible and whose rule should therefore be limited, but he is the personification of the People or the Nation, which is supposed to be omniscient and whose power is supposed to be therefore unlimited. This is just the same idea that the one behind democracy, only on a more radical level. This isn’t a new idea – look up Aristotle. Or Platon. Therefore, I am not a democrat, for the very same reason I hate dictators and tyrants.

  114. > Aristocratic and monarchical governments are always limited (f.e. low taxes)

    The ruling class in monarchies comprised roughly %5 of the population. There was a very practical reason why these governments were limited in size: if they seized too much of the nation’s resources, the %95 of the ruled would overthrow them.

    One might be cynical. But, I can imagine, when the writing was on the wall that the monarchial days were over, the ruling elites of Europe (and elsewhere) brought themselves around to a “belief” in democracy.

    noble1: “Yeah, democracy. That’s the ticket. We’ll let the people think they run the show. That way, we could grab, say, %50 – %90 of any nation’s wealth right out from under them, all the while distributing the loot among ourselves. The beauty of this democracy racket is that the people will actually beg us to take their wealth, believing that it was their idea in the first place.”

    noble2: “Yeah, brilliant. %50 – %90 is a pretty good cut for us. No more of these strong-arm tactics, like sending our sheriffs into villages to bust heads and confiscate geese. That was always bad PR for us.”

    noble1: “One day, if we play our cards right, we could entirely wreck the economy of the wealthiest nation in history by concocting a sort of a real estate bubble, designed to collapse on itself. Then, when it does collapse, gin up fear that if we don’t get the bail out money to the tune of – I don’t know say – 700 billion dollars, there would be an worldwide, economic apocalypse. Pretty much the ultimate shakedown scheme.”

    noble2: “Well, now your just plain dreamin’. 700 billion dollars is alot of jack. The sum-total of all economic activity from the beginning of time until now has never generated anywhere near 700 billion dollars. But, this democracy racket might really work for us.”

  115. I’m not impressed. Implying that everyone over 65 is a moron may provide lots of cheap laughs, but it’s just an ignorant, vicious stereotype. In reality, a DTV converter is no more difficult to hook up than any other set-top box, and I haven’t seen any news stories about legions of old people being completely defeated by those.

    My father is in his seventies, and he has a home theater setup so complex that I can’t operate it without HIS help.

  116. Examples of proprietary technology:

    Non-standard screws in your car. A standard phillips-head won’t do it. You have to buy our special patented star-head screwdriver. Why? We want your $$$ – that’s why.

    Non-standard vaccum cleaner bags. Sure there’s no reason this couldn’t be standarized, but why? We want you $$$. In fact our bags won’t even stay standard from one year to the next so your old cleaner becomes usless after a few years.

    Any type of priner cartridge. See vaccum cleaner bags above. Oh, and also we’ll make it impossible to refill the cartridges so you have to pay more than the printer costs every time you need new ink.

    Microsoft DLLs. Ever try to get a DLL to work on Windows without a microsoft compiler? See non-standard screwdrivers, above.

    See a pattern here?

  117. Any type of priner cartridge. See vaccum cleaner bags above. Oh, and also we’ll make it impossible to refill the cartridges so you have to pay more than the printer costs every time you need new ink.

    Toner based printers don’t have this problem. Most places I deal with will either refill toner cartridges for you, or give you a trade in for your empty as they sell you a toner cart.

  118. mma,

    These aren’t examples of proprietary technology, but examples of not adhering to established standards. There are three levels of openness: open source, closed source but the implementation of open standards (f.e. web app communicating in WSDL or REST), and the third is this level, no standards.

  119. Something interesting I learned recently about the Amiga OS: It serviced interrupts corresponding to user input before any other interrupts. That, coupled with the machine’s amazing custom hardware which allowed for things like fast blits, resulted in a system that always felt smooth and fast despite running on comparatively slow 68000 hardware. Windows doesn’t do this, Linux certainly doesn’t, and I don’t even know if modern Macs to. That means today we have machines with multi-gigahertz CPUs and graphics chips with mind-boggling processing power, yet our computers feel sluggish simply because they don’t put the user first.

    That is what open source needs in order to become usable: a culture in which the end user’s needs are placed first, ahead of all other concerns. As a community we must remain ruthlessly focused on building a system that makes it easy for the user to do their work with a minimum of time wastage, otherwise we lose to Apple and Microsoft.

  120. >That is what open source needs in order to become usable: a culture in which the end user’s needs are placed first, ahead of all other concerns.

    The problem with usability for nontechnical users is that open source hackers seem to have limited and stereotyped ideas about UI design for end-users. For them, it seems that UI research ended in 1984. They need to observe users in their natural environment, something that’s hard to do over mailing lists and IRC.

  121. Jeff, BTW are you interested in the Amiga demoscene? http://www.freaxbook.com/ (unfortunately out of print now, but will be reprinted).

    It’s interesting though… there are/were two subcultures of clever people programming for fun: 1) hackers (Unix and Lisp Machine) 2) sceners (mainly Commodore). And how totally, utterly, radically different these subcultures were in about everything, their worldview, philosophy, goals, even accepted norms of behaviour… quite amazing. (F.e. hackers would be surprised how impolite sceners are/were with each other.)

  122. Jeff, maybe AmigaOS felt so snappy because it did not do as much as modern GUIs. I realized this a while ago when, for some forgotten reason, I used Firefox (well, Firebird) 0.6. It seemed to work much faster than the later versions. It seems to me that older versions of many FLOSS applications operated faster than their modern counterparts. Maybe I think this because of my yearning for ‘the good old days’, and the uber1337 gentoo box I ran back then, but applications were leaner and meaner in those days. Back then, I could play a 300-500 MB file from a CD-R, and it would load instantly with no ‘buffering.’ Sometimes, I think my Gentoo2004.1/Fluxbox/Firebird/MPlayer/XMMS setup was a lot more usable and user-friendly than the Ubuntu Hardy setup I am running now.

  123. Shenpen,

    Your comment got me thinking. I’m going to revise my position a little. But first let me clarify my previous comments. I think some people may have misunderstood.

    First -sloppy semantics on my part. I know those aren’t examples of “proprietary technology” in the strict legal sense of the term. But you see what I’m getting at don’t you? I’m making an analogy. I tried to use examples that:

    (1) had nothing to do with software.
    (2) most people have seen.
    (3) the motive is obvious to eveyone – to force you to use a single vendor, and milk you for all it’s worth.

    Matlab/Simulink is a good example of the kind of software I had in mind.

    The point is that that things like operating systems, file formats, and languages are only useful as components in other systems – just like printer cartriges, screws, and bags. The main difference is that the examples I used are nothing more than petty annoyances. But with software the problem is much worse. I mean, if I have to buy a new vaccum cleaner – so what? It’s a cheap mass-produced product. But software is generally an expensive hand-crafted product. Do you really want to be at the mercy of a sole supplier for a critical part of your system?

    Now here’s where you changed my mind. If standards are adhered to then it’s not a problem. If I can interface with some standard API then I don’t really care what’s going on underneath. If some software widget takes standard inputs and writes standard outputs then it’s a true interchangable part – not a problem.

    for example:

    .pdf = good – even though Adobe Acrobat is proprietary.
    .doc = crap – the star-head screw of document formats.

  124. I have noticed something about open source vs proprietary software. It seems to me that good original software is usually written first by a company, then later someone in open source makes a copy.

    Apple comes out with the point and click interface (copying work done at Xerox Parc) in the original Mac, Microsoft copies this with Windows, then finally somebody makes Gnome and KDE.

    Adobe makes Photoshop, then somebody copies it with GIMP. And I am sure there are other examples.

    And wasn’t OpenOffice Staroffice at one time?

    My point is that the propriatary guys make a new original piece of software, then the FOSS guys copy it. But without the for profit software companies, what would there be to copy?

    Has there ever been an example of the FOSS community making a new and original piece of software that didn’t already exist?

    Any thoughts anyone?

    ESR, I think this would be a good topic for a future post.

  125. Has there ever been an example of the FOSS community making a new and original piece of software that didn’t already exist?

    Apache, a fair number of the tools that allow internet protocols to work, and a few other things are pretty good counter examples that FOSS isn’t always playing “copy the proprietary” meme.

    However, they are also very much examples of “Software by programmers, for programmers”.

  126. mma, Torx screws came on the market for reason: Phillips (star head) and Allen (hex head) screws strip out *far* too easily. The six lobe design seems to be much more robust, I used to see them attaching side panels to Compaq server racks, and we could put a ton of torque on a relatively small screw without worrying about the wrench twisting out and scarring the equipment. Not so with either older technology.

    I’d reverse your analogy:

    .pdf = Torx – originally proprietary, now commonly available with readers and writers
    .doc = Phillips – very common but having lots of problems

  127. “And wasn’t OpenOffice Staroffice at one time?”

    StarOffice hasn’t gone away. Sun released an update of the current version in June of this year.

  128. Ken, Apache was derived from a set of patches to NCSA httpd. This is the reason for its name, since it is a-patchy webserver. Maybe, some of the Berkeley protocols like RIP might qualify, but I do not know. Email, GUIs, etc. all existed before any FOSS implementations were available.

    Can you give some specific examples, because right now I am drawing a blank?

  129. Another thing that’s often overlooked by the open source crowd:

    People love paying for proprietary software. Especially professionals.

    Talk to any professional engineer, artist, or musician who uses computers in their work. Invariably, you will find someone who will gladly pony up hundreds or thousands of dollars for a piece of software that enables them to do their work efficiently. Things like available source code, peer review, developer community, etc. they don’t care about. They want something that works now and they will feel better having paid a pretty penny for just that.

  130. Eric has incensed me to comment. The “poor-me’s” and “enough about me, what do you think of me” comments force me to label him the elitist illuminati that he is.
    And I’m spent

  131. Eh, I’m over the crunchy cons…..

    This guy Dreher talked some crap about Sarah Palin the other day, and I thing said he was going to vote for Obama.

    He may be crunchy but he isn’t much of a con.

    He will, however, become a new favorite of the MSM, as a conservative who turns on his own always is, i.e. David Brooks, Andrew Sullivan, etc. Expect to see him invited on cable shows on MSNBC and the like.

  132. This is not what we observe to be happening, so your theorizing is dubious.

    It’s profoundly less dubious than your theorizing on the election has turned out to be…

  133. One of the main things I have taken away from reading both ‘Linux hating’ blogs (http://linuxhaters.blogspot.com/ and http://elliotth.blogspot.com/2008/09/desktop-linux-suckage-index.html) is the importance of presenting a stable, uniform desktop. Since both GNOME and KDE bot suck, I think they should be replaced with a more stable alternative. There is only one I can think of: FVWM. If good software takes ten years, then FVWM has had more than enough time. Every time I have used it, it has been stable, and it seems that all the infrastructure for a good desktop is already in place. Someone just needs to come along and create more sensible defaults and an easier configuration system. Any thoughts?

  134. From reading the two Linux Hating blogs linked to in the last post, one of the things I realized was the need for a uniform, stable, desktop API. Unfortunately, both of the major DEs (KDE and GNOME) suck. I think both of them should be replaced by a more stable alternative. The only thing I can think of to replace it is FVWM. If good software takes ten years, then FVWM has certainly had time. Every time I have used it, I noticed how stable and customizable it is. If someone could write a configuration manager and pick better defaults, it would be a serious contender. Maybe I should look into it.

  135. Phil,

    Lawl! Why do you think I have such a minimalist desktop? Fewer software components = fewer points of failure. Fvwm may indeed be as good as desktops get under linux.

    What Linux really needs is for all the major components: kernel, userland tools, graphical environment, and GUI desktop, to be engineered to work together as a cohesive unit. All of the great desktop operating systems of the past had this as a feature: Mac OS, AmigaOS, BeOS, even Windows.

    Why Linux can’t get its shit in one sock in this regard is beyond me. Oh, right. It’s that old hairy Unix “do one thing and do it well” philosophy, of which Robert Pike said “Those days are dead and gone and the eulogy was delivered by Perl.”

  136. Jeff, one of the problems with Linux, that I see, is that many of the different components (kernel, coreutils, X, DEs, etc. are created by different teams. Since all of the Linux applications are developed piecemeal, average users depend on various distributions to package a usable operating system. Maybe a better way would be for one team to develop all the core components of the system. This is roughly how the BSDs do it. If Linux had followed the BSD path, there might be fewer distros today. Oh well, it is all water under the bridge, but I think the way forward runs through the cohesive path.

  137. On the BSDs, X and the DE are still third-party and therefore subject to many of the same problems as under Linux. They have impeccably good kernel/userland integration, though, and man pages that actually make sense and are useful! Shock!

    Of the major desktop Unix systems in use, only Mac OS X gets whole-system integration right.

  138. Jeff, it is really impressive what FreeBSD can accomplish with its $200,000 annual budget. Meanwhile, Linux has had untold amounts of money shoved at it, and it is still shit.

  139. Cathedral > bazaar in nearly all cases.

    Remember Mozilla’s Great Open Sourcing? Ten years and two great code translations (Mozilla 5 to Mozilla 6 based on Gecko, and then Mozilla 6 to Firefox), and the best browser (Opera) is still closed source.

  140. and the best browser (Opera) is still closed source.

    I am not sure if it is the best browser. Granted, I have not tried it in 6-8 months, but the last time I tried it, it did not seem to have any features that Firefox did not have. Alright, it was a little bit smaller, and scrolling was a little bit (not too noticeably) faster. However, it lacked a lot of the cool features provided by Firefox extensions. It had a content blocker, but you had to remove everything manually; I still have not found a better combination than Firefox+Adblock+Adblock Filtersetg.updater (or whatever its name is). I guess Firefox’s major strength is its customization, and since (last time I checked) Opera had approximately the same market share as Netscape Navigator, nobody cares about customizing Opera. It just relates back to what Pete Bessman said long ago, platforms don’t matter; it’s what’s on the platform that matters.

  141. > Cathedral > bazaar in nearly all cases.
    >
    > Remember Mozilla’s Great Open Sourcing? Ten years and two great code translations (Mozilla 5 to Mozilla 6 > based on Gecko, and then Mozilla 6 to Firefox), and the best browser (Opera) is still closed source.

    If you’re going to make a browser open-to-closed-source comparison, why not use IE as your closed-source example? It’s the closed-source browser with the biggest market share, just like Firefox is the biggest open-source one (I think). You have to give a better example than that.

  142. Tom,

    If you’re going to make a browser open-to-closed-source comparison, why not use IE as your closed-source example?

    You’re right, and to be completely honest I was unfair — KHTML has gotten really really good, good enough for Apple to take notice.

    Phil,

    nobody cares about customizing Opera

    Maybe that’s because Opera users want just a browser that works.

  143. >> Maybe that’s because Opera users want just a browser that works.

    But half of Firefox’s appeal (for me anyway) is that it’s not just a browser, it’s a platform for writing and using third-party plugins.

  144. > From a repo in the basement, in a locked filing cabinet, in a disused lavatory with a sign on the door that reads Beware of Leopard.

    Well, I cannot read minds, but my guess is that the glibc developers – rationally – do not want pedestrians to recompile and install new glibcs.

    It is quite likely that the computer will not boot after building glibc from scratch.

    My old boss would build and install glibc on production servers! I begged him not to do so, but his response was “There are security holes in the outdated glibc!”. 9 out of 10 times it ended up in a catastrophic mess, which I had to clean up. I told him, “Better a security hole than the likelyhood of nothing: no security or insecurity due to the failure of booting.”

  145. >Abraham Serafino Says:
    >Firstly, Linus is also from Sweden;

    I believe he is from Finland, not Sweden.

  146. RE: backwards compatibility,

    My first browser was AOL whatever, so I never experienced the pre-commercial WWW. To get a glimpse of history, I decided to try out the Mosaic browser. I discovered an old attempt to port the code to a ‘modern’ Linux distribution, but I could not get the source to compile. On a whim, I downloaded the static binary from NCSA’s archive site. After extracting and ‘chmod +x’ing it, I clicked on the binary, and it ran just fine. I could not get it to access the net, however. I wonder what is wrong? Anyway, I was surprised a twelve year old Linux binary would run, so I had to tell all of you about it. It works on Ubuntu 8.04 AMD64.

  147. Re, “’I’m describing her situation in this much detail because I think my mother is in fact representative of a large class of users. Linux on some recycled old hardware is an excellent fit to her needs. Granted this wouldn’t have been true as recently as two years ago, but Ubuntu has been doing excellent work on packaging and polish. The despairing cry that we’ve gotten nowhere since 1995 is nonsense, and my mother is proof.”

    I’ve found that there are typically 3 classes of users (of course, like any generalization, this vastly over-simplifies a complex, dynamic system) – those like your (and my!) mother who surfs the internet, checks and sends email, and maybe composes and prints word-processor documents. For them, a nicely packaged linux distro (Ubuntu & OpenSuse come to mind off the bat) is often easier than Windows, especially if they have not used Windows before. (imo very little is intuitive when it comes to IT, we just consider what we are used to intuitive, even if we are used to bad habits) In terms of security, installing software, etc, a distro like Ubuntu offers a nice, safe, easy environment. Then there are, at the other end of the spectrum, developers like many of us on here. For me personally, I could never work outside of a Unix-like environment (whether that be linux, bsd, opensolaris, or osx) – simply put, it would drive me batshit crazy. However, it’s that intermediate group – people who want to play computer games, and fool around with their machines a bit, but don’t want to do any developing, refuse to/are scared of using a command line, and generally want things to set themselves up (eg, they decide to install something, they want it to configure itself etc). For these users (who, I would venture to guess, are the largest segment of computer users in the West) a linux/bsd/opensolaris/whatever unix-like distro is a bad fit (in their minds)- they would need to put in the work to get the most out of it, and they aren’t willing to do so. It’s that unhappy medium that I think needs to be addressed if the goal for any particular linux distro is widespread adoption. Personally, I’d focus more on getting children in the developing world access to FOSS systems – then they’ll never grow up thinking the bad habits of Windows are “intuitive” – not to mention how much cheaper/more sustainable it would be… but if we’re talking about linux adoption in the developed world, I think the task at hand is getting those medium level users in a position that they can feel empowered without having to do anything. That, or somehow cure the West of an absolute willful ignorance that is destroying it from the inside out…

  148. v_krishna:

    and don’t forget the class of users who want to:

    * compose music
    * do nontrivial digital artwork (especially for print media)
    * edit a movie
    * design a machine part

    etc. etc. All of the modern, fully functional, usable software packages that do any of these things are proprietary, and exist only on Windows or the Mac. Fact of life.

  149. v_krishna: you mention the kind of people who would feel naked outside their Unix development environment. There’s a group at least as big of people who’d feel lost outside their Windows development environment. Mono helps, and so do good scripting languages, but they do exist.

  150. If I understand correctly, you hate proprietary software because you had bad experience 20 years ago and you’re emotionally scarred by it. Um… what relevance does that have to the rest of us?

    As for me, I care only about what enables me to do what I need to do as quickly, elegantly, and painlessly as possible. And open source software has been, almost across the board, absolutely abysmal in delivering that.

    I like the idea of open source software. I like Linux as a server OS. But in the 10+ years I’ve used open source software on the desktop I have not once seen a product that compares to proprietary tools. So I don’t waste my time with it anymore.

  151. Jeff, maybe AmigaOS felt so snappy because it did not do as much as modern GUIs.

    Maybe you’re right. However, comparing apples to apples, I defy you to check out AmigaOS 4 if you can, or barring that, AROS (which is open source and easy-easy to set up, they provide VMware images and everything) and have a good look at a modern Miggy desktop. See if its GUI doesn’t do anything essential that a Windows XP GUI does.

    And then recall that the entire OS with all of its tools, libraries, and GUI desktop takes up less than 100 MB of disk space, and requires perhaps 128 MB of RAM, if that.

    Once again, necessary sufficiency. Using the tools you have to achieve the job you want to do, without waste or excess. Not exactly a core American engineering value these days.

  152. Jeff, have you ever checked out Menuet, which is a 32/64-bit graphical operating system that can fit on a single floppy disk?

  153. My epiphany on closed source came in 1992 (I think) at the OLE Developers Conference in Seattle. This was the first opportunity for developers to view what later became the COM API. I was excited about developing an IDE and developer tools on Windows. At the end of the conference the MS representative invited attendees to step into the foyer where they could see all the products, developed in secret, from all the major vendors – Development tools, IDEs etc.

    At that point I decided that this was a mug’s game and stopped windows development.

  154. Jeff, you seem quite knowledgeable regarding the deficiencies of FLOSSdom. If you want, I could post a rant from you regarding Linux/Unix/Hackerdom/etc. on an appropriate site. Email me if you are interested. Elzair The Sorcerer (NOTE: ALL one word and no caps) A_WITH_CIRCLE_AROUND_IT GMAIL PERIOD COM.

  155. @Frippidee If proprietary software didn’t require me to give up my freedom, I might like it more. Yes, Linux ends up being more chaotic. But remember that proprietary software has a head start, and it will take some time to catch up. Giving up on Open Source because it’s still catching up is precisely the wrong thing to do.

  156. Why does an interesting discussion so often desolve into an argument by so few participants?

  157. Mr. Raymond,

    I’m with you on your views: I abandoned Microsoft with similar (though not as a programmer) disgust 17 years ago. But what I really wanted to write here was that as an English teacher–and one who dabbles most frequently in creative and expressive writing–I have enjoyed every diatribe and rant and essay of yours that I’ve read. Thank you for this article, and thank you for this website.

  158. Defintiely an interetsing article. I am one for more of communal sharing, but I am not a tech guy by any means. I deal with science and nanotechnology. In the science word, we share our findings free of charge. Why not in the business world as well for greater good?

Leave a comment

Your email address will not be published. Required fields are marked *