Wednesday, November 2, 2011

what nobody using Linux gets about usability

nobody cares what makes your operating system work. they don't want to perform steps, or look up guides, or learn how to do something. everything they want to do should be completely intuitive.

in Linux, it is never intuitive.

programs are usually some weird alternative program with a strange name that isn't intuitive at all. Linux and Mac have cross-platform applications which everyone just knows about. Linux doesn't, in general. i mean sure there's apps, but nobody in Windows or Mac uses open source programs. think about that for a minute.

you always need to know what kind of 'package' to download, and some weird method of installing it, and possibly 'dependencies'. nobody in Windows knows what the fuck a dependency is, or why they'd ever come into contact with one.

nobody in Windows ever uses a console. "What is this, DOS?" it's fucking retarded. the mere idea that a shell even *exists* on a Linux computer is kind of ridiculous. the idea that command-line programs are so robust and friendly to a command-line user, just serves as a crutch for the techies who have no easy way to do the same thing from the GUI.

the motto of Linux development should be: No More Console.

the second motto of Linux should be: No More Knowledge.

a complete idiot should be able to use a computer with no more than 2 minutes of playing around. it should also be the least scary as possible for them. usually Linux GUIs are incredibly complex and scary for users. they also usually look incredibly toy-like and cheap, but that's not really a usability thing.

Linux should work like the iPad.

think about that.


  1. Are you freaking kidding me?
    First off, I use a console in Windows all the time. It's called "PowerShell", it's accessible from the standard "cmd" command line, and I'm better at using the PS pipeline than I am at using the Unix pipeline.
    Second, I don't think that Linux exists for the reason you think/want it to exist. There are more headless Linux servers than there are Linux desktops, and in all likelihood there are more headless Linux servers than there are Windows desktops. If you can find a better way to interface with a headless server than the console, I'd love to hear it.
    Third: your comment, "a complete idiot should be able to use a computer with no more than two minutes of playing around", makes no sense. If they can find TuxCart or Solitaire in two minutes, that does nobody any good. Nobody is going to learn how to get an Apache install working in two minutes with or without a console.
    Basically: what do you think Linux is for?

  2. First of all, I generalize to mean the majority of users. We are not in the majority.

    Second, Linux exists because some guy wanted something he could hack on/use for free. It's a complete kernel with a mostly-complete operating system that comes in a variety of distributions. That is to say, it's a thing you can run programs on. A console is something you think of as a universal interface to programs, but in reality is one program with almost no user interface whatsoever (it's got neato features like "tab complete" and "colors" and "history" so it's basically a one-line text editor of sorts).

    Third, a computer should be like any other household item the whole world takes for granted, like using a dish washing machine or driving a car or using a cellular telephone. Once trained it should be organic, universal, and simple enough for everyone to be able to use with a modest 6-page manual. There's no reason for it being overly complicated to the point that a regular person can't pick it up and use it. You want to build in advanced features, fine, but they should be secondary to the thing *working like the thing is supposed to work*. Form (in terms of a form anyone can use reliably) should be the highest ideal, not function (in terms of too many god damn functions).

    I'm not advocating iPhone-style nazi simplification of user experience. I'm just saying first make it work simply and reliably, THEN make it a beautiful and unique fucking snowflake.

  3. Oh and there's many many ways to interface with a headless server. LOM, IPMI, DRAC, VNC, SSH, SNMP, and a variety of KVMs and other proprietary solutions exist. Pick one that works best for you and your operating system and hardware and network and administrators.