Friday, July 31, 2009

Writing Software for the Keyboard

Over at Punished by Rewards, Pete’s thrown out some ideas on how to improve the Remember the Milk web user interface.  Actually, maybe it’s not so much how to improve it as it is complaints about how it is currently designed.

Either way it is interesting to see how one’s personal preferences around the use of software in general colour one’s opinions about how software is designed in particular.  I don’t pretend to know what the RTM design team is thinking but one thing that is relatively clear to me is that they’ve designed the website to be manipulated using the keyboard, not the mouse.  This is a particularly interesting design choice given that web design typically favours mouse-based navigation and interaction.  Also, for people who use OSX regularly (which basically treats the keyboard as an optional accessory) it is easy to see why the mental model of RTM does not suit their typical usage patterns.

That being said, does this mean that RTM is designed with a particular set of users in mind?  Again, without being privy to the design decisions of the development team it’s hard to say conclusively.  What I have noticed is that the RTM user experience does seem to be geared towards the power user.  Using the Windows metaphor as a guide, we see that novice users begin with the mouse and progress increasingly to shortcut keys and keyboard interactions as their familiarity and speed increases with experience.  The concept here is that the hand movement from keyboard to mouse is an expensive operation and with experience can be avoided to make for a more efficient sequence of use.

The design of RTM asserts that, since text has to be typed for the substance of the task, the UI should attempt to keep the user at the keyboard for as much of the experience as possible.  This can be a huge irritant for new users but incredibly efficient for power users.  It’s hard to say if this is the right or wrong decision since it really boils down to usage.  But as Pete has said before “good software is opinionated”.  The design team at RTM has made a decision about who their target market is and (since I feel I’m part of that group) it really does work well for them (us?).

On the other hand, there are some odd/poor choices in the way the UI provides feedback to the user.  What is that arrow on the first task of each list?  If multi-edit mode is not enabled, why allow the user to select multiple tasks?  Why is task sorting exclusively by priority and date? Why are there no keyboard shortcuts to move tasks from one list to another?

It is tough to write truly useful, inclusive software.  I would be hard pressed to hold up RTM as a shining example of a universally appealing success.  Nevertheless, for my usage scenarios, it does what I need it to do brilliantly.  Like all good software, it lets me do what I want (manage my tasks) and gets out of the way.

No comments: