One of the most basic rules of interaction is that every action should have a response. You click a button something happens. You click a link, you go to another page. You click the Facebook icon, there’s a pop-up to your account. You click “Save” and a spinner appears. It’s common to everything on the web so we don’t think much about it…but you should.
It’s easier now than ever to have websites (and apps) do things automatically in the background. This isn’t a bad thing but it’s important know when to use and when you shouldn’t.
For example, Google Docs automatically saves your work as you type. I love it. It’s saved my butt on many occasions. It just works and doesn’t get in the way but it still gives you feedback. You don’t think about it and that’s the point. But in some cases the user is faster than the computer.
Within the past year or so, Evernote updated their web app. It was a good update that improved a lot of things, including new features and a cleaner UI. However, one interaction where Evernote failed was in their auto-save feature. Like Google Docs, Evernote saves work automatically but more times than not, I’m done typing my note before their autosave kicks in. The result is me closing the tab (or window) which will either bring up a pop-up dialog, or just losing work. Neither result is desirable but we all put up with it…and user’s shouldn’t have to “put up” with anything.
However, the thing that frustrates me most about Evernote’s interaction is just how simple it would be to correct. Just provide a “Save” button. That’s it. Simple.
Button, button, who’s got the button?
Adding a button to the Evernote app would save all the frustration and work stoppage easily. This doesn’t mean that the app can’t also save in the background, by all means do, but a button gives the user a place to say “I’m done” on their own terms. It lets the user feel like they’re in control rather than the user feeling the computer is in control, and that’s exactly what you want the user to think.
It’s important to give the user a final action to whatever they’re doing. Give them a button…a link…a click, whatever. As long as there is something that lets the user feel like they’ve given the final command, that’s what matters. This is an easy element to add to almost any design because in many cases the action (button, link, etc) doesn’t even have to do anything technically. Remember, the only thing an action must have is a response.
Even if your site saves data automatically for the user in the background, provide a button that does nothing than display a message that says, “your work has been saved.” Easy. It doesn’t have to send or save any data. It just gives users a sense of control over their situation.
Another thing providing action points provides you is an excuse to take some time. When things are happening automatically people expect them to be near-instant and we all know that’s not really possible. Users are for more accepting of responses taking more time when they’re given a final action. If a response from the web site is taking an extra second or two, that’s fine because it was an action initiated by the user, not something computer has chosen to do on its own – or at least, that’s what it seems like.
It’s easy to get caught into thinking that hidden background actions don’t require a button or feedback. And there are also times when a user action doesn’t really need to do anything more than display a response. People don’t want to know everything, they just want to know that what they’ve done is correct and going to produce an appropriate result.