Slashdot Mirror


Software Usability As A Technical Problem

An anonymous reader writes "Let's face it. Poor user interface design is a big problem in software today, particularly in the Open Source world. A recent article on NewsForge addresses this problem from the perspective that software usability is a technical issue that Open Source developers can and should face and conquer, just as we have conquered other technical problems that have stood in our way." (Slashdot and NewsForge are both part of OSDN.)

15 of 551 comments (clear)

  1. Yes a technical problem, but of different nature by StateOfTheUnion · · Score: 4, Interesting
    I'm not an active open source community person (just a user) . . . but I have to wonder if the open source community attracts the kind of people typically needed to create excellent interfaces. I'm talking about people that are into ergonomics, spatial perceptions and relationships for desingning interfaces e.g. psychologists, product designers and the like. These are the kind of folks that come up with familiar and intuitive interfaces and design button layouts for consumer products.

  2. Usability by Jim_Hawkins · · Score: 5, Interesting

    I like this quote from the article:

    Here's an example: Konqueror, KDE's file and web browser, has a menu entry called "smbUmount." I don't need a laboratory with video gear to figure out that this is nearly impossible for non-hacker users to understand.

    Exactly. Submit it as a bug. This is the first thing. Many of the people who work on OSS projects realize that there is a usability problem. However, nobody wants to do anything about it. It seems that many developers do not consider usability issues to be a defect in the software. As a person who is *very* interested in usability of software (part of my degree), I have to disagree -- issues with usability is a MAJOR defect. It's the reason that many people will not turn to Linux/OSS options. They are scared by the command line. They don't like it when menus in one program do not match up with menus in others. I can't say I blame 'em! (Well, I like the command line, but that's a byproduct of me being a nerd.)

    As a backup to my previous statement, I am constantly submitting usability bugs to projects when I find them. However, I am constantly ignored. WHY? There are so many things that could be improved upon and made easier so it's more appealing to the users. Why do you think Microsoft products do so well? People recognize them. They know where stuff is. There's no guesswork needed.

    And, yes, some OSS projects do this very well. Mozilla products (Firefox, etc.) are very well designed. There are minor usability flaws, but nothing that isn't easy to figure out.

    Personally, I would love to sit down with a team and work through usability issues. I would love to have someone actually show some interest in fixing these problems. However, it seems that, too many times, these issues are discarded for ones that are more technical. And, of course, the usability issues will come up again later. It's a pretty vicious cycle that needs to be stopped. If only someone were willing to do it.

    (BTW - I realize I could code these changes myself, but I do not have the necessary skills to do this. Otherwise, I would.)

  3. Recommend-a-newbie by tezza · · Score: 4, Interesting
    I think that people on the project need to volunteer friends, wives, parent to accomplish the user tests.

    This is the secret to open source stuff: drawing on the community skill. This method is just in a non 'programming-skill' oriented fashion

    If you get a Chilean developer to have his grandpa, who has no stereo vision, have half a look at it, then there'll be lots more important feedback, at least after Babelfish has done its work.

    --
    [% slash_sig_val.text %]
  4. Re:not really by mastergoon · · Score: 5, Interesting

    No sir, I am not making an excuse. I am just pointing out, UI design is difficult for everyone, not just for OSS.

    Finding an interface that will make all your users happy, is next to impossible. I would guess that SOMEONE likes the way each app looks, but not everyone. Linux actually is a step ahead of Microsoft in this regard, due to the fact that a lot of window managers (Kahakai is nice, and we are hard at work on Aegis) are now scriptable, not to mention the basic customizations that have been around forever. While average joe doesn't know how to script up a sweet desktop, distrobution makers can whip out several different setups, and let the user switch between them, rather than the windows way of forcing their interface down your throat.

    A lot of times when I first lead people to Linux, I figure I might as well give them Gnome or KDE figuring it will be more intuitive for them. From what I've found though, people are actually much more excited about interfaces like *boxes, once I lead them in the direction of how they can edit the settings and etc. While the big windows-like interfaces may make the transition easier for some, I think a lot of people are very happy with the ability to set up their own, "new and different," UIs.

  5. Its because developers are running the show by fishlet · · Score: 4, Interesting

    I am a developer myself, so this post is in no way meant to offend developers. However it's true that developers (generally) do not see things the same way that most users do.

    When i ponder what makes Microsoft so successful (aside from the questionably legal business practices) is that their company is not ruled by the developers but by the PHB's of this world. Microsoft invest considerable effort into researching what people are actually doing with their computers. Say what you want about them, they are actually pretty good about listening to their customers when it comes to features. By contrast, Linux developers often concentrate on scratching thier own itches which ultimately only appeal to like minded individuals. I could list several things right now that are not easily possible in Linux right now.

    I write software for a small company, and we are very blessed to have a very technically less-literate person on our staff. He is our functional expert and he gives us a lot of great feedback on our UI's. Open source projects should never underestimate the value of such a person.

  6. Re:not really by SpectralOne · · Score: 3, Interesting

    I love slashdot. The first response to anything on this site is "Microsoft is to blame for everything". Has anyone considered that the reason OSS interfaces suck is because there is no incentive to do better? This stuff is free, stop complaining. If you want quality, then pay someone for a better version where the financial gain is an incentive to meet your requirements. Capitalism is evolution; the consumer plays mother nature and chooses the best product. I believe this is true, even if monopolies form (there are monopolies in nature too, they all end eventually) People didn't start using Windows 3.0 just because; it was the best choice for a consumer at the time. The reasons for "best" have now changed (ie. interoperatibility).

  7. Developers: It's all about the freakin' Users! by MooseByte · · Score: 5, Interesting

    "Personally, i like to ask the users what they want to see."

    EXACTLY! Sometimes the users don't see the Big Picture and have old habits they want to keep around, but more often in my experience it's some boneheaded developer's choice to squander resources to "improve" an interface without ever actually investigating whether the users will get any improvement at all.

    On my latest project (in-house application) I've actually had to go head-to-head with our senior developer (not a software engineer) over how the interface should look and work, me going to bat for the users.

    The users of the new application want it to look and function in a manner that suits the way in which they need to operate day in/day out. Simple, straightforward. I prototyped it for them and they loved it.

    Our senior developer then told me no, we're going to do it using MegaSuperKewl WizBang crap, something the users were fundamentally opposed to (it would actually tangibly interfere with the way they use the data in production).

    I'm hardly junior myself - 11 years fulltime S.E. - and figured screw it, I'm not going to watch this abomination progress unchallenged. I arranged a meeting between the users, the senior developer and myself. The conversation was hilarious. I asked him to explain to the users how his design would improve their productivity. Let your imagination run wild and you'll come close. The users won in the end, but it was hard fought

    But then the same week I had to argue, yes ARGUE, to store constants to be shared across applications in a common header file. The same fellow argued it would be much easier to hardcode it in each application separately. A heated 20-minute meeting later, I get to store the constants in a common header file.

    I *WISH* I was making this stuff up. My life is a Dilbert strip.

  8. Re:not really by Oligonicella · · Score: 3, Interesting

    "Windows has a rather counter intuitive interface"

    Well, well. A rather pompous statement with no supporting argument. Not to mention that I disagree with you.

    I don't find it slow, and it can be customized.

    I have my desktop organized the way I organize my wooden desktop. Who are you to "guide" me?

  9. How boring! by tchernobog · · Score: 3, Interesting

    It has to be the tenth article about OSS and usability that I see in a couple of months (and at least two were mentioned here on ./).

    Listen, as someone pointed out: if there's a usability problem, fill in a bug report. This is OSS real force.
    We are all a bit lazy. If something don't fits your needs, fill in a bug: it is like black ink on your dress, you HAVE to have it fixed, or what sort of programmer are you?! :)

    Moreover, I think that's still the same old story: who says "command line is good enough for everyone, and if you don't like it, it's a problem of yours" versus "mouse is beautiful, why should I use that keyboard? It'll bite me, if I touch it!"

    Well, I'm for: keep them both. For example, I noticed that in Kdevelop you haven't key accelerators when debugging your code. This is a problem for me, so I'll fill in a bug report, and I'll point it out.

    See Emacs: you have menus, you have toolbars. Me, I spent some time learning the keyboard shortcut, and I never ever touch the mouse anymore! That's fine for me, and that's fine for the newbie, because the UI is there to help him.

    As always, FS is about freedom, expecially to choose. And since we are here to get better, if you want it "your way", speak with the right people (the devs), don't just complain! OSS is about community, take part in it, don't just sit on the bench criticizing.

    (Sorry for the awful english)

    --
    42.
  10. Re:not really by mattkinabrewmindspri · · Score: 4, Interesting
    Most Mac users are forced to use Windows at work. I am a college student going for a degree in Networking, and I use Windows every day.

    It's not that Macs are more effective; Windows users can probably be very effective after enough repetition. The difference is that Apple tries to take out the need for additional movement and memorization.

    For instance, Microsoft puts icons on the left, directly behind where most Windows open, so you have to minimize or hide those windows to access your icons. Apple puts icons on the right and in the dock, so when you have a window open, you can still double-click on your icons.

    Microsoft maximizes windows to full-screen. Apple maximizes windows just large enough so that you can see everything in the window, so that you can still get to things behind the window.

    Microsoft doesn't have a standard for keyboard shortcuts(alt-f4/tab to quit/switch apps, ctrl-x/c/v/z for cut/copy/paste).
    Apple does have a standard for keyboard shortcuts(apple-q/x/c/v/z/,/h/tab for quit/cut/copy/paste/undo/preferences/hide/switch apps).

    Microsoft has application preferences in some weird menu generally named "Options" somewhere off to the right, and Preferences isn't generally named anything. Apple has application preferences in the exact same place on the screen regardless of application:

    1. Mouse to 1 inch right from the upper left corner.
    2. Click and mouse one inch down.
    3. Click on "Preferences".

    You're probably very effective on Windows, but(and I know I'll get flamed for this), Using a Mac requires less thinking. With the Mac OS, Apple has always tried to make an operating system that gets out of your way and lets you do your work, and they've done a pretty good job.

  11. Re:not really by t1m0r4n · · Score: 3, Interesting

    Has anyone considered that the reason OSS interfaces suck is because there is no incentive to do better? This stuff is free, stop complaining. If you want quality, then pay someone for a better version

    I would agree with this concept 99% of the time. Guess UI isn't one of them (for the most part). Yes, in a corporate environment for a specialized app, customization is good. However, for basic apps and those that reside primarily is userland, needing to modifying UI is a bad thing.

    The problem for me is understanding what users want. (I don't write the code, but I do chose or modify as needed.) Best meaningless example I can think of is a friend of mine. He wanted the cheapest possible computer to read e-mail and write simple papers for some classes he was taking. Set him up on a $50 box with Linux. Linux was no problem. The mozilla e-mail thing he loved (as it was way better than the LotusNotes mess he had to go through at work). He played with every word processor type thing I could find, and he hated them all. While he rarely used WinWord at work, and definitely didn't need any of the features it offered, it was what he wanted. He settled on AbiWord, used it for a while, then forked over the cash for Dell with MS Office. (And MS compatibility wasn't even an issue for these classes.) Used the thing for all of six months, wrote his handful of basic papers, and hasn't touched the computer since.

    Now, tell me, how can usability studies help?
    "Copy what they already know":
    A) doesn't improve use for future users
    B) near immitation isn't good enough

    UI is a strange monster. People like different things, and a general purpose PCs make things all the worse, as different environments have different "bests" e.g. the person writing the novel, the person writing the newspaper article, the person writing the magazine article, the business person writing the memo, and the student writing the term paper should, in theory, have different needs.

    Now, open this concept up to all the different apps and work place settings and home situations. Getting the "best" is basically the same as merging hundreds of images of pretty girls to form the perfect woman.

    I am a jerk on the topic of UI. Find the best app for the job, and tell the user to suffer if they don't like the UI. Just like finding a wife -- you may not want to look at her every day after day after day after day, but that doesn't mean you should get a divorce just 'cause you think she should be better looking.

    And that's all I have to say about that...

  12. Re:not really by value_added · · Score: 4, Interesting

    It exposes a lot of interface options that are hard to adjust otherwise.

    This reminds of a critique I read in a recent Slashdot story a day or so ago. The argument went that editing "arcane config files" (not my quotes) is somehow less superior than neato dialog boxes with checkboxes. Your comment illustrates the often overlooked fact that even an average Windows user has probably discovered that most Windows settings (or name-your-favourite-program's settings) are deliberately obscured from view or otherwise inaccessible, and short of spending inordinate amounts of time burying one's nose in the registry and rebooting, or depending on a utility/shareware program to offer bits and pieces of what's missing, there's not much one can do.

    Yes, plain ascii is accessible as the nose on your face, and is as easy to edit as a letter to grandma, but more to the point, when considering "usability" I think it's entirely fair to factor in how much effort is expended by a user trying to figure WTF the program is doing (or worrying about what was done or wasn't done to that user's system) given that the source isn't available, the developer is definitely not available, and the "nice looking" documentation was written by committee so as to not confuse the user with too much information. Equally fair, are questions along the line of "Isn't there something I can type on a command-line that will allow me to skip this Start Menu and multiple property sheet click-throughs so I can get on with it?"

    Most of would have trouble using up all our fingers trying to count those applications we consider to be "slick" or "professional". That said, trading borked or confused menus and odd aesthetic choices on a program we downloaded for something more slick but strips the user of control is a false economy. It's also a royal pain in the ass. Considering that Microsoft is often viewed as the standard bearer, I wonder what the usability experts hired by them to come up with the endless procession of such winners as "personalised menus" would say if confronted in person with the unwashed masses shouting cries of "How do I turn this sh*t off?!!"

    Adobe, I've always believed, can do no wrong when designing their apps. Yet at the same time, I find myself turning to ImageMagick where possible to accomplish what I need and saying "No, but thanks!" to their emininently usable interface. Goes to show you can't please everybody all the time. Myself included, if that's not obvious enough.

  13. Re:Yes a technical problem, but of different natur by IamTheRealMike · · Score: 3, Interesting
    Yes, I'd say it definitely does.

    There are already a lot of replies to this post saying "no definitely not, OSS developers are all elitest ignoramuses" because it's easy to sound insightful when criticising, but really what they're saying doesn't stack up. It might have been right 3 years ago but the improvements made since then have been staggering.

    A lot of software has been rewritten or redesigned with usability being core. Example: grip was deemed a lost cause as far as UI went, so Sound Juicer was written instead. XMMS was deemed fundamentally flawed so Muine and RhythmBox were written. Gnome has adopted a pervasive HIG and while it may have a few rough edges still it's arguably more consistent than both Windows (hands up if you read the Windows HIG - thought not) and even Apples (brushed metal or aqua - what mood is Steven in today?).

    Today, if you want, you can get software that's had well thought through usability. That doesn't mean everybody uses it, but it's certainly available to those who want it.

    Now, there are some big remaining usability issues in free software but these tend to be structural/architectural. For instance Linux software installation is frequently very difficult and it's not easy to solve without a great deal of engineering.

    On Windows the GIMP user interface isn't anywhere near as good as on Linux, despite the GIMP 2 itself making great strides over the 1.2 release in absolute terms, the different (arguably worse) Windows WM model and UI paradigms aren't accounted for and there aren't enough Win32 Gimp developers to give Gimp/Win32 an excellently integrated UI. Or at least, not rapidly.

    This is more a side-effect of the Gimp being most popular on Linux and the core developers all using Linux though, rather than any fundamental insight into the nature of open source. I've seen some pretty crap ports to Windows UI from commercial companies as well - for instance, the laughable QuickTime 4 which not only made zero effort to integrate with the host operating systems UI but also committed quite a few usability sins like the thumbwheel.

  14. Re:not really by autophile · · Score: 3, Interesting
    This, from an Anonymous Coward. No credentials given. No "I've studied user interfaces for X years." No "I've designed user applications that didn't need manuals." Just, "Windows sucks, the menus are slow, and you can't config 'em".

    See, that's one problem. Dumbass developers who think that either the way it's done is crappy, or that WhizBang NewWay is the way to go.

    The user interface is NOT the same as code. There are often better and better techniques to do things in code. However, people themselves don't think differently (Apple slogan aside). They haven't thought differently for a few thousand years. So stop inventing new ways to display the same stupid thing, and start admitting that what's been written about UI design is valid!

    It actually applies somewhat to code as well. I can't count the times these crazy, out-of-control developers I work with come up with some insanely complicated mechanism using EJB's, databases, and discovery protocols to do something simple, like read a config file. It's like some kind of chest-beating session -- "My code-fu is better than yours!" High-schooler crap. And then when it breaks as it always does, it takes weeks to find out why. Asshats!

    Another problem. Developers are coders. They know how things work. Users are not coders. They do not know how things work. This is a fundamental disconnect between the back end and the front end. For a back end developer to design the front end requires the developer to achieve a kind of quiet zen state where they forget what they know. And despite what you may think, forgetting something is difficult to do, as difficult as asking your average WalMart WageSlave to do some calculus.

    So the idea that most developers can create a decent user interface is laughable, especially when the answer they give to most questions are pithy, asinine comments such as "Use the Source!" and "RTFM, luser!" That there is a question at all should be a clue.

    I know, I'm not giving any answers. Somehow we do need to attract UI-savvy people to Open Source. I don't know how.

    But if any developer wants to try, and at least temporarily to shut down their arrogance for the user interface as mere eye-candy, maybe they can buy (yes, BUY, don't give me crap about how open source developers can barely afford to eat; maybe they should concentrate on living instead of coding) a very nice book on user interface principles: The Essential Guide to User Interface Design: An Introduction to Gui Design Principles and Techniques. It's a good read, and it teaches you what UI elements serve what purpose, when you should use them, how UI elements should relate to each other, and how to design the overall UI.

    It's USD 55. Deal with it, or go back to high school and get a job.

    --Rob

    --
    Towards the Singularity.
  15. I feel for you. by geekoid · · Score: 4, Interesting

    I started working at a company a few years back. When I got there, the developer had written an application to replace the users 'green screen' interface.
    The user where data entry where they never looked at the screen, much less the keyboard. we're talking about 100's of pages a day of entry.

    This software engineer had created an application that was almost completly mouse driven. The tabbing wasn't in any order, you had to use the ouse to drop down to any option, to select were the document is sent to, etc...
    They went from 100's of docs a day to dozens.
    The software engineer always blamed the users, and said what he did was 'standard'.

    I went in, fixed the tab order, and assigned keystrokes to all the options. The same keystrokes that had been used on the previous app.
    It took me a week, when the engineer found out, he blew a gasket. Screamed at me, mostly at my back, since I don't tolorate that behaviour, then up to the Sr. Managment team.
    When I got thir, he had them all convinced that I had broke the app, made it unusable, and it would takes "years" to fix it.
    So there I am, looking at a Sr.VP, a Jr VP, and an HR person. I'm not stupid, I know what they had in mind.
    The converstaion went like this:
    VP: "Did you make all these changes to the application?"
    Me: "yes"
    VP: "did you consult the engineer?"
    Me: "yes, he said that the mothod they were using was a 'standard'"
    VP: "I think you may have stepped out of bounds"
    Me: "excuse me, I need to use your phone."
    [Calls the data entry manager]
    "hi brenda, I'm here with some VP's, can I put you on speaker phone?"-"Great"
    ME: "Brenda, what was the user average per day for document input before the new system"
    Brenda: "About 700"
    ME:"And what was it last month?"
    Brenda: "about 80"
    Me: "I see, and what was it last week after the new changes went in?"
    Brenda: "I haven't finished the report, but I'd guess about 700"
    Me: "Thanks Branda, that what I needed."

    The VP excused me. later i the week I got a promotion to fill the former engineers position.

    The point of this story? User interface is for the user. Give them what they need, to do what they want.

    You should hire me, we could fight the good fight together. ;)

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect