Please, no automatic scrolling to the next item

August 18, 2010

As I was using Thunderbird today, I was unpleasantly reminded of a reasonably common UI idiom that I absolutely hate: having the way you page through a single 'item' (in Thunderbird, using spacebar to go through an email message) also be the way that you advance from one item to the next. The net effect is that you are paging through a message and then suddenly, surprise, you're reading the next email.

This is wrong. In the case of Thunderbird, I can explain succinctly exactly why it is wrong: when I've finished reading one message, going on to the next one is almost never what I want to do next.

Almost always, I want to either delete the message, file the message away, or reply to it. I almost never want to simply leave it sitting there in a read state. Thus, instantly advancing to the next message is 'optimizing' for the extremely uncommon action; in practice, it means that Thunderbird is doing the wrong thing almost all of the time when I hit spacebar at the end of a message.

You might wonder why I keep hitting spacebar at the end of messages. The succinct answer is that the programs are terrible at showing me when I have actually reached the end, for various reasons. That's why I want scrolling to stop and nothing to happen; it's a clear indicator that I've seen all of the message and I can now go on to dispose of it in some way.

Most programs, Thunderbird included, make then this worse with another design decision; the normal 'go back one page' key doesn't undo this, so you can't easily reverse an inadvertent advance. Sometimes it does nothing, but in Thunderbird it does something completely different and you will actually get more disoriented if you try it.

(If I used Thunderbird for more than testing our IMAP server, I think I would put together a personal Thunderbird build with this feature taken out, assuming that I could find it in the Mozilla source code. Sadly, it doesn't appear to be controllable through any configuration options.)

The only time this sort of behavior is even vaguely tolerable is when you really do faithfully simulate an endlessly scrolling display, so that people can scroll back to the previous item just as easily as they've been advanced to the next one. Even then, you should be considering carefully what people will really be doing at the end of messages. If it is not 'skipping on to the next one', maybe this is still the wrong interface.

Sidebar: the end of message problem

One of the reasons that programs are terrible at showing the end of the message is because they they don't don't allow the bottom of the content (the email text, the web page, etc) to go above the bottom of the window.

This needs some elaboration. The easiest way to see what I mean is by comparing the behavior of a GUI browser with that of a pager like less (or even lynx). When you page through something with less and the end does not naturally fall at the bottom of your screen, less advances a full page at the last page and leaves a bunch of blank space at the bottom of your terminal (in the extreme case, all but one line will be blank). When you do the same thing in a browser, the bottom of the content never goes above the bottom of the browser window; when you advance to the last page, the content scrolls by less than a full page. This means that you lack an obvious clear clue that what you are seeing is the end of the message; you have to notice that the content didn't scroll by as much as you were expecting.

Written on 18 August 2010.
« The two sorts of Referer spam that I see
Getting Flash to work on my upgraded 64-bit Fedora 13 machine »

Page tools: View Source.
Search:
Login: Password:

Last modified: Wed Aug 18 02:43:14 2010
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.