Monday, February 4, 2008

Writing good homepages, or why I am complaining today.

I re-discovered one of my pet peeves today while surfing around the Internets. Here is the setup: I work using a queue in Firefox. Whenever I see an interesting link in an article or whatever I am reading, I open it in a new tab to read later. The side effect of this is that I might start reading one article, open a new tab, and then read through the next five pages before getting to the newest tab. So of course I forget what I opened, and probably why, so it is sort of important that the new page be somewhat self-explanatory.

Then I read the Galleon page:

The first thing on the page, and incidentally the only content above the fold, is a changelog. And not even a useful one, at that: just some cryptic bugs that could be part of a video player, web browser, or fancy-shmancy version of Solitaire. So if you can't tell from the screenshot above what Galleon is (and I suspect that would be the case), it is an open-source replacement for TiVo desktop, letting you stream from your Linux or Mac (or Windows) machine to your TiVo, something that is otherwise reserved strictly for the Microsoft-running crowd.

The actual description of what Galleon does is at the bottom of the homepage. Also in that section is the features list, which is not included anywhere else in the site, nor is it mentioned in the navigation box on the left. So if you are like me, you get to the page and think "gee, now I have to navigate and figure out what this page is about any why I opened it..." Also, since changelogs usually live on their own, I was extremely perplexed as to where I might find a features page. That is, until I scrolled nearly two screens-full down the "changelog" page.

So here are the nits I have with the Galleon website:
  1. Nobody cares about the actual changelog if they are downloading from the website. Almost any modern project-management website package or hosting (like Trac or Google Code) will let you directly link in to your source tree. So if somebody cares to read the changelog, include a link in the navigation directly to the HEAD version of the changelog. Otherwise,

  2. Nobody scrolls on the first page. If you have separate sections of your website, then there is no reason to include important information below the fold on the homepage. Users know this, so they will not scroll.

  3. Summarize the point of your website, using the fewest words possible, using a large, attention-grabbing font directly on the homepage. See examples from Tumblr, Flickr (log out first, if necessary), ma.gnolia, and Jott. See anti-examples from and of course

I don't want to be unfairly critical, but the simplest thing to keep in mind is to assume that a visitor is looking at your website with absolutely zero context. There are some special cases, one being "if you are here, you know why." I would actually say that might fall in to this category. You could also open the homepage of your local library and have a pretty good idea of how to use it. There are also patterns that are well-understood or self-explanatory. See digg, and to a lesser degree, reddit.

The ultimate question to ask about a homepage design is, "can I spend five seconds reading the homepage and decide whether I want to be at this website?" If you cannot get your message across that quickly, you are sending the wrong (oversized) message. And if you are not currently sending your message that quickly, then chances are you are sending too much background noise along with your signal.

(For some research background, see the Stanford Guidelines for Web Credibility (specifically #7 and its supporting research) and G Lindgaard, G Fernandes, C Dudek, J Brown's paper on fast first impressions (or its mention in the journal Nature).)