Technical ramblings
Thursday, December 14, 2006
  I hate wizards.
No, not the Harry Potter variety. No; I cannot stand computer 'wizards'; essentially a sequence of prompts obtained from a user which guides him through a list of choices.

Now generally you have two types of computer interactions in a GUI centric environment. The first we could losely call the "document-centric" or "editor-centric" interaction, which involves an application with one or more windows, each window displaying a representation of one or more documents. Your web browser is an excellent example of a "document-centric" application that doesn't (generally) involve saving the contents but only browsing them, and where the source of the "document" is not your local hard disk.

The second type of interaction is the "settings" or "control panel" interaction, where you have a list of specific settings that you need to modify. The difference here is generally you only interact with one window containing information concerning a single set of environmental settings. If you are within an application, generally this is represented using a modal dialog box. If the primary purpose of your application is to act as a control panel, your application usually only presents a single window.

A 'wizard' represents an even worse beast than an application modal dialog box. It's a modal dialog box with a series of fixed modes which guide the user--and that's bad: the computer program takes control from the user, rather than allows the user to keep control. The worst of this breed is the "installer" wizard: the user wants to install something and the computer, rather than obliging or at least telling the user "you have some options you may want to think about", instead interrogates the user with twenty questions, of which he'll probably get nineteen of them wrong. After all, unlike the developers or the testers, the poor end user of your application who just installed it for the first time has no friggin' idea what the options mean. (I worked on an application once where the installer literally queried you for twelve or thirteen settings prior to installing--half of which you couldn't possibly understand the ramifications until after the application's help system was installed.)

Wizards need to die!

Anything that can be done with a sequence of modal dialog boxes giving the user the third degree can also be handled with a control panel. For example with an installer just put up two screens: the obligatory "EULA" which the user won't read but at least makes legal happy, then put up an "options" control panel which uses tabs to bury the more obscure settings ("install with warp core preheat active?") so that the user can just say "yeah, install this, and give me all the options", and be up and running.

Which also reminds me: why do installers ask the user for anything beyond "where do you want me to put this?" and "do you want me to unpack all the options now?" An installer should be like a moving service or a moving company: polite, quiet, efficient, and not constantly pestering the poor user with questions the user probably dosn't know the answer to. ("I think the couch would look better over there. What do you think?") And unlike the moving company you should be able to put the installer disk back in the computer and unload or load more options to your program after the initial install process--and not have to wade through a constant barrage of questions. ("Why are you doing this? What do you want? How much do you want? What is the air speed to wing span ratio of a fully laden swallow?")
 
Comments: Post a Comment

Subscribe to Post Comments [Atom]





<< Home
... where our hero, embedded in the computer industry, rambles on about software development issues which catches his eye or (more likely) annoys the hell out of him...

Name:
Location: Glendale, California, United States

I'm your humble host, a resident of Southern California, an ornery conservative in a liberal land, a software developer who also likes to do woodworking and cook.

Archives
July 2005 / August 2005 / November 2005 / January 2006 / December 2006 / February 2007 /


Powered by Blogger

Subscribe to
Posts [Atom]