Cancel means cancel


I started to post a tweet and then came to my senses.

I was trying to be funny but funny is in the eye of the beholder — as I paused to think about who would be beholding I realized I needed to cancel the tweet.

So I pressed the “Cancel” button.

This brought up a modal dialog on my Mac asking me if I was sure. More precisely it asked “Are you sure you want to discard this unsaved tweet?” and my choices were “Cancel” and “Discard”.

So I pressed the “Cancel” button.

Of course, it was my fault. I hadn’t correctly read the question in the modal window. But I wanted to cancel my tweet so I pressed “Cancel”. I got a confirmation and this time Cancel was the wrong choice even though I’m trying to cancel my tweet.

In this context, “Cancel” means that I’m canceling the cancel. I can completely see the logic in this. In the context of my dialog window I can either cancel the dialog window without doing anything or I can perform the task I intended to perform.

The language in the dialog window is more specific about what will happen if I proceed. Really, I want to choose “Discard” and not “Cancel” in order to cancel my tweet.

This seems silly. If I press “Cancel” in the first window then the “Cancel” in the second window is causing some sort of cognitive tension.

The issue is that we’re trying to fix the problem in the wrong place. (I say “we” here as if this is your idea). There is a consistency in using “Cancel” in a dialog window to dismiss it without any action.

Unfortunately, that’s the same thing we wish to convey in the original tweet window. The “Cancel” button means dismiss my tweet window without any action. Perhaps, that button can be retitled to “Don’t Tweet”, “Discard”, or “Don’t Send”.

There is no obvious solution. “Cancel” does mean the right thing in both cases. It’s only jarring because the context for the “Cancel” has changed. Would any other choice be less jarring?

Perhaps.