[Usability] The checkbox fallacy



Erik Pukinskis wrote:
>...
> > Behalf Of Kevin Vandersloot
>...
> > * Provide "Are you sure" dialog for each item.
> 
> While these dialogs might avoid disaster, they can be a big annoyance
> and killer of efficiency.
> 
> I'd suggest adding to the dialog box specifications that ALL "Are you
> sure?" dialogs (and possibly all alerts?) should have a check box that
> says "Don't ask me again."
>...

That's a gorgeous example of the checkbox fallacy -- the belief that a
checkbox to turn an alert off (but I thought checkboxes were to turn
things *on*?) allows a useful choice for those people who need a
confirmation alert and those who don't.

This idea is very well-meaning, but it doesn't really work. It assumes
that only some people need the alert, and that they need it all of the
time. Usually, however, the problem is that all people need the alert,
and that they need it only some of the time. That `some of the time'
being when they make a mistake -- as we all do occasionally, whether we
are beginners or experts.

A typical response to this alert would be for a user to put up with it
until she becomes familiar with it, becomes suitably annoyed with it,
and works out how to turn it off; and then to carry on for a while with
it turned off until, a short time later, she chooses the command by
accident for the first time; and then to say `oh, how unfortunate' (or
coarser words to that effect), and look for the option to turn the alert
back on. Rinse and repeat, until she realizes she can't win.

Aha, the option to turn the alert back on! You did remember that, didn't
you? It's no good having an option which can only be set in one
direction and not reversed until the next time the hard drive dies or
that particular config file gets corrupted. No, you need to have UI
somewhere for turning the alert back on -- the usual place is in the
Options or Preferences dialog for the app. So, how many confirmation
alerts does your favorite app have? Here's the ones I can think of
offhand for Mozilla (admittedly, some of them are wishlist items) ...

Warn me before:
[/] going online to get a Web page which is not available offline
[/] deleting a bookmark folder
[/] deleting a bookmark
[/] entering a secure site
[/] leaving a secure site
[/] entering a site which uses weak encryption
[/] entering a site where the security certificate is too new
[/] entering a site where the security certificate is too old
[/] entering a site where the security certificate has bad credentials
[/] entering a site where the security certificate is for the wrong site
[/] sending unencrypted information
[/] an encrypted form is redirected to an unencrypted site
[/] closing a window containing unsaved form information
[/] setting a cookie
[/] sending a message
[/] replying to a really old newsgroup message
[/] including a large attachment in a newsgroup message
[/] sending an HTML message to someone not known to understand HTML
[/] sending a message which mentions `attach' but has no attachments
[/] cross-posting to more than [ 3] newsgroups
[/] chopping some onions

The net result is a fear and loathing of the interface -- with nasty
alerts looming on one side and precipitous dataloss beckoning on the
other, and an unpleasant options panel which requires you to choose
between the two. As Woody Allen said: `One path leads to despair and
utter hopelessness. The other, to total extinction. Let us pray we have
the wisdom to choose correctly.'

So, there must be a better way, surely? Why, yes there is. Remember, the
general principle you're applying here is one of commensurate effort --
the idea that the difficulty of doing something should be proportional
to the difficulty of undoing it.

A confirmation alert is a programmatically simple way of making
something harder to do. But there are more pleasant ways you could
achieve the same end; for example, `Log Out', `Restart', and `Shut Down'
could all be in an `Exit' submenu, where the submenu itself makes the
actions more difficult to select by accident.

The other side of the equation is to make logging out, restarting, and
shutting down easier to undo -- which basically means improving the
speed with which you can start back up and log back in.

-- 
Matthew `mpt' Thomas, Mozilla UI Design component default assignee thing
<http://mozilla.org/>





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]