Elegance at O’Reilly

The Rise of Interface Elegance in Open Source Software

After getting some great feedback (and some really nice compliments) about my recent article, The Rise of Interface Elegance in Open Source Software, I was asked if it could be re-published at the O’Reilly Network site, OSDir.com.

I’ve always enjoyed O’Reilly publications, so it’s a cool honour to be part of it: The Rise of Interface Elegance in Open Source Software at OSDir.com.

 

The Rise of Interface Elegance in Open Source Software

Open Source software is regularly criticized, often fairly, for lacking in ease-of-use and polish. When a developer wants a new feature – he can add it to the software, and if it gets checked-in by the project owners, it will be there for all to use. The obvious fault with this model is the now well known scourge of “creeping featuritis” – when too many features and options begin to overwhelm and overshadow the core functionality of the software.

The Mozilla browser and suite were a high-profile example of the ills of featuritis. While the software did everything you could possibly want it to, people still seemed to prefer other software packages that did less.

In a well run software project (several of which I fancy myself a part of), any additional feature must be proved valuable before it is incorporated. Even if a patch is already written to add a new feature, there are plenty of reasons not to accept it. More code means more potential bugs and more management. Additional user interface features can detract from other more important features.

Learning to Say “No”

One of the most important acts of a software project manager is to say “no”. No, this patch introduces more code than it should. No, this feature will confuse more people than it will help. No, you’re ugly and stupid (sometimes the manager has a bad day).

The open source software model has dealt with the importance of saying “no” quite well in the realm of code and patches. Projects have a limited set of people with the power to commit code to the project. Anyone can submit a patch, but only the anointed few can accept it. These anointed few are usually determined by right of having founded the project, inherited the project from the founder, or through perceived merit. For more on the issue of project ownership in free software, see Eric Raymond’s Homesteading the Noosphere.

When submitted code isn’t up to snuff, it isn’t accepted (ideally). The practice of saying “no” to patches in open source software is understood and accepted. Now, some projects seem to be learning the value of saying no to ideas and features that will negatively affect the interface and experience of using the software.

Living Examples: Firefox
Firefox icon
The Firefox icon, rendered by Jon Hicks

In discussion about the usability of open source software, the Firefox web browser is sometimes cited as an exception[1]. Out from under the girth of the Mozilla project, this small and simple browser emerged to become one of the more popular open source products and projects. The developers of Firefox leveraged the long and proud history of saying “no” to code patches and applied it to the interface and functionality as well.

The resulting browser provides a better browsing experience than it’s ancestor, Mozilla Navigator, despite having far fewer features and functions. Smart default settings and an overall better understanding of the experience of using the application by the developers helped make it better for everyone.

Living Examples: Gnome and the Spatial Nautilus
Spatial Nautilus screenshot from ArsTechnica
Spatial Nautilus isn’t really much to look at – you really have to use it to understand it. Screenshot from ArsTechnica.

If you think “Gnome and the Spatial Nautilus” sounds like a line from a novel that Douglas Adams and J.R.R. Tolkien might be collaborating on in the afterlife, please bear with me. Gnome is a group of projects that provide a desktop environment on Linux. Nautilus is the name of the file manager in Gnome, like Explorer in Windows and Finder on the Mac.

The “spatial” browsing metaphor a concept for browsing and managing files and directories of which the details are not important for this essay (to learn more about spatial browsing, see John Siracusa’s seminal article, About the Finder…). Suffice to say, the Gnome project has implemented spatial browsing in Nautilus in their latest release, and a lot of people really don’t like it.

Using the spatial browsing metaphor can take some getting used to, and many people who are used to another metaphor (or no solid metaphor at all) are understandably quite resistant to this new model. A fundamental and controversial shift like this is one I would not have expected an open source project to be able to pull off. While a closed corporation has a hierarchy of power, where one person can make a decision for all, consequences be damned, I was skeptical that such a move could happen in the looser structure of the Gnome project.

I was wrong. The developers of Nautilus debated and then declared their bold intent to “go spatial”. There has been much support, and much resistance. However, regardless of whether they were right (which will likely be proven over time), they deserve credit for making such a strong, clear, and decisive move.

Living Examples: Hunting for Preferences in Gaim
Gaim screenshot
The Gaim messaging client is starting to get simpler with each release with a planned simplification of the preferences.

A third and final example of this pattern of interface elegance in open source software comes from a recent discussion on the development mailing list of the Gaim instant messaging client. Gaim is an open source messaging client that works with a variety of protocols (AIM/ICQ, MSN, Yahoo, Jabber, etc.).

Sean Egan, lead developer on the Gaim project, has posted his intent to dramatically simplify the “Preferences” in the application. He lists many preferences that can simply be replaced by a good default, and others that are just plain irrelevant. Rather than getting bigger and fancier with each release, the project seems to get simpler and more elegant.

Killing the Myth of the “Average User” and the “Power User”

Rather than aspiring to do everything imaginable, we are better off aspiring to do everything we might actually want our software to do in practice. While it may be that I’m attracted to projects that tend towards elegance in interface and design, I suspect that the examples I’ve cited here are not exceptions. Rather, I see them as part of a larger trend in open source software – one where simplicity and elegance in interface design is held in the same respect as elegance in code and engineering has been all along.

A kernel hacker, who we might all consider to be a “power user” may not be a power user when he just wants to burn a CD for his road trip. A database administrator, another typical “power user” may just want to chat with his friends, not perform an orchestra of preferences and settings in a chat application. We are all experts in some area of software and beginners in others (and our experience is constantly changing).

Rather than adding more and more features for the mythical “power user”, or swing to the other end of the spectrum and dumb-down the interface for the mythical “average user”, smart developers are learning that good defaults and elegant interface design makes software better for everyone to use, regardless of their level of experience.

  1. John Gruber cited Firefox and Camino as exceptional in their usability as open source projects in his critical reply to Eric Raymond’s essay, The Luxury of Ignorance. The reasons for the exceptional nature of Firefox and Camino are further discussed by Matthew Thomas.
 

My friend Dennis on mix tapes: The Art of The Mix

 

silverorange stuff review: 2004 Toyota Echo Hatchback

Toyota Echo Hatchback Review

I wrote last year about the fuel economics that lead me to lease a 2004 Toyota Echo Hatchback. While I don’t have any new info on the fuel economy, I’ve had a few requests since to post an updated review now that I’ve had the car for a while. With the new silverorange stuff website all about product reviews, the time was right for that updated review.

Here then, is my silverorange stuff review of the 2004 Toyota Echo Hatchback.

 

A New Side-Project: silverorange stuff

silverorange stuff

Working in a place were the peer pressure to purchase new stuff is overwhelming, we have finally found a way to capitalize on our reluctant materialism. The silverorange stuff website is a collection of reviews of stuff that we at silverorange have owned and used.

As the “about silverorange stuff” page describes:

Sites like CNet and DPreview offer extensive and helpful review of thousands of products – we certainly aren’t going to replace sites like these (you’ll notice some of our reviews linking to these sites).

Our reviews will consist mostly of things we research, bought, and have used ourselves. While professional journalists can provide extensive specs, professional photos (we’ll do our best with photos), and review a far wider range of products, we feel there is also value in reviews that start with lines like “I’ve owned this camera for three years?”.

The idea for the site came from already-avid-reviewer and president of the internet, Dan James. Only two days later, we have site a filling up with reviews.

My first contribution is a review of the Salon Premium subscription service. A review of my car and a few others will show up soon.

 

Nice performance by the band Pilate on CBC (RealVideo)

 

The latest silverorange client site is out: Hampshire Pewter

 

Robots!

This video has been linked all over the place, but it is worth it.

It appears to be a demo for a visual effects company. The video is a commercial for an imaginary robotic police officer. It is one of the best produced visual effects shorts I’ve ever seen. The entire video has the feel of roughly collected news footage, and only in a few unfortunate shots do the visual effects become obvious.

Robot video screenshot
Watch the video (16.4MB QuickTime)

It is creepy, unsettling, and amazing.

 

New Artwork for the Mozilla Thunderbird Email Client

Thunderbird iconFollowing the updated artwork for the Mozilla Firefox browser, the Mozilla Visual Identity Team has finished new artwork for the Mozilla Thunderbird email client.

Again, the icon was based on sketches by Stephen DesRoches and ideas from the rest of the team and drawn by the talented Jon Hicks (get him something from his wishlist).

We may update the Firefox icon somewhat to better match the new Thunderbird icon. Great work Jon and the rest of the team.

As others on the design team post about the new icon, I’ll keep a running list of their posts here:

 

A bit from CBC Radio on the bizarre industry of “Christian rock music” (5.5MB MP3)