Death by a Thousand Differences
This policy breaks down when we consider user interface design. Emerson famously said that a foolish consistency is the hobgoblin of little minds, but in this case, consistency is neither foolish nor easy to achieve.
Red Hat software engineer Havoc Pennington (also an influential GNOME desktop developer) has written an interesting piece (http://www106.pair.com/rhp/free-software-ui.html) on how to balance user choice with the need for uncluttered, predictable interfaces. Hes responding to an argument put forward by Mozilla interface designer Matthew Thomas titled "Why Free Software usability tends to suck" that makes several good points about how the organization structure of many free software development teams naturally leads to complex and inconsistent user interfaces.
Pennington acknowledges the poor usability record Linux desktops have established (see Suns GNOME 1.2.2 usability study at developer.gnome.org/projects/gup/ut1_report/report_main.html). He argues the problem is really one of too many choices.
"A traditional free software application is configurable so that it has the union of all features anyones ever seen in any equivalent application on any other historical platform. Or even configurable to be the union of all applications that anyones ever seen on any historical platform (Emacs *cough*)," he writes.
"Does this hurt anything? Yes it does. It turns out that preferences have a cost. Of course, some preferences also have important benefits--and can be crucial interface features. But each one has a price, and you have to carefully consider its value. Many users and developers dont understand this, and end up with a lot of cost and little value for their preferences dollar."
This is right on the money, and its a problem that is especially bad on Linux because Linux distributors install such large numbers of applications (so theres no hope of enforcing consistency across the system) and because they resist promoting standard system configuration tools in favor of their own options (which they see as adding value).
As much as GNOME needs a good menu cleaning (something I hope happens before GNOME 2.0 ships), this is not just a Linux or Unix problem.
Joel Spolsky dissects the same problem on Windows (www.joelonsoftware.com/uibook/chapters/fog0000000059.html), where its also easy to see where Microsoft developers took the easy way out by adding yet one more preference. That Find Setup Wizard screen still makes me laugh.
I love choice when it comes to hardware, operating systems and applications, but when it comes to interface design, less is more.
West Coast Technical Director Timothy Dyck can be reached at email@example.com.