A humbling experience with '#' characters in filenames

February 13, 2011

It's always a humbling experience to realize that you've made a terrible mistake when configuring a program, even when it only really affects you.

Once upon a time, I was building and thus configuring my first MH setup. MH puts each message in its own file and normally 'removes' messages by renaming them by putting a prefix character on the front; this lets you relatively easily un-delete messages for some amount of time if you made a mistake in removing them. When you are configuring MH, you can chose what this prefix character is.

For some reason (perhaps because it was mentioned as an option in the configuration documentation), I picked the prefix character '#'. This seemed to work well enough, and so I carried this particular MH configuration choice forward to every version of MH I configured for the next, oh, fifteen years. Then in the fall of 2006 I moved to an environment where for the first time in many years I was not using a version of MH that I had compiled myself; instead I was using a prepacked one. This version used the normal MH default character of ','.

Let me assure you that it is much easier to work with files that start with a ',' than it is to work with files that start with a '#'. Until my MH environment switched, I had not really been conscious of how subtly annoying the old way was, but it turned out that it was. As usual, it wasn't an issue of it being impossible or very hard to work with filenames with a '#'; it's that such filenames added friction to the process, enough friction that I avoid dealing with them. Friction matters more than we think it does.

Fortunately my bad configuration decision a very long time ago didn't affect very many people. In all of the environments I've worked in, only a few people ever used MH, and in several of them I was basically the sole user.

Written on 13 February 2011.
« An advantage of the blog approach to web writing versus the wiki approach
Thinking about misunderstandings (in systems) »

Page tools: View Source, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Sun Feb 13 00:04:38 2011
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.