The User Doesn't Want To Wait
Published: December 09, 2008
Too often user interfaces are muddied by this fact that seems lost on software developers. When I install software, I want to answer all of the questions UP FRONT and then let the computer do the dirty work. I should be able to leave without wondering if the computer will need babysitting later on! Not only should user interfaces do this, but they should INDICATE when they are doing this so that I know it's safe to leave :) Some prime examples:
- Operating System Install
- New Software Installation
- Redesign debian apt-get to ask any and all configuration questions up-front! I realize there are technical challenges to this, but we're software developers, and I'm sure there are harder things to figure out...
- FreeBSD could do the same with portupgrade, etc...
- Ironically, Microsoft has this just about right with Windows Update - although Debian is quite similar if you schedule a cron job to download and install the updates.
- Microsoft Windows - Deleting files should be a background process (at least optionally). The file system should be able to mark a tree for deletion so that explorer doesn't see it, etc... and then the delete should just happen. I don't really care when it finishes! If the user wants to create a new file that conflicts with a file scheduled for deletion, then the OS should be able to deal with that too ...
The goal should be to let the user do as much as possible in as short amount of time as possible. The software should save the time intensive tasks for later and manage them in a way that does not impact the user.