posted by Nicholas Blachford on Wed 11th Aug 2004 07:53 UTC
IconComputers are complex systems but it's a mistake to assume they need to be complex to use. However, usability is not as easy as it may first seem. It is a different discipline from software development lacking the strict logic or having a "right way". There are only differing requirements and differing collections of guidelines. Making things easy is difficult.

I've used a number of operating systems over the years and it's obvious that some systems get usability right more than others. It's also obvious that you need usability people on your team if you want to get it right, I've never seen a programmer driven OS (volunteer or paid) produce usability to the same level as companies with usability people.

Usability is paradoxically, not an easy subject. It doesn't have the mathematical background of computing, so there is no one correct or incorrect way to do it. It strikes me as something between art and science, about putting the right things in the right place, not over complicating things, simplifying where necessary and moving more complex or less used options out of the casual users way.

The people developing a system often have very different requirements and preferences from those who will be using it. Developers are a different kind of people from normal users, they like technical stuff, they like to be in control and have many as many configuration options as possible to allow optimisation, they will often have very good memories for detail.

Users tend to be be pretty much the complete opposite of this, but that is not to say they are any less intelligent, that "user" may be performing brain surgery on you one day. However due to these differences software developers do not generally make good usability people, they can make software usable for themselves but that may mean it's completely unusable for casual users.

"Programmers do their work but once, while users are saddled with it ever thereafter." - Jef Raskin

There is no "perfect" usability as not everyone works the same way. Trying to force a method of working on users is likely to backfire. Witness the outcry some users made about Gnome when they switched to a spatial nautilus. A spatial browser does not work well with a deep file system hierarchy, unfortunately many users have exactly that and consequently had problems with the system.

All users -even developers- get used to ways of operating, even if something new is better, the fact they are used to the old way means there will always be resistance to change, a chunk of the complaints about the recent changes in Gnome will be for this reason and this reason alone.

Of course the advantage of creating a new platform is that there are no existing users to complain when things change. Of course this means migrating users from another platform will have difficulties but this is only the case if that's what you want to do, what is the point of building a new platform to do the same as all the others?

More or less options
One approach to usability is to simplifying everything by removing options, this strategy assumes users are idiots and in my opinion is more likely to annoy users due to lack of options than help usability. Just because someone doesn't know about the inner workings of an computer does not mean they are an idiot. Usability is not about "dumbing down".

Removing options or flexibility for the sake of it may make things easier to use, but it also makes for an inferior product. On the other hand adding too many options is only likely to confuse users.

Gnome and KDE respectively are taking these approaches, the end result being Gnome is annoying some advanced users (to the point that the spin off project GoneME has started) while KDE is confusing for casual users (or at least the control panel is).

OS X has plenty of options but they are not thrown at you all at once, many are hidden behind "advanced options" buttons and such like, it manages to be both powerful and easy to use. Different companies and projects have been copying the Mac for years simply because it looks so good, nobody seems to have ever matched it's usability though.

Sometimes adding complexity actually helps usability. Try editing a sound on a early 90's synthesiser, then try the same on a 70's synth. The 90's synths used a minimalist approach with only a few buttons to navigate a wide variety of different controls, consequently they were a compete pain to use. The 70's machines put all the controls on the front panel and allow direct access. Initially these were frighteningly complex just to look at but once learned were very easy to operate. Today modern "virtual" synthesisers have gone back to allowing the same 70's method of operation.

Table of contents
  1. "Building The Next Generation, Page 1/4"
  2. "Building The Next Generation, Page 2/4"
  3. "Building The Next Generation, Page 3/4"
  4. "Building The Next Generation, Page 4/4"
e p (0)    50 Comment(s)

Technology White Papers

See More