I remember being in an airport a few years ago, siting near the gate, about to embark on a domestic flight across the USA. I was watching people file through the neighbouring gate. When the last one was through, one of the staff turned to the other and said something I found amusing.
Why do people keep showing me their passports? We don’t need ‘em!
Viewed from the lens of the airline, this is completely reasonable. It’s a domestic flight. All they need is your boarding pass. You’re not going abroad. Isn’t it obvious?
Now look at it from the point of view of an aeroplane passenger. I’m at the airport, at the gate for my plane. That means I’ve been travelling for at least an hour already, I have at least two hours to go (but probably more like five), and I’m tired just thinking about it. I’ve taken a number of flights before—probably at least one this year. I’m flying from Dallas to San Francisco, but my last flight was coming back home to Dallas from my holiday in Paris, France. It was complicated because I don’t speak French, but I waved my passport and my boarding pass in front of the person at the gate desk, just like every other time, and they scanned it and waved me through. So if I do that again, I’ll get on the plane.
People are not robots. Even when there’s a simple causal relationship between an action (presenting your boarding pass) and an effect (being allowed to board the plane), evaluating that scenario takes more brain power than it’s worth. Your lizard brain, which simply pattern-matches the situation to a similar one you’ve been through before, should be enough.
When you’re building your next app, think about that. It’s a constant source of frustration to many people that the Back button is in different places in different iOS apps, or even on different screens in the same app. I’ve heard people cry when Google Docs or Gmail lost hours of work, because they didn’t realise they were offline and the web page was happily consuming input nonetheless. Calendar for Mac makes a habit of clobbering the address I’m typing with what it thinks I mean without even asking me.
this works, despite its surface-level similarity to Java and C#, I will hand-forge a medal for you and bestow it on you myself.
Whatever you’re making, be it an Android app, a Java library or a financial trading platform, it’s not as special as you think it is. Treat your people like their time is important; don’t make them re-learn old habits. They won’t thank you for it, because they won’t even notice. They won’t be able to explain why they prefer your product to your competitor’s, either. But they’ll prefer it all the same.