Wandering Thoughts archives


The importance of small UI tweaks (for me), dmenu edition

The basic behavior of dmenu is that it reads a bunch of things from standard input then puts up a window which displays those things (or as many of them as fit) and lets you type things with autocompletion from the list. The standard version of dmenu puts as much as possible as it reads from standard input into the display area and as a result if you have a lot of completion items you get a very cluttered display area. Because I don't like this sort of clutter I spent a long time keeping my dmenu completion items relatively modest.

(Modern wide screens exacerbate this effect because they create lots of display area.)

Relatively recently I made a little change to my private version of dmenu: I added support for completion items that didn't show up in the initial display (they show only if you type something and they match it). The compounding effect of this small change was quite interesting. Because extra items no longer cluttered up the display, I became willing to put in a whole bunch of extra items. These extra items, now available for fast completion, made dmenu more convenient to use for access to them and as a result made me happier about using dmenu in general. In short, yet another little point of friction I hadn't even realized was there had been abraded away (I've seen this sort of invisible friction before).

(See here for the source for this if you're interested.)

What this says to me is that small UI tweaks matter. Over and over again (cf), small things that I thought would be insignificant have turned out not to be so. And if these things are lurking in my environment, how many of them are lurking in the programs that I write? There are almost certainly little things that really do matter lurking in my programs and I should probably pay more attention to my sense of niggling irritations and 'this could be better' in them.

(This isn't perfect because it reflects how I use my programs and systems, not necessarily how other people do. Exposing something to other people and seeing how they use it is always a humbling experience when I can observe it.)

programming/SmallUITweaksImportance written at 00:11:57; Add Comment

Page tools: See As Normal.
Login: Password:
Atom Syndication: Recent Pages, Recent Comments.

This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.