January 5th, 2010


A Quiz Designed to Give You Fitts

Today's link comes via my co-worker Bob Peterson, who pointed the engineering group to it. It's not so much about programming this time; rather, it's about UI design. But really, if you're a programmer coming anywhere near the UI, it's well worth reading.

I recommend going through the page as it says: take the quiz seriously, try to come up with the answers on your own, and then continue on to the answers. The point of the exercise is to demonstrate a basic principle of UI design that is very often overlooked, and he makes a bunch of good cases for why it should be paid attention to. (Personally, I got a few of the answers right off the top of my head, but didn't suss the common thread until it was pointed out.)

Some longtime engineers will undoubtedly look at this and decide that it is pointlessly persnickety -- that the recommendations violate How Things Are Done, and are more trouble than they're worth. But part of what separates a truly great UI from a merely functional one is re-examining your assumptions frequently, and paying attention to those persnickety details. (One reason why our new check fraud product is going to win in the marketplace is that we *are* spending the time to design and build an unconventional but kickass UI...)

The return of jQuote

In a recent conversation, I was reminded of our old, original quotefile from college -- it didn't exactly plumb the deepest wells of wit, but there was a lot of sentimental value to it. And it reminded me that, y'know, I really *enjoy* the quote-collecting game, and used to be really into it. Sufficiently into it that, when I found myself out of work for seven months during the dot-com crash of 2002, I spent the last month or two writing a fancy shareware package to manage them.

jQuote is a fun tool: a quotefile program for the hardcore quotes geek. It hooks into Windows, so that you can press ctrl-shift-q from any program and insert a randomly-chosen quote at the cursor position. It defines a special XML format for quotefile management, including all sorts of capabilities that most people don't even think about, such as categories, filtering, and permission tracking. The intent was to foster quotefile trading, so that the geeks could really go at it.

And then, of course, I got a real job -- the graveyard of fun projects. To be fair, jQuote had succeeded at its primary purpose: to give me enough serious C# experience to serve as a major resume booster. But I never got around to fixing the last major bug. (Which I still haven't figured out: it seems to interfere with Windows shutdown somehow. ETA: But Google comes through: here's the answer. Hopefully that'll fix it.) And since it was intended to be a beta, I'd coded an expiration date into the package. When that computer died a couple of years later, I didn't get around to installing C# on the next one; when jQuote finally expired, I didn't have an easy way to recompile it. So the project simply died. That was five years ago.

But y'know -- I still enjoy the silly quotes game, and I still enjoy those thousand-plus quotes I've got in jQuote format. Dreams of shareware fortune aside, I wrote the tool because *I* wanted it. So I've just downloaded the free version of C#, spruced up the code slightly (and removed that stupid expiration date), and gotten it running again. I'm not worrying about the damned installer (which was more trouble than the program itself), but if there's interest from people who want to just download and run the program manually, I ought to be able to put it somewhere on one of our websites.

And so, the Random Quote du Jour, my signature from days of yore, returns. I probably won't use it as consistently as I once did, but it's fun to have it around again, allowing me my moments of random Zen...

Random Quote du Jour:

"The real question for 1988 is whether we're going to go forward to
tomorrow or past to the -- to the back!"
-- Vice President Dan Quayle