Slashdot Mirror


Open Source's Achilles Heel

Tony Shepps writes "From sendmail.net comes an essay by UI consultant Mike Kuniavsky, "It's the User, Stupid", on what might be Open Source's worst failing: User Interfaces. In short, Open Source is geeks writing software for geeks, and usability suffers... and maybe that's an inherent problem with the model. "

22 of 476 comments (clear)

  1. Perhaps we need an application UI markup language? by Fastolfe · · Score: 3

    This is an idea I've been toying around with.. Most applications have a consistent set of elements and forms. What if we built a markup language out of this, with controls and forms rendered based on a style sheet instead of hard-coded pixel values defined in the GUI form itself? Each widget could be assigned a tag and could be referenced and manipulated by the application, with the results being rendered by the UI "renderer."

    How much of this is already done using HTML and XML? Doesn't Mozilla already use an XML derivative to define its own internal dialog boxes? How difficult would it be to pull *all* formatting and location information out of these things and use style sheets to render it all?

    This would allow us to do things like run "X" apps via telnet, using a textual transformation/style sheet, rendering controls using nice ASCII characters.

    It would also let us *completely* re-do the formatting present in any application's window in a consistent manner. Move all menus to the top, all operation buttons to the bottom right, etc. Applications could come bundled with their own sets of style sheets, with broader positioning and styling done by system-wide style sheets, all the while giving the end user the option to move and resize controls to their taste. Everything could be themable, and I'm not talking just pixmaps for buttons.

    How feasible would this be to do?

  2. Re:The author's fundamental mistake by Anonymous Coward · · Score: 3

    Can someone think of an example Open Source project where the developers are not users?

    I think the more appropriate question is can anyone name an open source project where it's users are only it's developers. Obviously the developers of a program in the Open Source community are going to be users, that's only natural, but if all they care about is limiting the usefulness of the program to themselves and not creating a program that can be used by 98% of the population, then the article isn't focused on them.

    The problem that lies in most of the comments is people are getting stuck on the GUI only, which is one aspect of of the entire User Interface. As I'm sure everyone will agree, there are some absolutely gorgeous GUIs availabe for Linux and on the flip side, there are some absolutely horrendous ones. One of the problems that the Linux community will see as Linux becomes more popular with "regular" users is that there is no consistency between the different GUIs.

    However, the article discusses UIs in general and (from recollection) doesn't even mention GUIs. The user interface of a program is more than the GUI, as I stated, it's about what information do you present to the user, how is that information organized, etc.

    As an example, consider the normal installation of Apache and Sendmail for configuring. Neither have a user friendly interface to configure them, sure they're available, but you have to seek them out. For experienced programmers and users working with the configuration files is fine, get in there, make the settings, save and restart. However, when someone from the 98% of the population who doesn't have experience tries to do that it almost always ends in frustration.

    And the README files for most programs only add to that frustration for a new user because they are slanted towards those who know what they're doing and understand the slang. This is the perfect example of creating an "in-crowd" in the Linux community. If you're experienced and you know what you're doing, you're a welcome guest to the Linux community, but lord help those new users who try to ask a simple question because they'll be tossed out of the community amid cries of "RTFM." Yeah, thanks for being helpful. It certainly doesn't help when RFM is wrong, as in a case I ran up against with an O'Reilly book and one of the examples in it...check the online errata? Oh, wasn't mentioned in there, even e-mail the publisher and the author and still didn't see the correction show up.

    The fact is that the developers want to write a program that does what they want and making an easy to use interface for beginners or those less experienced then they is last on the list.

    Good, bad? I won't vote either way, it's just the way it is...right now.

  3. "the writer is wrong here, here and here.." by Skinka · · Score: 4
    I see a lot posts saying that the writer has gotten this and this point wrong etc. Seems to me that a lot of people just are not willing to admit the truth. It's easier to say the writer is wrong somewhere and then disregard the whole essay. I understand that a developer will easily get defensive if someone says the programs he has been making the last five years have bad UIs. But denying the problem is NOT the right thing to do. Instead you should try to listen to the persons complaining, even if you don't fully (or at all) agree with them.

    If we pretend that it isn't broken, no one will fix it.

    1. Re:"the writer is wrong here, here and here.." by Chief+Typist · · Score: 4
      The problem is actually quite simple to describe. Designing good user interfaces takes as much time and dedication as it does to design good plumbing (eg. the kernel, OS, shell).

      It's also difficult for someone who is working in one discipline (ie. the kernel) to understand/accept the rigors of working in another discipline (ie. UI design)

      A good UI takes years of research and design. It's not a matter of making the windows look pretty. It's making them work pretty.

  4. Shortcomings of the new Open Source UIs by David+Jao · · Score: 5
    It's funny that you cite Gnome, KDE, Mozilla, and GIMP as indicators of a brighter future for Open Source UIs. The fact is, each and every one of these programs suffers from the same mistakes as Windows:
    • Menubars are not placed at the top of the screen, making them harder to hit (remember, a menubar in the middle of the screen has finite dimensions, whereas a menubar at the top of the screen has infinite depth).
    • The taskbar on the bottom of the screen has buttons that do not extend all the way to the edge of the screen, again denying them of a potential infinite depth and making them harder to hit.
    • In many window managers, nondestructive buttons such as Maximize are placed right next to destructive buttons such as Close, increasing the chances that the user will accidentally destroy a window.
    • To proceed from a menu to a submenu, it is necessary to manuever the mouse rightward with surgical precision through a single menu line in order to get to the submenu without accidentally tripping an adjacent menu item. Compare this design with the classic Macintosh menus, which provide a triangular "forgiveness zone" to make it easy to get to the submenu without closing it before you get there.
    I could go on but I think you get the idea. The point, which was well made in the original article, is that programmers are not typical end-users and these kinds of user interface issues do not even occur to them.

    I hate the classic MacOS because it lacks memory protection and real multitasking, but of all the user interfaces in existence, classic MacOS stands out as the one UI that gets things right.

  5. A list by SheldonYoung · · Score: 4

    Some of open sources greatest successes:

    vi
    Emacs
    Apache
    sendmail
    bind
    TeX
    X11

    And how many of them are easy to use? How many of them are have interfaces that are just evil?*

    But hope is looking up. Look at these newer open source projects:

    GNOME
    KDE
    Mozilla
    GIMP

    So, I think the community is doing pretty well giving geek-interfaces for geek tools. The user-interfaces on user tools aren't doing to badly either. They're not excellent yet, but even interfaces benefit from the open source model.

    * Trick question. Just sendmail's interface is evil, the rest are just difficult.

  6. GUIs, MSVC++, etc by Bert+Peers · · Score: 3

    I'm glad to see someone picks this up.. I was recently ranting about this on the linux gamedev list but couldn't find much response for this. Imho this goes pretty deep; yes, we have Gtk and Qt to get away from the 30 year old "command prompt is just fine, thanks" attitude, but we still have a long way to go. Let's not turn this into yet another GUI-vs-console debate : I guess what works best depends on if you're the geek type, or just the end user "where do I click to launch Office" type. To break through, Linux should support both. But here's indeed our Achilles'heel : the development of these apps with smooth, welltested GUIs. Say what you want about MSVC++, but once you've used their built-in editors to model your GUI and attach code to it (a la Visual Basic), you really don't want to go back to native Win32 programming. Since hand-connected signals and slots under Gtk or Qt are the Linux equivalent of such hand-tuning of Win32 code, you also don't want to go program GUI's under Linux anymore without the Linux equivalent of MSVC. This is really important because without such ultra-user friendly, dumb-monkey-could-use-it interfaces the tools to build content, and hence the apps which need such content (like games), will not arrive under Linux. I know, I know, this may be ranting.. but I'm just happy to see this topic getting picked up under developers after months of crying in the void :) As long as the "cutting edge" IDEs of Linux or lagging years behind MSVC, decent GUIs simply wont become common because it takes too much effort to build them... I mean, it's coming (check out the FLTK project).. but the general attitude still seems to be "we don't need GUIs.. so why build them, or build the tools to build them". Maybe KDE and Gnome's IDEs will change this ?...

  7. Exactly!!!! by nevets · · Score: 3

    You hit the nail squarely on the head!

    A first time user doesn't understand most of this. Think of yourself as going to dance lessons. You start off feeling funny and don't understand all the terms. You feel stupid by asking and looked down on by others that have been doing this for a while.

    If you want OSS to succeed, you need to make it easy. If we can think of a standard interface utility that performs "Control Panel" operations, then this could help not only the users, but the gurus themselves.

    If we can come up with a standard configuration tool that takes an ASCII config file as input, and produces simple user interface, then this would accomplish the task. Something that would be a standard, much like rpms are today. Say we have a Linuxconf interface that would get its commands from a file.

    Example:

    # hostname command
    start command;
    label: hostname
    entry: text
    run: hostname text
    end command;

    Where this would be read buy some utility and show a label stating hostname: [ ] and then when the user enters in the hostname the command
    "hostname entered hostname" is executed.

    This way all new utilities can conform to this format and append to the config file, or just have a single config directory (like /etc/config.d) that gets read by the tool, and have a "make xconfig" menu or linuxconf user interface. This would also solve the problem that some of us (me included) don't like about linuxconf, that we don't know what it is doing. But with this, all we need to do is look in the config.d directory and see for ourselves. This would make end-users happy (simple interface) and gurus happy (can see WTF is going on).

    Of course, this utility would need to be thought out quite a bit. Maybe have a separate organization under OSI to make the standard. My example was just to make a point and not actually a real example.

    Steven Rostedt

    --
    Steven Rostedt
    -- Nevermind
  8. Re:Rules for writing BS about OS by spectecjr · · Score: 5

    Here's mine

    (installed by three computer engineers; one a Linux user since before it was a buzzword (Patch Level 0.98 if you must know; that was July 1993 or so); one an applications developer with 18 years development experience on a whole slew of OSes, and lots of UI design and development experience; and a computer engineer with 10 years experience, plus a degree is psychology + a minor in ergonomics/human user interaction).

    I'm the one with the 18 years experience by the way :)

    A friend of mine has installed Corel Linux
    1.0 (he downloaded the standard downloadable distro), and I played around with it today. He did the "Doofus" install - that is, he just stuck the CD in, and said "Uh-huh" to all the questions it asked. It was installed on a Dell Optiplex GXM 5133 machine... and it sucks. Or maybe it's just KDE that sucks.

    Within 5 minutes of playing with it, I managed to get the whole OS (seemingly) hung with a complete lockup except for the mouse. Now sure, I could probably have telnetted into it and unlocked it, but I'm afraid that I couldn't get the network working over DHCP (see later). What was I running to do this? Well, we had been running notepad, but I had one "KDE Explorer" (nee Windows Explorer) window open. I can't remember if I'd tried to open the floppy drive, or the CD-ROM drive, but that shouldn't kill everything. Even the keyboard LEDs wouldn't toggle. And of course, CTRL+ALT+DEL doesn't do ANYTHING. Couldn't reset it. Couldn't get a console window. ARGHGHHGHGHGHGHHGHHHHH!!!!!!!!!!!!!!!!!!!

    Maybe this should be expected (after all, it's a Corel product), but personally I find that kind of worrying. I do have to wonder how much of this was KDE and how much of it was Corel's fault.

    Speaking of KDE - lots and lots of performance issues were there - it kept being REALLLLLLY slow the first time it'd show a dialog - it would visibly rearrange them on the screen. I'm guessing that it was written in something like TCL/TK, and that's why dialog resizing was so slow. Windows - on the same machine - had a perf approximately 5 times faster, if not more so, for its windowing/resizing.

    Speaking of which, on moving the "Taskbar" to the top of the screen, and opening Netscape, Netscape opened up UNDERNEATH THE TASKBAR. If I put the taskbar at the bottom of the screen, Netscape would resize out of the way. But at the top of the screen? It was screwed - opening a window shouldn't do that. I had to move the taskbar to fix it.

    Speaking of which, a couple of UI issues:
    Telling it to "Refresh Desktop" (to move the icons out from UNDERNEATH THE TASKBAR AFTER I'D MOVED IT...) did so quite happily - the full-screen flashed, but it did it.

    Telling it to, however, "Arrange Icons" (surely the same thing?) instead caused it to throw up a big nasty DESTRUCTIVE OPERATION WARNING Dialog Box asking me "Am I sure that I want to rearrange the Icons?" Yes/No?

    What the HELL is that about? And why not the same thing for Refresh Desktop, which appears to do the SAME THING? Huh?

    Speaking of UI inconsistencies.... yes, why I hit "APPLY" in a dialog box, I want it to apply NOW. I do NOT want it to ask me "Do you want to apply changes Now?" - because I just told it to. At least you can turn this off for Deleting files in Windows.

    Context menus are missing on edit boxes - but for some reason, they work happily on the desktop. WHY ONE BUT NOT THE OTHER? THIS IS INSANE. IT'S TOTALLY INCONSISTENT.

    Speaking of which, Right-Mousing on the desktop left the focus on the desktop - with the control panel I had open still left looking active (including the selected text in the box, and a flashing caret)... sorry, if the window's not active, I want to KNOW about it.

    Also, selecting text in a box and typing does NOT delete the extant text in the box - which is also totally counter intuitive - pasting removes what was there if anything's selected, so should typing. That's how it works on EVERYTHING else.

    In the control panel, when trying to set up networking, I hit Apply. It asked me Y/N. I said Yes. I said "Close". It closed the *panel* I was working in. I ended up hitting CLOSE 4 TIMES before I could get it to work. And then I had to CLOSE THE APP. If Apply does exactly the SAME THING as the OK/CLOSE button, but the difference is that it asks you if you want to do it or not before it commits changes, WHY THE HELL IS IT THERE? THERE'S NO BENEFIT TO IT BEING THERE WHATSOEVER.

    Also, shouldn't DHCP/BOOTP find a DNS server for you? In which case, shouldn't the "ADD DNS" dialog box be DISABLED when you're in DHCP mode? And also, why are the DNS settings boxes (IP, Default Gateway, etc) ALWAYS DISABLED WHATEVER YOU DO? Are they just there for show?
    This is S*(&!@(*#& INSANE! THERE ARE CONTROLS ON THE DIALOGS WHICH DON'T DO ANYTHING!!!

    So in conclusion, Corel Linux/KDE (after a 5 minute look at it) is pretty impressive. It brings Linux kicking and screaming into the GUI world - and it shows. Now don't get me wrong; I'm not coming at this from the point of view of someone who won't take the time to learn the system, but for all of Microsoft's faults, Windows is
    pretty damn good. In comparison:

    Microsoft Windows has some pretty annoying flaws. It causes a lot of people to get angry because of these. Corel Linux, because it's running on Linux/KDE, makes people twice as angry, with twice the hassles!

    Seriously - Corel Linux is pretty good. However, it still sucks. The KDE/Corel guys should get some people who understand user interface design, and create a CONSISTENT UI. Because at the moment, it doesn't cut it.

    Never mind the fact that by the time we left for coffee, we still hadn't worked out how to get the network to work over DHCP.

    ---

    Addendum:

    My girlfriend (who has been using Linux since 1993 (pl98))has just tried to install Corel Linux on her machine.

    We put the boot floppy in. We put the CD in. We restarted the machine. It came up, detected the hardware, flashed, showed the wallpaper again, open the CD-ROM tray and shut it again (almost like giving us the finger), and restarted.

    And did the WHOLE THING ALL OVER AGAIN. AND AGAIN. AND AGAIN. AND AGAIN. AND AGAIN.

    Eventually, after this many reboots (my friend Wes had only had to have one on his Dell), we tried removing the bootfloppy. The machine promptly booted into Windows 98 (which Shana uses to play Dungeon Keeper). Now, either this machine was possessed by the spirit of Bill Gates himself (and thus wouldn't let Corel Linux pry it free
    from Windows), or something's rotten in Denmark.

    The machine in question runs Mandrake Linux *fine*. But the Corel Linux install wouldn't even say what was wrong. It was just braindeadedly rebooting and rebooting and rebooting with nary an error message in sight. This is, by the way, COMPLETELY AND UTTERLY LAME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    Shana (pronounced Shaynna) would like to say at this point "Bring back the Linux Quarterly!!!".

    ----

    I think basically what we have here is a case of "Attack of the Cargo Cult GUI Designers" ... basically, they see what other OS's have, and implement the same. But badly. Very very badly. How would you like to be running an extremely (comparatively) unstable version of an amalgum of Windows 3.1/Windows 95 and FVWM, but one that has just enough (but not quite) implemented to make it *just* usable - that is, if you didn't use it much and in general gave up and just used the command line instead - but on the whole is horribly inconsistent?

    Simon
    (the last sentence should have been sanitized for your convenience... but I was too busy)

    --
    Coming soon - pyrogyra
  9. Not so. by Aasmunds · · Score: 3

    X is easy to use, if someone sets it up so that it is easy to use. Which means that there are as many different "easy-to-use" setups as there are hackers. To the experienced user, a bad thing about the Windows GUI is that you can't do very much about it. To the inexperienced user, a good thing about the Windows GUI is that it is pretty much the same no matter what box you use. Furthermore, Windows comes ready to use out of the box. X doesn't. And X is not X if you change machines. FVWM, GNOME and KDE look and feel very different, and adding new apps and changing the sysadmin's stupid default setup to one you like is not entirely painless for the inexperienced. Bottom line, X is still a hacker's GUI.

    --
    (Hr. Skjæveland)
  10. Re:BS... by Vox · · Score: 4

    "Type: $photoshop myimage.png" Which will work IF: photoshop is in the path.
    Most programs installed with an RPM/deb go to a place that IS in the path or that gets added to the path by the after-install script (at least in those RPMs that are correcty constructed)

    myimage.png is in the current directory.
    If it isn't, you type the whole path, easy.

    both of which are very often untrue. Actually finding where the photoshop binary is located is not a newbie task.

    Mmmmm...."whereis photoshop" is usually enough, very intuitive, even.

    Neither is altering the path.
    On this one I have to agree...altering the path is something a newbiew can't usually do by himself, unless he's had some DOS experience.

    As far as that "open with" BS... You could just drag the icon for the myimage.png to the icon for the photoshop program. That's the proper way to use a gui. And probably even easier than typing your command line.

    Mmmmm....two clicks to open My Computer (same if you want to use Windows Explorer), a bunch more to find the photoshop.exe program (unless you have a shortcut to it on your desktop, which ususally means having to do it yourself...let a newbie try to do that on NT Workstation 4,,,not as easy as you make it sound)...then open another My Computer/WExplorer window, find the silly graphic, drag it to the photoshop.exe icon....yes, very easy, I can see that.

    And yes, I know what I'm talking about, I'm writing this on an NT box...and I, among other things, train people on both Windows and Linux at work.

    Windows is easy, as somebody else already said, only for those that are used to it, and as an example I'll put my mom...she started using computers about a 18months ago or so...I gave her the choice between running linux and windows ("what do you like better, what I run on my computer (Mandrake 5.x at the time, with E as my wm),or what my brother runs on his (winNT workstation)?" She chose linux :)

    After about 3 months, her computer gave up (very old box...damn HD died after only 8 years), so she started using my brother's box while I was buying parts for a new box for her...after a week, she threatened me with bodily harm if her box wasn't working in the next week, cause she couldn't get a thing done in my brother's NT box.

    Two days later her box was ready...15 months later, she still thinks all the "windows is easy" people have no clue what 'easy' means.

    And no, before you ask, she had never used a computer before I gave her that old box with linux in it...and no, she didn't set up a thing in it, I did it all...just like I did with NT for my brother, DOS for my father (he runs only one program in his computer, so...boot DOS, load program, do stuff, exit program, turn off puter)...what people still can't understand if that setting up an OS is NOT something for the average Joe...I don't care who makes the OS, my mom will NEVER be able to install it.

    And yes, she does install programs in her box sometimes (only RPMs, and if she gets a dep error, she ICQs me and tells me what are the missing things and I find teh packages for her and then she just "rpm -Uvh *" in the dir where she placed them all)myimagemyimageVox, who is REALLY sick of this "this is easier than that"

    --
    Pain is the gift of the gods, and I'm the one they chose as their messanger...
  11. Does he have a point? Maybe by vanguard · · Score: 3

    When I was a sysadmin I installed a package with a terrible gui installation routine. The only people who would use this installation routine (the software cost around $750,000) are experianced system administrators. The next revision of the installation was not graphical but it worked. The new system was well accepted.

    What's my point? Good UI design is not important for applications that cater to IT pros.

    I wonder if he's looking at the apps that are built for IT guys?

    The X window is not tough to use. It's certainly not any tougher the MS Windows. Star Office is a breeze, so are the other apps targeted at "users" (xmms, gaim, etc.).

    I don't this it's fair to bash the UI of Apache because my Aunt can't set it up. It wasn't built for her.

    --
    That which does not kill me only makes me whinier
  12. Completely Disagree by Hrunting · · Score: 3

    If you look at it, the foundation for open-source software has been laid out over the years. Functionality was always second place to aesthetics and usability. Now, OSS is entering a more mature age where those other concerns begin to exert themselves. KDE isn't a unique interface, but GNOME is pretty unique. If you take the ideas of themes, then you have an open-source GUI model. Some themes are extremely excellent in terms of their usability (some are downright awful). Granted, the code underlying all of that isn't beautiful, but end-users only see what's on top anyway. Programs like wmakerconf and sawmill's control panel allow people to make these changes extremely quickly, even directly from the gzipped tar file. You can't tell me that that's not extremely easy.

    What this article says is that the OSS model has a hard time producing good GUIs, but that's not the case at all. We haven't needed good GUIs because our programs have never been for the end-user. Now that OSS is going mainstream, the end-user is being involved, and I think the OSS model is successfully tackling this challenge as well.

  13. UI in Open Source programs by waldeaux · · Score: 4
    OK I may be a radical, but although I hear over and over again that the "failing" of Open Source (which for the purpose of this response I will equate with UNIX) is that the user-interface is SO HARD compared to

    I have spent almost no time using Windows since I first ran into it in 1983 or so. I have avoided Win3.1, Win95, Win98, WinNT, and I will probably try to avoid Win00 (as in "Win zero zero") when it plops onto the universe. That doesn't mean I haven't USED it at all, but I haven't attempted to master it.

    So, now it looks like I'll be started a new job soon which uses WinTel all over the place. I'm not worried about that (aside from all the obvious places I should be worried: security, scalability, reliablility, etc. :-), but when I see other people using WinTel OS's it seems that the UI is nothing CLOSE to "immediately obvious". It's levels upon levels of options and configuration which isn't intuitive most of the time.

    OK - so let's compare that to X11, Gnome, CDE, and even to older things like OpenWin. Are these UI's THAT far afield from Win9X or NT that they're actually MORE difficult to master? I think not. Sure the key mappings might be different and for most users, there's some fraction of expected interaction with a command line,but even for Win9X people, there is still a LOT of "delving into DOS" that takes place, even though there is a percentage of users who only interact with the GUI.

    So what about this new generation of UNIX users (defined for convenience as the post Ultrix/SunOS/ SCO people --- basically the "Linux era", although that also includes non-Linux UNIX, e.g., Solaris)? While it's not common to have users who never ever deal with the command line, I think we've reached the threshhold that it could be done. The available client software that I find under RedHat and Gnome are very quickly eating away any need (other than convenience that my fingers are hardwired to vi sequences and sentences like "ls -lt | head -5" :-) for the shell. The file managers are no worse than what comes with Win9X, there's a Gnome "finder" that works as well as the one in MacOS (does anyone know why "find . -type d -exec chmod g+s {}\;" doesn;t work under Linux?), and so forth.

    At this point I think arguments along the lines of "well, Linux/Open Source loses because they have really geeky UI's" is more FUD than accurate. It will become even less accurate over a somewhat short time scale! One metric to testing this assertion it to see how many "normal" admin UNIX tasks (sysadmin or user adminstrative tasks) are being pushed over to programs with UI's than are done on the shell. Programs like Gftp, xchat, etc. are definitely taking the place of all the command-line programs in my life, mostly because the UI is straightforward and gets me to complicated uses faster and easier than before. At that point, it's no different than searching for some obscure panel item in Win9X...

    YMMV, of course.

  14. Can't somebody do better? by Industrial+Disease · · Score: 4

    Almost as simple to use as Windows? Yeah. That's the problem. The Windows GUI isn't that great, and hasn't seen any real improvement in usability (as opposed to cosmetic changes) for years. Looks like the new MacOS might have some significant improvements in usability under the eye candy. A lot of people have learned to use the Windows and Mac GUI's; people assume that means they're easy, and that they're the best possible interfaces. I don't buy it. I feel like there's got to be a better way; unfortunately, I don't know enough about UI design to know what that better way could be.

    --
    Weblogging Considered Harmful:
  15. The author's fundamental mistake by cpeterso · · Score: 4
    why is the best software writing organization on earth unable to produce innovative interfaces, when small commercial software companies do so with regularity (if not always with commercial success)? The answer is relatively simple: The Open Source movement has no feedback loop to end-users, and no imperative to create one.

    I think this is the author's fundamental mistake. The developers of successful Open Source projects are its users. The user has a software itch that must be scratched. No one else is going to do it. Most Open Source developers don't get paid to write their software. They code for personal enjoyment. Can someone think of an example Open Source project where the developers are not users?

    1. Re:The author's fundamental mistake by Bert+Peers · · Score: 3
      No, I think he's right. We have feedback loops from end-users when those end-users are fellow geeks. In fact, we have the tightest feedback loop possible because those "end-users" are going straight to the code to fix what they don't like ! But when it comes to our whole new category of end-users, the desktop clicketee-click monkeys which we try to lurk over from their windows machine, we're stubborn as hell to accept that those guys simply need their dumb-ass buttons to click or they'll ignore Linux, period.

      Check out the truckload of arguments dumped here as to why we really don't need GUIs, and then go ask that dumb secretary sitting next to you at the office what she'd think about a PC that gives here "# >" when booted. Yeah, maybe Gnome and KDE is listening to what their users' complaints are.. but the majority of the geeks definitely isn't. I think that's what he was saying.

    2. Re:The author's fundamental mistake by Wellspring · · Score: 4

      I think this was the best point the author made. For an experienced administrator, typing in a quick and dirty text command is the quickest way to do things. For someone who is keeping her life as non-computer oriented as possible, though, text interfaces, key combinations, and scripts/rc files are all hopelessly arcane and arbitrary.

      That's why windowing metaphors are so powerful-- you are hijacking training that people already have in the Real World and using it to ease the adjustment. That's why complex procedures are laid out in wizards: to guide people through it without having to remember an algorithm.

      If you are trying to let someone do something complex, you want to make them learn as little as possible in order to do it. That doesn't mean they are ignorant, it means that we are imposing on them to spare as little brainspace as possible. A doctor doesn't make us learn medicine-- we shouldn't force him to learn software engineering.

      This is all pretty obvious, IMO. But it is easy to forget. As coders, we know way more than the average person about computers. We don't need metaphors-- we can handle the raw abstractions. So in the name of flexibility and consistency, we get straight into what often amounts to minor coding in its own right.

      This is compounded by feature creep. People are paying for features they won't use on their Office apps, and then wonder why their desktop is so crowded, and why everything has to be filed away in menus.

      Finally, since abstraction is our living, we are using it too much where we shouldn't-- the user's experience. Making something universal, making it systematic, often good things. But sometimes you have to hide the underlying elegance in favor of being usable by people who don't know code.

      emacs is not what we want. Enlightenment isn't, either, though it is ridiculously great. Nor is Word, really. MS's interface advantage isn't that they're particularly good, they are just what people are used to now. What we have to start thinking about is what is making Linux suddenly so popular to the Rest of the World: What do users want? Linux addresses security, stability, standardization and upgrade issues that the business world probably assumed were inevitable.

      What we have to do is what PARC did years ago. Say "What are these computers for?" "What can they let people do which they couldn't do before?" and "How can computers help people do what they're doing now more efficiently?".

      Answer those-- and don't think that companies like Apple aren't asking those questions every day-- and people will wonder why MS and others can't make an operating system which doesn't need to be unravelled by a PhD in CS. Rather than saying that about us, which is what they're doing. In almost every other area, Open Source has proved to be better. I think that, if people really start focusing on it, we can take the lead on it.

  16. What is easy for you and me... by Little+Brother · · Score: 5
    What is easy for you and me, even if you're not a programmer. Is probably VERY different from what is easy for the old lady down the street. While I was in high school I earned spending money as independent tech-support, advising and systems repairs for the town in which I live. I learned quickly that there are things that we take completly for granted that many people have a difficulty learning. The people I worked with were primarly college graduates and none were paticularly dense, nevertheless here are some of the problems I came accross:

    Someone didn't know what double-click meant, thought it meant clicking with BOTH mouse buttons. (Makes as much or more sense than clicking with one button twice.)

    Someone didn't know that Windows 95 wouldn't run very well on his 386DX system. (how should he know?)

    Someone didn't know that return and enter mean the same thing.

    Someone didn't know what I meant when I said "monitor."

    Someone didn't know what I meant by "Icon"

    Someone didn't know how to access the file menu.

    Someone didn't know that he had to turn on his external modem seperatly from his computer system.

    Someone didn't know what a link was

    Someone didn't know how to turn on his monitor. (I had a bit of trouble finding the hidden switch.)

    Someone didn't know the difference between memory and disk space (many don't actualy)

    These are but a few examples of things that are EXTREMLY basic to us. However few of them are intuitive in actuality. Most "geeks" I've talked to don't understand the mindset of the non-computer literate user. They could write a user-friendly program, if only they knew what the user might need.

    Oh and by the way, most extremly new users I worked with prefered keystrokes to mouse strokes, so why do all the manufactuarers rush to put GUI's on all desktops? A simple arrow key oriented shell (in the msdos shell sense of the word) would be better for many of them and applications with a printed list of ctrl commands may well be more usefull than one with confusing pictures.

    --

    Little Brother, watching the watchers

  17. Your fundamental mistake by lbergstr · · Score: 5

    Programmers are _not_ typical end-users. They are way, way more savvy. On top of that, they're intimately familiar with their own work, so idioms that may be completely mystifying to typical users become second nature to them. The key to useful usability testing is seeing how much a typical, slightly computer-phobic user can get done in the first half hour of use. IMHO, often, a programmer's evaluation of the usability of his or her own work has little connection to reality. UI design should be trusted to UI professionals, subjected to as much testing as possible, and then translated into code.

  18. Re:keep it simple, stupid by dammitjim · · Score: 3

    Part of the disconnect in this discussion is that we're each operating with our own definition of a "good" user interface.

    Yes, efficiency in a UI is good. Flexibility, consistency, clarity and information density are also good. There are lots of qualities that make a particular UI implementation useful. The trick is to include as many of those as possible into the product.

    The interface for Cisco routers, as anyone who's ever seen it can tell you, is quite simple. Efficient. Able to be used via a low-bandwidth text interface, which is perfect. But is it easy to use? Not for most people. Microsoft Bob, at the other end of the spectrum, was incredibly inefficient, but useable by most people above age 5.

    I think the main point is not whether XF86 or a particular WM has a good interface, since those programs are mainly MAKING the interface for the rest of the system. Does Sendmail have a good interface? Does vi? Only when considered seperately and by somebody who is very familiar with them.

    For the VAST majority of OSS projects there are no common use models. That makes learning the software more difficult. On the MacOS, most software conforms to several systemwide standards. CMD-Q is quit, CMD-O is open, etc. Windows is almost as good. These types of things make a system AS A WHOLE easier to use. That is the challenge for OSS project leaders - find a way to make their learning curve work for them.

  19. congratulations you proved the articles main point by jilles · · Score: 3

    Funny:

    "It's faster for me"

    Haha, you confirm the article in every respect. You rant a bit about speed and efficiency and you completely ignore usability.

    Of course it is faster if you know what to type and you happen to be able to type fast. I saw my grandfather use a PC a few weeks back and I assure you, this wouldn't be as fast for him as it is for you.

    The article's point was that OSS developers are brilliant programmers but are also completely clueless about providing a usable GUI.

    Look at linux. It took until the late nineties before people were starting to realize that the traditional userinterface (X + really crappy windowmanager) sucked for somebody unwilling to deal with a commandline. What did they do? After years of complaining about MS windows and it's user interface the best they can do is cloning it. We have to wait for Steve Jobs to see some actual innovation (about which a certain GNOME hacker manages to say that he can do the same since he can do transparency).

    Interesting sidenote: this also applies to mozilla. If you read the newsgroups people are complaining about the user interface. A common reply to these complaints (you guessed it!): write a skin for it. Mozilla is brilliant except for it's userinterface. Little thought has been put in it so far. At best it is netscape 4 with skins + some features of internet explorer. Where's the innovation?

    --

    Jilles