Saturday, February 27, 2010

The font of whitespace

Or: on the chasm between software developers and software users.

Once, I was editing a document in one of MS Word or OpenOffice, I don't recall.
I had to add a few bullet points to a list. Try as I may, the bullets would not line up.
My bullets were invariably a little bit too much to the left, or to the right, and the whole vertical line of bullets was wavy. I was going crazy. Finally, I asked a friend for help. He immediately diagnosed: see, your whitespace is in the wrong font!.

That sentence has remained for me an epitome of the chasm between computer programmers and users. To a user, the notion of the font of whitespace is utterly meaningless; it is more or less like discussing whether the wine in an empty bottle is red or white -- there is no wine! But to a computer scientist focused on writing the details of the code, it makes perfect sense: you type a space, I show a space, and the space has a font-dependent length, to make words come out nicely when there is a single space between them.

This particular instance of the chasm is not so easily solved. Most of the low-end word-processing systems suffer from it; I am thankful to the genius of Don Knuth for making this a non-issue in TeX.

But if you look around you, you will see countless instances of the problem of the font of whitespace: countless instances in which the design makes perfect sense from the point of view of the software developers, but is utterly mistifying from the point of view of a user who has a simple task that needs getting done.