What interactive console commands never do

If you’ve ever used an interactive console task and screwed up some of the settings, the following kind of exchange should look familiar to you:

[niko@localhost:~]$ animal-generator

Welcome to the interactive stuff generator!
Please give a latin name for an animal: Canis Lupus Familiaris
How many instances do you want to generate [1]: 50
What is your favorite color [lavender]: red
Write here the word "inconvenience" [croissants]: inconvenience
Are the above settings correct? [no]: yes

ERROR: You already have the file canis-lupus-familiaris.dat in your home directory. Please delete it and type in all the options again.
Usage: animal-generator [--animal="..."] [--instances="..."] [--color="..."] [--no-inconvenience] [--confirm]

It’s fine and dandy that the command suggests a way to skip the interactive part but it’s not going to be much of a help to us after we’ve already screwed up the process and will have to do it again after cleanup by either going through the wizard a second time or typing all the options as command line parameters. Copying and pasting the names of the parameters and their values will take about the same time as typing them manually, if not longer.

Why can’t the error message look like this?

ERROR: You already have the file canis-lupus-familiaris.dat in your home directory. Please delete it and type in all the options again, or copy the command below to run the command again with the exact same parameters.
Usage: animal-generator [--animal="..."] [--instances="..."] [--color="..."] [--no-inconvenience] [--confirm]
Try again: animal-generator --animal="Canis Lupus Familiaris" --instances="50" --color="red" --no-inconvenience --confirm

This entry was posted in Ideas, Usability. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>