Why Linux has failed, and why Linux will fail again

Warning: Incoherent rant ahead. Triggered after spending so long looking for a simple calculator in KDE that I forgot the numbers I was supposed to do calculations on.
I am writing this on a Linux box. Running RedHat-something. I personally may like Linux, but on the desktop, Linux has failed, and it will continue to fail. Here’s why.


h3. Joe Phobic
Let’s imagine a user, Joe Phobic. Joe suffers from mild to average technophobia. His level of knowledge with computers is something like this:
* He knows how to surf the web.
* He knows how to watch videos with his computer.
* He does his budgets in Excel.
* Write letters to his family using Word.
* Send and receive e-mail, using Outlook Express.
* Watch videos/DVDs and play music/MP3s.
* Play the games included in WinXP.
Joe Phobics computer came preinstalled with Windows XP and MS Office, and the only other software installed is Winamp and Kaaza, because he wanted in on the MP3 revolution he had read so much about in newspapers. Joe had his slightly less technophobic friend Mark Geekson install this software for him.
Joe has:
* Never customized windows. Not even changed the default resolution.
* Never touched the control panel.
* Never used the command line.
Like it or not, this _is_ pretty close to the average computer user.
We, as in “users of alternative operating systems and platforms”, may whine all we want about Joe and his likes, especially when we have to live with their spyware- and virus-infested machines hammering our firewalls and mailservers with crap. Still: Joe is using the operating system that’s best for him.
Ok, I heard you scream all the way from Austin, Texas to Sydney, Australia. Yes – Joe Phobic _is_ using the system that’s right for him
h3. The “Simple” Factor
While Linux-whiners may argue all that we want that Windows is not about freedom, I’ll state the opposite: Windows is _all_ about freedom. Windows is freedom from complicated choices, it’s freedom from having to learn something new, something not really relevant to the task you _want_ to do.
This is where Linux fails. Miserably. Linux is about freedom. A different kind of freedom. It’s freedom to choose to use any one of seven text editors to perform the same task. It’s the freedom to choose any one of several ridiculously complicated Window Managers. It’s the freedom to choose any one of two or three IDEs. It’s the freedom to install lots of perpetually unused servers.
Linux is about freedom for the technocrat with the open-source gene. It’s about freedom for the people that like the complexity Linux offers.
h3. Calculator, calculator, a kingdom for a calculator
A couple of hours prior to writing this article, I needed a simple calculator, so I started searching. And I continued searching. By the time I had found the calculator I was looking for in KDE’s Start Menu-equivalent, I had forgotten what I was going to calculate.
Instead of the calculator, I found some 30 odd games, several different text editors (Kate, VIM, Emacs, KJots, KNotes. Pico, Joe and others are also somewhere on this computer). Joe Phobic doesn’t understand why there are several different programs to perform the same task. He doesn’t want to understand.
I found several tools to assist me with software development. Joe Phobic doesn’t understand what an IDE is, nor does he want to understand. He doesn’t want to know about debuggers, compilers, profilers.
I found a tool to measure mouse pointer speed. I don’t understand what use that tool could possibly be to me, and I don’t expect Joe to understand. Neither do I expect him to enjoy such a tool.
I found four different web browsers, Konqueror, Galeon, Mozilla and Opera. Three of them were preinstalled here. Joe doesn’t understand why he needs four different programs to surf the web.
I found two IRC clients, two ICQ/AIM clients, four mail clients (five if you count Emacs), three newsclients (four if you count Emacs). Joe doesn’t know what IRC is. He might now what ICQ and AIM is, but it’s also likely that he’ll wonder “Where is MSN Messenger?”. He doesn’t want to know that he can use GAIM to connect to MSN. And no. Joe Phobic doesn’t know what Jabber is, neither does he _want_ to know what Jabber is. He just wants to be able to chat with his friends.
I could spend a lot of time talking about system tools in Linux, the various control panels and window managers. Suffice it to say that Joe Phobic doesn’t want to know about this. He doesn’t understand why he should choose between two window managers. Neither does he know why he should have a choice of 34 different looks for his Window Manager.
h3. Conclusion?
Joe Phobic doesn’t want to have to consult the manual to use his mail program. He doesn’t want to feel stupid when he opens his mail client. Joe simply wants to be able to turn his computer on, log on to the Internet, write that mail, visit that website, write his letters, play his videos, listen to his music.
Joe doesn’t care if his software is perfect – after all, he has been using Outlook Express, Internet Explorer, Word. He has also been infected by all sorts of spyware, trojans, worms and viruses. Something his geek friend had to fix for him. Joe heard Mark Geekson mumble something along the lines of “Damn Microsoft”, but he just shrugged, and forgot all about it.
So, if you are going to get Joe to switch, what do you need?
First of all, you need an ultra-simple installation. Not to co-exist with Windows, but to migrate his Windows installation. Bootloaders with names such as “lilo: ” and “grub” are just scary. And when I say migrate, that includes mail, bookmarks and documents.
If Joe for whatever reason should want to revert to Windows and uninstall Linux, he should have the opportunity to do so, without any hassle. Just a confirmation dialog or two, a root password, and “Ok!”.
Joes computer should update automatically whenever he is online. Much like Windows Update does these days.
Joe should have just the programs he needs, and he shouldn’t have seven different programs to do the same job.
Joe should have what he is getting today: Simplicity and freedom.

20 Comments

  1. Dilbert J. Granlund

     /  2004-01-21

    bq. Joe Phobic doesn?t want to have to consult the manual to use his mail program.
    Maybe, if he would consult the manual from time to time, we wouldn’t have a new VB worm every week.
    And maybe, if Joe would care to learn the concept “word processing”, and not just the product “Word”, and maybe, if he would learn HTML and not just the product FrontPage …

  2. I agree with you Arve. For the average user, I’m thinking about people like my mom and dad, the computer is totally not about choice, but about use. Even Windows offers too many choices and needs too many settings.
    For Joe Phobic, using a browser or e-mail program should not be more difficult than using a phone or a remote control. Hence, there are way too many buttons, menus, and settings in each and every e-mail program I have ever seen.
    While I understand that the advanced user may want to use those options, I think that they should be hidden (under the “advanced” button?) and the basic interface should be bulletproof and as simple to operate as a toaster.
    Yes, this would “dumb down” the computer to the level of any other household appliance, but let’s face it, Joe Phobic isn’t into computers anyway, he just wants some very limited use from them. I bet any distro that would implement this approach well, would quickly make some headlines and inroads.

  3. «So, if you are going to get Joe to switch, what do you need?», you ask. Wrong question. Joe isn’t going to switch, Joe is happy – you said so yourself. And when Joe is happy, Joe doesn’t change OS!
    But up to that point, I totally agree with you, Linux packages like RedHat, Fedora and Mandrake, which is supposed to be simple and user-friendly, is just the opposit for Joe and his friends, we totally need something like the simple Linux you describes.
    But I would like to see this really simple Linux preinstalled when Joe Phobic buys his ‘puter. That is the only way it would get distributed. If he has to choose to change from what he knows and loves to something he hasn’t tried, he won’t. Simple as that.

  4. I agree with you, Arve. What one could probably (want to) see, is companies like Dell offering PC’s with pre-installed ISL (Incredibly Simple Linux) for a discount over the same PC with pre-installed Microsoft Windows.
    A discount may make people choose Linux over Windows, but if they aren’t given a choice, or if the choice doesn’t give them anything in return (other than a ticket into the complicated world of Open Source), they will choose Windows. Every time. People are habit animals.
    ISL should of course be — Incredibly Simple. It should be at least as simple as Windows, maybe even simpler. No advanced configuration, no alternative options, not anything an advanced user expects to find. All advanced features should be hidden, and maybe not even retreivable through an “Advanced” button, but by switching the OS to advanced mode by logging on as the root user or something similar.
    It would be lovely to see a Linux distro as this, and the Norwegian project School Linux goes a long way to provide this. I know it isn’t complete or perfect, but chalks out the direction easy Linux distro’s should take, and I hope some of the existing, big Linux distributors could learn something from it.

  5. exclipy

     /  2004-01-22

    Linux won’t continue to fail because user-oriented distros like Mandrake are moving in the direction you envision. I can’t say that Redhat is made for users; it’s more suited to serving.
    For example, in Mandrake 9 under the simplified menu scheme, to open up Konqueror, you do [K > Use the Internet > Browse the Web]. To start KSpread, you do [K > Use office tools > Create a spreadsheet]. Much more idiotproof than even Windows (but maybe newbies are starting to think of spreadsheets as the things made in Excel, rather than the other way round).

  6. Joe go to his shopping center.
    Joe can choose between 20 sort of cereals, 3 sort of milk, 5 sorts of Orange juices.
    Joe want to go to restaurant
    Joe can eat italian, turkish, mexiacen,…, food.
    Joe want to read a newspapers.
    Joe can choose between thousands of newspapers.
    So why Joe will not be able of choosing a program which reflect what he wants ?
    Give choice and liberty back to the user. Computer science is not stalinism, nobody will choose for the user 🙂

  7. bq. “Windows is freedom from complicated choices”
    In the same way that Stalin gave the Russians freedom from “complicated choices”?
    bq. “Joe Phobic doesn’t want to have to consult the manual to use his mail program.”
    Joe probably doesn’t even mind that his computer (via its email “program”) is contributing to a problem costing the worlds businesses [insert insanely inflated dollar amount here] every year.
    bq. “Joe should have what he is getting today: Simplicity and freedom.”
    Just like the Russians had with Stalin!
    BTW: Arve; you should try one of the new RedHats. The default install is so dumbed down that normal freedom loving (that’s freedom _of_ choice, not _from_ choice, loving) Linux users just want to cry.

  8. http://pingvin.hib.no:8080/ynnesdal/arkiv/000017.html

    Arve Bersvendsen skriver om hvorfor jeg ikke bruker Linux, hvorfor min mor ikke bruker Linux, og hvorfor Elkjøp ikke selger Linux til folk som “skal ha et tilbud på en sånn data”. Og han har etter min mening helt rett….

  9. bq. Joe probably doesn’t even mind that his computer (via its email “program”) is contributing to a problem costing the worlds businesses [insert insanely inflated dollar amount here] every year.
    Bob, Mr. Phobic probably doesn’t _know_ that his computer is causing these problems.
    I would love nothing more than to see Joe Phobic use a safe mail client, a safe web browser, a office suite and a safe operating system. Properly set up, Linux can be all that.
    In case anyone missed it, my argument is not “I hate Linux”. My argument is “We need a simpler Linux”. Even if it means that this Linux is something the hardcore user would never touch. Even if this Linux doesn’t install Emacs, VIM, GCC or seventeen WMs.
    The last RedHat I installed was something like 8.2, and while installation was simple enough for me, I wouldn’t say that installation was simple enough for the average user. Neither was the end result: I had to both download, and provide instructions on how to install several simple pieces of software.
    bq. Just like the Russians had with Stalin!
    Bob, this argumentation falls into “several categories”:http://www.nizkor.org/features/fallacies/straw-man.html of “logical fallacies”:http://www.nizkor.org/features/fallacies/guilt-by-association.html.

  10. (About Mr. Phobics computer causing havoc on the Internet)
    bq. …Phobic probably doesn’t know that his computer is causing these problems.
    Then should he be allowed to operate a computer? If yes, why should operating a computer be unlike most other things in society? I think the general consensus with most other “things” in life is that if X can’t operate Y without being a danger to himself and/or others, he should not be allowed to operate Y at all.
    (About how Stalin gave the Russians “freedom from choice”)
    bq. …this argumentation falls into several categories of logical fallacies.
    Now I definitely didn’t intend to compare you (or your views) to Stalin. I was just trying to exemplify why I think “freedom from choice” is such a horrible concept when it’s being decided for you. Other peoples inability to handle choice is /never/ an excuse to limit yours (or mine). I used the Stalin reference to show what /can/ happen if we allow others to make decisions that limit out choices. I hope I didn’t offend you – I didn’t intend to 😉

  11. (On unsafe computers)
    bq. Then should he be allowed to operate a computer? If yes, why should operating a computer be unlike most other things in society?
    Yes, he (or she) should be allowed to operate a computer. The Internet is probably one of the most socially important inventions ever, and we shouldn’t limit access to only those who we deem “worthy”.
    The responsibility rests on the developer. A responsibility not to create fundamentally unsafe software.
    bq. Now I definitely didn’t intend to compare you (or your views) to Stalin.
    I am not _that_ easily offended. 🙂
    bq. I was just trying to exemplify why I think “freedom from choice” is such a horrible concept when it’s being decided for you.
    I was just pointing out that a logical fallacy does not make an invalid argument any more valid.
    The particular problem with the Stalin analogy is this: While the mode of operation for a dictator is to (violently) enforce his views and choices on his citizens, Incredibly Simple Linux is not about removing freedom of choice from the user. It’s about _offering_ freedom from choice.
    ISL[Incredibly Simple Linux] is about providing a Linux version that is as easy, or perhaps even easier to use than Windows, without having the draconian strings attached.

  12. When it comes to installing the operating system, I can live with it not being easy. Installing a new engine in your car isn’t easy either, but operating it is. Operating Linux is probably harder than installing it. That’s the wrong way around.
    I’m all for freedom of choice, and often the more choices the better, but in a newbie’s case, it’s the direct opposite, as he just wants the simplest thing that could possibly work. The simplest thing that works is not having to choose between fifty different text editors.
    We have to realize that users are different. Simple users are — simple. Advanced users are of course advanced. If you place yourself in the last category, then you most likely have wildly different needs and expectations of what your OS should contain and behave, than the simple user does.
    Hence, we need different operating systems for different users, or at least different modes in them. When a user enters a simple mode of Linux, he shouldn’t find more than one application for each task, and the one available should be the most novice-friendly (which is not necessarily the same as user-friendly) of them all.
    He shouldn’t need to care about stuff like keyboard setup, language problems (the os and all applications should come in the language spoken by the user), screen resolution, dpi, text shadowing, font anti-aliasing, installed system devices (like motherboard, harddisk controller and other «low level» hardware), etc.
    He should only need to care about performing different tasks, and these should be placed where he can find it most easilly, probably on the desktop (where often everything goes, these days). When Joe starts up his computer, the desktop should contain a set of carefully picked icons which gives him the possibility to perform all the tasks Arve mentiones above. These icons should have corresponding and self-explaining titles like «E-Mail», «Internet», «Spreadsheet» and «Word processor» — not «Pine», «Mozilla», «Gnumeric» and «Kwrite».
    Novice users don’t give a rats ass who made their e-mail client, or how cool «Pine» sounds. Heck, even I don’t really care what the applications are called, as long as I know what they do, and they do it the way I want. Give the applications understandable names, or at least understandable descriptions. What stands in the title bar of the application once it’s opened, doesn’t matter.
    What’s clear to me, is that different users have different needs, and these needs have to be answered by the operating system. Advanced users wants advanced featers and a lot of options, while novice users wants the simplest thing that could possibly work. If they don’t get this, they aren’t happy. You may argue that they don’t get this in Windows even, but they are at least closer to it there than they are in Linux. And Linux shouldn’t aim at Windows as a top goal. It should aim a lot higher.

  13. My experience is that Joe doesn’t want freedom of choice in first place. He expects things to work right away he’s used to do things. And if you want to have less trouble with all the mallware my vote would go for OS X.

  14. OS X would probably be an excellent choice if it could be installed on a regular PC. But you can’t, and buying into the whole Macintosh concept is a rather big transition (in hardware, software and not to mention way of thought).

  15. Agree with you. If you want OS X you have to spend a huge amount of pocket money also for the hardware. I would like the idea of an Easy Linux adopting some of the OS X architecture and features. Joe has no clue about apt-get, mnt, etc… He wants his programs in his program files or applications folder. In/unintstalling should be just a matter of drag ‘n drop things into that folder. One single cd containing only the most common applications like xmns, firebird, open office, etc.. should do fine.
    I’ve tested various distros so far and always got frustrated in the end. I work as an admin and I do read the manuals but the amount of time it takes to configure a linux based box for desktop use is just too much. Remeber how long you needed to tweak your RedHat system to be able to access to your ntfs partitions, listen to mp3’s, etc…

  16. Yes, it takes too long to get a Linux distro / desktop environment set up exactly as you like it.
    However, when I reinstall Windows, I’m spending the better part of a weekend turning off services, deinstalling crapware, and reinstalling my favorite apps. In the following three weeks, several times a day I spend some time fixing some small thing or the other (like my own normal.dot in Word) I forgot during that install weekend.
    But hey, Joe Phobic couldn’t care less about what I’m doing to my computer. Joe just wants his desktop and applications to appear with sensible presets with a minimum of fuss.
    And frankly, I would like that too, because every time something _doesn’t_ work, family and friends call _me_!

  17. I take it that none of you have ever tried or heard of LindowsOS. It is a Debian distro and is very easy. I did not want to pay for the Click-And-Run Subscription, so I did not install any of their easy install programs. I hated how uncustomizable it was, but that is exactly what Joe needs. If I were to help a computer-newbie get into linux, LindowsOS would be my choice.
    Also, you can buy a LindowsOS PC at some Walmarts now for barely any money.

  18. Øystein I. Skartsæterhagen

     /  2004-01-24

    When it comes to installing the operating system, I can live with it not being easy. Installing a new engine in your car isn’t easy either, but operating it is.

    No, it isn’t. You need lots of expensive lessons and both a theoretic and a practical exam before you are even allowed to drive the car alone, and still there are many bad drivers out there …

    Why do people like Joe Phobic expect their personal computers to be things they can just use intuitively, without learning anything new — when many of the other things they use every day are not at all that way?

    But I agree with Arve: there should be some really simple free operating system easily available for these people. However, the system should really be simple, not complicated and user-obsequious like MS Windows. The things that need to be complicated for the user, should be well documented, not just “eliminated” with some silly “wizard” that messes up the system while showing nothing more to the user than a dog dancing around the screen. The things that don’t need to be complicated, should — of course — be done simple. And I don’t think it’s a bad sign that some documentation/tutorial reading is necessary in order to use an OS or program, as long as the things you need to learn are centered around the stuff you want to do, not irrelevant technical details. For example, it is perfectly reasonable that a little knowledge of Usenet is required for the use of a newsreader (or of the WWW to use a WWW UA), but not that the user has to tweak configuration files just to make it run normally.

    And, finally, what I think is one of the largest obstacles for the novice who tries to use a computer: the mouse. While many may disagree with me, it is more difficult to tell a user to “move the mouse up and double-click on that little button with the strange yellow thing on it … no, not the one which looks like an ‘A’, but the other one, over there … yes, the left mouse button … no, you need to do it faster … and don’t move the mouse between the two clicks …” than just simply “type Control-x and then Control-s”.

  19. Microsoft’s XML, Open Office & Bruce Perens: Patent Threats

    It looks as if Microsoft has filed for patents in Europe and New Zealand on the XML format they use for Office documents. Ironic that part of the whole vision of XML was inter-operability and communication. XML was originally hailed as a lingua franca…

  20. Chris

     /  2004-02-09

    bq. But up to that point, I totally agree with you,Linux packages like RedHat, Fedora and Mandrake which is supposed to be simple and user-friendly, is just the opposit for Joe and his friends
    I find it funny that you guys seem to consider a common Linux distro like RedHat like, although somewhat hard to manage for the newbie, relatively simple for the “advanced” open source user.
    I’ve been trying to configure fonts on a redhat 9 box with KDE 3.1.5 and I guess I just could write a whole new section to the Unix Haters books already. And I’ve been using Unix for ten years now, compiled my first open source freeware in 89 (p2C, obtained from the newsgroups, there was no web at that time), changed each and every option in my linux kernel to get the *smallest* kernel possible, and so on.
    Well I was able to install TrueType fonts and get KDE apps to use them. Now some other (important) apps like emacs use them, just set up the .Xdefaults, this is still easy, but emacs don’t do anti-aliasing, so it really looks ugly. But well… Now still other apps like Xmule use another font, a huge ugly ridiculous font, which one I just can’t seem to guess!
    I tried all the HOWTOs abount fonts around it seems, most were last updated in ’01, looks like their authors just gave up with the issue 🙂
    I guess what Linux needs is a guy who just sits down and decides to make something *coherent* of all this (wonderful btw) mess 🙂
    Chris
    (Ed. note: typographical edit performed)