-
Get a monthly update on best practices for delivering successful software.

Building software people love involves learning to read minds - or at least learning to think like your users. In the world of free, web-based software, there will always be 10 versions of every application: 10 different to-do lists, 10 different dictionaries, 10 different bookmark organizers. It's not enough to meet users' expectations about features; you've also got to delight them if you want to win market share. If you don't think through every interaction and use case, you're probably annoying the hell out of people without even knowing it.
That's why it's important to actually watch users in action with your application. It's a maxim in user experience design circles that you, the programmer, are not the user. Sure, you should eat your own dog food, but remember that the experience of using software that you wrote - and whose every shortcoming and compromise you understand from the inside - isn't the same as chancing upon that software in the wild and giving it a shot. Look at your software through the fresh eyes of users who didn't write a single line of the code. That's when you'll actually learn what you've created and how to improve it.
... all of which proselytizing serves only to introduce one rant and one rave about free software I use every day. Neither of these are web applications, but both of them are tied directly to the 'net.
Thunderbird, the Mozilla-based desktop email client, is slowly evolving into a serious contender. Sure, it's Lightning calendar plug-in has a ways to go, but I'll take the core email product over Outlook or Apple's Mail client any day. That's why Thunderbird's dunderheaded spam filter makes me curse at least 10 times a day. Of the hundreds of spam messages I get each day, 90% end up in the spam folder, 5% end up in the inbox marked as suspected spam, and 5% end up in the inbox with no spam warning at all. The problem occurs because the great big "Junk" button you're supposed to click to banish an unidentified spam message to the spam folder only appears on messages that haven't been marked as suspected spam. For messages that Thunderbird already suspects of being junk, the "Junk" button becomes a "Not Junk" button. This makes it impossible to program your muscle memory to click that button when your brain sees spam. Sometimes, hitting that button will banish spam, but sometimes, hitting that button will erase the suspected-spam designation and leave the message in your inbox. Compare this to Gmail, whose spam button banishes messages to the ether regardless of whether Gmail already suspected them of being spam. Sure, in Thunderbird you could just use the Delete button as your go-to way to banish spam from the inbox. But then, you're not training Thunderbird's junk filters for the future.
Contrast my daily Thunderbird anguish with the little flutter of joy I get every time I subscribe to a new feed in NetNewsWire, the free Mac desktop RSS client. If I copy a feed URL from a web page into my clipboard, then click command-N in NetNewsWire to create a new subscription, NetNewsWire is smart enough to grab the contents of my clipboard and use it to pre-fill the subscription wizard. All I need to do is tell NetNewsWire which folder should house my new subscription. Granted, this little convenience doesn't save me much - just the effort of typing command-V to paste the URL I'd previously copied with command-C. Still, it's the little things that count in interface design. This little thing delights me. And it's those little moments of delight that bond your users with your software in way that mere feature adequacy never can.
Related posts:
Topics: User Interface Standards, uxd
I wish I could take credit for the clipboard-grabbing feature — but it was actually the NetNewsWire beta testers (who are smarter than I am) who came up with that. I love my beta testers.
Comment by Brent Simmons, Thursday, March 27, 2008 @ 1:20 pm
If muscle memory is your concern, keyboard shortcuts J and Shift-J always mark messages as “Junk” and “Not Junk” respectively.
Comment by Michael Hellein, Monday, April 7, 2008 @ 8:11 am