Building on yesterday’s post about the command-line interface, the same sorts of interface concerns play into this discussion of the renewed relevance of the vi input model when using a laptop [via Digg]. The argument is that, without a mouse and with generally poorly placed navigation keys, editing that centers on the home keys and minimizes complicated key combinations is ergonmically desirable. This actually relates nicely to an article I saw linked over at Slashdot about motivations behind the design of vi based on an interview with its creator Bill Joy. The liimiting factors back then were certainly different than those motivating a continued interest in the editor:
It was really hard to do because you’ve got to remember that I was trying to make it usable over a 300 baud modem. That’s also the reason you have all these funny commands. It just barely worked to use a screen editor over a modem. It was just barely fast enough. A 1200 baud modem was an upgrade. 1200 baud now is pretty slow. 9600 baud is faster than you can read. 1200 baud is way slower. So the editor was optimized so that you could edit and feel productive when it was painting slower than you could think.
While this type of bandwidth issue isn’t an issue for most users today, it makes sense that an editor designed to be minimalist in a world where every keystroke cost real time would translate into an editor that is desirable in a physical interface setting where it is also desirable to conserve keystrokes. It makes me wonder if vi isn’t in fact the ideal editor for handheld devices….