- Touch and Go
- Hide and Seek
- Position Matters
- Don't Simulate
Hide and Seek
A modern desktop has a huge screen. Even a recent laptop has a decent amount of space; I'm typing this article on a four-year-old laptop with a 15-inch display. I've also written articles on my Nokia 770, and its screen could fit several times into this machine's screen.
On both systems, I use the same text editor (Vim), but I use it in different ways: On the 770, I run a full-screen xterm, and Vim occupies the entire display. On the laptop, I have a lot of different windows open, with Vim sitting in one terminal window, surrounded by other things giving various bits of information when I glance their way.
All of this extra information is convenient, but it's not worth the cost on smaller screens. If you look at the screenshots of the initial port of AbiWord on the 770, half the screen is taken up with toolbars. When I'm writing a document, I want to see the document, not controls. Vim, in contrast, is very cleanexcept for the line at the bottom, my text occupies the entire screen.
Of course, Vim is a terrible example of a touchscreen app. It uses the keyboard for everything, which is why I only use it in conjunction with a Bluetooth keyboardbut that's an issue with the interaction, rather than with the display of information.
When presenting a user interface for a small screen, it's very important to minimize clutter. On a large screen, displaying an icon that the user will click only once in every few hours of work is worthwhileit will save some time. On a handheld, the same icon takes screen space away from important data.
This fact explains why Apple's UIKit often feels like a crippled version of AppKit to OS X programmers. A number of the features that desktop programmers use for making complex UIs have been removed, making it harder to design unsuitable interfaces. It remains to be seen how much of a problem this will be on larger devices like the iPad.