Over the years, I've been noticing which apps users love and which ones they don't like, or even hate. And I've decided that one of the biggest indicators of this is about how well they tolerate mistakes by users.
Users tend to learn to use apps in three ways:
- They watch or read some instructional material (this is actually the least common)
- Someone else shows them how to use the app (this is really common)
- They just experiment with the app (this is actually the most common)
How well do your apps allow people to experiment?
- Can a user click to enter part of an app without consequences?
- If a user starts to create something, can they opt out at the last moment?
- If they did create/change/delete something, can they undo it?
- Can they truly undo the action, not just reverse it with a compensating action? (i.e. can they make it like they never did it in the first place?)
I see new users who are terrified of using applications, and time and again, it's they are actually terrified of "messing something up" or "doing something by mistake". In either case, they're worried that they can't fix what they did. (And in come companies, they're going to be blamed for doing it).
How do your applications rate on this basis?
Totally agree. I see many instances where Devs are thinking like Devs and not end users. The classic is let the user do something then 'punish' them with a 'I'm sorry Dave, I can't do that' message.
Naming things is another area: Recently I saw a Dev name a UI checkbox 'IsAsync' when it should have been called 'Queue Report'.
Another is something I like to term 'make the computer work for the user, not the other way around'! i.e. where possible don't make the user enter/select things that could be inferred/calculated automatically.
Thanks Mitch, totally agree.