Usability in Open Source
June 17, 2003 2:59 PM   Subscribe

Usability Bazaar sounds like a crazy idea: getting together a group of people that will create usability guidelines for open source projects. Do you think that can work? Do OSS projects actually have usability problems? And can this actually work? Generally, usability people don't seem to get involved in open source. Why? (via webword.com)
posted by Adman (24 comments total)
 
because there's no paying consumer to pass the cost onto.
posted by quonsar at 3:03 PM on June 17, 2003


Do OSS projects actually have usability problems?

As an employee of a company that often trains non-techies how to use open source software, I don't even know where to begin with this one. Wait... I got it: fuck yeah
posted by spotmeter at 3:20 PM on June 17, 2003


Sun has done a lot of work on the GNOME project in just this area. It hasn't really paid off so far because you don't get the consistency throughout all the applications. The same problem is beginning to affect windows software, with programs not following the Windows XP design guidelines. (which are terrible anyway).

Unfortunately consistency and open development seem to not go together well. Perhaps more volunteers are needed who know enough coding that they can be trusted to modify programs and UIs to make them more usable.

Mac OS X programs are usually quite good if they make use of the Cocoa libraries. (Apple themselves are the biggest offenders here with their insistence on using the brushed metal style).

In conclusion, software sucks.
posted by Space Coyote at 3:22 PM on June 17, 2003


Uh, are you joking about open source projects having usability problems?

Open source projects are the very definition of usability problems [in many cases]. On preview, I'll just second spotmemter. Fuck Fucking yeah.
posted by zpousman at 3:23 PM on June 17, 2003


Actually, I'm not joking. I'm pretty happy with KDE and Mozilla (thought I can't use those at the office). To me, Windoze has more issues than either of those... but then again, I'm on the geekier side of the crowd :)

spotmeter: any examples?

zpousman: why do you think open source projects are the very definition of usability problems
posted by Adman at 3:34 PM on June 17, 2003


Ego-driven open source developers don't want to spend time making their software usable by the masses, they could be doing more important stuff.
posted by Space Coyote at 3:36 PM on June 17, 2003


Why Free Software Usability tends to suck gets it about right, in my opinion.

In a nutshell: When people are working for free, or for the love of it, they don't like being told what to do and get precious about their ownership of their part of the interface. This causes reluctance to seek or to listen to interface design expertise.

I might add that most OSS projects are initiated, run and implemented by programmers. In my experience, programmers and engineers are almost always the very worst interface designers.
posted by normy at 3:38 PM on June 17, 2003


"Many hackers assume that whatever Microsoft or Apple do is good design, when this is frequently not the case. In imitating the designs of these companies, volunteer projects repeat their mistakes, and ensure that they can never have a better design than the proprietary alternatives."

I disagree - I believe that if OSS gurus cloned either company's design it would work much better than "innovating" a new user interface. Standard interfaces are much easier to use than "smart" interfaces, because even if a new user interface control is brilliant - THE USER STILL HAS TO LEARN HOW TO USE IT. Indeed, many new "clever" GUI innovations introduced by free software companies are bad not in and of themselves, but are bad because they are not standard.
posted by Veritron at 3:45 PM on June 17, 2003


adman, the basic problem is that most open source software is designed entirely by engineers, to solve engineering problems. Interfaces are often an afterthought.
posted by mathowie at 3:49 PM on June 17, 2003


I'll just say that the first time I see Windows-style hidey-menus in an OSS application I'm going to get nasty.
posted by Space Coyote at 3:52 PM on June 17, 2003


Mozilla, OpenOffice.org

Only two OSS programs I've ever seen without any major usability issues. An example of an OSS program with major, glaring, face-meltingly bad usability would be the Gimp.

As for space coyote's 'ego-driven blah blah blah' trolling - the fact of the matter is, you are not smart enough to do what those developers are doing, and if you were you sure as hell would not be generous enough to just give it away.

I might add that most OSS projects are initiated, run and implemented by programmers. In my experience, programmers and engineers are almost always the very worst interface designers.

This is the other problem. The reason they're the worst interface designers is that they tend to incorrectly assume everyone else is as smart as they are. The mantra 'by programmers, for programmers' has a lot of truth to it. Johnny Q. Public wasn't meant to play with a lot of this stuff, nor even Johnny Q. Smartypants.
posted by Ryvar at 3:57 PM on June 17, 2003


An example of an OSS program with major, glaring, face-meltingly bad usability would be the Gimp.

I could see how you would feel this way if you were used to photoshop, but does the Gimp have particularly bad usability from the point of view of an image-manipulation novice? Any image manipulation program is going to be complicated. And the online documentation for the Gimp is top-notch, at least as far as open source documentation goes.

I like the Gimp; I've gotten a lot done with it.
posted by mr_roboto at 4:18 PM on June 17, 2003


adman, the basic problem is that most open source software is designed entirely by engineers, to solve engineering problems. Interfaces are often an afterthought.

Yep. While studying engineering in college, just about all the design/engineering tools I had to use for classes absolutely sucked usability-wise, with unintuitive controls and multiple hidden-steps to get anything done. And these tools cost thousands of dollars per license, so it's not just free open-source tools that have usability problems.

Many hackers assume that whatever Microsoft or Apple do is good design, when this is frequently not the case.

The problem is, when these programmers do not copy the latest MS/Apple user interfaces, whatever they come up with tend to be much much worse.
posted by gyc at 4:40 PM on June 17, 2003


gimp usability is not so bad, it's just a major shift when you have been using ps or psp for an extended time. having been 100% windoze-free for a few months now, I'm very happy with gimp. as for windows users, version 1.3 is probably much more agreeable than 1.2, which feels more suited to unix users.

the problem with Apple, MS is that while they do rather a lot of user acceptance testing, they apparently get more than a few idiots to be the testing users. well, maybe that's not such a bad idea....
posted by dorian at 4:47 PM on June 17, 2003


As for space coyote's 'ego-driven blah blah blah' trolling - the fact of the matter is, you are not smart enough to do what those developers are doing, and if you were you sure as hell would not be generous enough to just give it away.

Oh now you're just making me giggle. What's great about the Internet is that you don't know who you're flaming. Not to get into a dick measuring competition, but all those who've written nuclear monitoring software raise their hands. All those who've gone through, and understood, most of the important parts of the Linux kernel keep their hands up. All those who have at least an honours degree in Computer Science keep your hands up. All those who have papers being reviewed for publication keep them hands up. OK, those with hands remaining in the air can tell me how smart I am not.

Knowing how to knock out some C++ GUI code doesn't make you so special that you don't need to listen to people who might know more about usability than you do.
posted by Space Coyote at 5:22 PM on June 17, 2003


Ego-driven open source developers don't want to spend time making their software usable by the masses, they could be doing more important stuff.

I'm not surprised you think it works this way, but ego is not the most common cause of the problem. When you have your nose in the details, it's easy to forget how it looks from the outside. The abstraction that makes sense to a programmer implementing a piece of software does not necessarily make sense to a non-programmer operating the software, and vice-versa, yet the programmer is probably so used to that particular abstraction that it never occurs to them to build an interface based on any other.

Furthermore, the human beings who write open source software are the usually same people who write commercial software. This problem is a management issue, and has nothing to do with the characteristics of the people writing open-source software.

At the company where I work, we have an internal interface discussion mailing list. The dev team are all subscribed to it, but so are the project manager and the testers, and from time to time marketing folks and even the CEO jump in. Anytime a programmer wants to change the UI, they first write up a proposal and post it to this list, with mock up screen shots if necessary. Either everyone likes it and approves it, or the discussion continues until everyone has had their say and appropriate modifications (or someone else's alternate way of solving the problem) are agreed on. Management here is smart enough to convince people rather than boss them around, and the programmers are smart enough to acknowledge that they aren't the only ones with good ideas; out of this mix comes a consensus about the design informed by as broad a pool of opinions as we can manage.

There is no reason an open source project could not adopt a similar process. Once people figure out that it needs doing, it will happen, and the linked project is one sign that such awareness is growing.

What's great about the Internet is that you don't know who you're flaming.

don't forget to take your own advice...
posted by Mars Saxman at 6:20 PM on June 17, 2003


Thank Christ!
posted by waldo at 6:27 PM on June 17, 2003


Open Source projects also suffer from poor taste; e.g. Phoenix --> Firebird

(Yes, I realize there were copyright issues with "Phoenix," but "Firebird" is awful)
posted by hobbes at 7:08 PM on June 17, 2003


yet the programmer is probably so used to that particular abstraction that it never occurs to them to build an interface based on any other

I think Mars nails it here. Just look at the syllabus for just about any CS degree. With any luck there's maybe a one-semester course on HCI shoe-horned in there. Ok maybe I'm exaggerating, but just a little. It's possible to go through a glorious career in computing without barely thinking about interfaces at all. Programmers are taught and learn to think in algorithms, logical notations and abstract data structures - be they relational, object oriented, functional, procedural, whatever. I've noticed that programmers typically build interfaces that represent the data structures with which they work.

Users think about tasks and gratification. They want to do stuff. Achieve something. Satisfy a need. They have a goal, albeit sometimes ill-defined, unpredictable or spurious. The interface designer-analyst has to understand how to abstract real-world desires into a pattern of pixels on some display device that this unpredictable user will understand and act upon. I'd argue it's an equally difficult, but very different competency.

People who are genuinely good at both these things are very rare.

Lets invoke an analogy with other engineering disciplines; mechanical engineering, say. Just as programmers generally aren't great interface designers, so mechanical engineers are rarely good product designers. Mechanical engineers go to college and learn lots of thermodynamics, fluid mechanics, stress analysis, materials science - applied physics, basically - all very useful stuff to know if we want manufactured things to work. You wouldn't necessarily ask one to design an elegant chair, though, or perhaps the layout and design for the dashboard controls of a car.

Industry employs people schooled in other things - product design, ergonomics, industrial design - to devise the human interface to the manufactured object's functionality. So why even expect a programmer or software engineer to have to worry about the software's human interface? Surprisingly, much of the software industry still does just that. Let the engineers concentrate on what they're good at. Let the interface designers worry about the human interaction with the software. Put the mechanisms in place and develop the vocabulary, standards and communication tools to allow either to understand the other.

Manufacturing industry and product designers have had a hundred years or more to evolve such methods. It should be no surprise that the embryonic software industry is still struggling with it.
posted by normy at 7:36 PM on June 17, 2003 [1 favorite]


Do OSS projects actually have usability problems?

You've never tried emacs have you :).

vi is another good one, although I don't know if it really quite fits the open source they're generally referring to.

Not that it's limited to OSS. I keep harassing the one guy in my lab about how everything in inDesign is done by using some random combination of keys that make no sense. (And don't even get me started on having to draw a box before you place an object).
posted by piper28 at 10:07 PM on June 17, 2003


As an OpenOffice.org dude I can say that we do have usability problems, whatever Ryvar says above :-) They're less than they were (and falling) but we know that there's still lots of work to do. The question really is, what is usability? Sadly we've found that for most people in our field usability is being exactly the same as MS Office in every slavish way. Entirely cloning it without much change. Whilst you're in a lower market position you have to do that, the same way that your programers have to use the dominant APIs so you can piggy back on some of the third party tools.

I do think that GNOME especially has started to clean up its act, there's now real community pressure for people to conform to the UI guidelines and in my experience it's only community pressure that gets things done. There's also an acknowledgement that your program will never be widely distributed (get into the KDE or GNOME default packages) unless it's usable. Whatever their other faults OSS programmers have they do want their stuff to get used.

But overall I echo the chorus of 'hell yeahs' above.
posted by nedrichards at 3:30 AM on June 18, 2003


Wow, Birnam Wood has come to Dunsinane...
posted by cpfeifer at 6:10 AM on June 18, 2003


First of all, thanks for the link (I'm the author of the page linked to)

My basic goal with usability bazaar is to figure out how to get more HCI people involved in the OSS movement. I strongly believe that a lot of OSS products are now more mature than their "commercial" equivalent but they are slowed down by two factors:

1. Bad UI design
2. Perception of being complicated

Ultimately, those can be overcome.

The first step is getting people talking about usability. A few months back, Dive Into Accessibility highlighted some of the accessibility challenges in web design, along with some solutions. Mark did an amazing job that not only got the discussion started but improved the accessibility of a lot of websites out there.

My goal for Usability Bazaar is to highlight usability as a critical issue. I don't have the kind of reputation that Mark does so I'm going to need other people to get involved in order to really make a difference.

Once we have awareness, maybe we'll get some people from the HCI world interested in working on OSS projects (at least that's my hope). Once that happens, we might end up with a sudden improvement in the amount of usability information available to OSS programmers. That involvement, along with general gripes and kudos will help in establishing usability as an issue in the OSS community. Who knows? Maybe we'll start seeing more concentration on this, moving forward.

The next step is establishing a set of guidelines, similar to the Windows XP UI guidelines or the Cocoa ones, for the OSS community. That one will take some time but why not look at what Apple and Microsoft have done, see what's good in there, and improve on it. Why not look at their guidelines, see what really sucks, and drop that. Maybe we can build a better mousetrap :)

I'm glad to see a usability in OSS discussion pop up on MeFi. I think that it's a good start. On my own personal end, I'm working on making myself more familiar with general usability concept and regurgitating them in a simplified fashion back through my blog (see here and there *self links*)

There is another thing that people need to pay attention to, as far I see it. In some cases, the OSS movement has actually improved usability. For example, if I right-click a mailto: link in Mozilla, the context menu asks me if I want to copy the email address or the link. Since I mostly use a web-based email client, this is a nice little usability addition that is worth being applauded.

In conclusion (at least for this post :) ), usability in OSS is not great but can probably be fixed. There are some great usability features in some OSS out there. Let's get a community together to start helping on this. And maybe we will be able to create a set of tools that beats the competition in terms of ease of use. Let's also laud OSS software when it comes to good usable features. If a programmer can get kudos for building more usable software, he or she will probably start thinking more about it.
posted by TNLNYC at 6:35 AM on June 18, 2003


similar to the Windows XP UI guidelines or the Cocoa ones

Weren't the original (pre OS X) Human Interface Guidelines actually user- and lab-tested? It was my impression that the Aqua/Cocoa interface guidelines actually were less well-tested and generally inferior to the originals.
posted by moonbiter at 7:10 AM on June 18, 2003


« Older Hellen Keller The Fraud?   |   When you can't beat them, hold a mirror to their... Newer »


This thread has been archived and is closed to new comments