Vinicius Brasil

September 17, 2021

Stupid users or stupid design?

As a developer, I often have to solve "bugs caused by users". A user mistakenly clicked a button that performed an unintended action a developer had to roll back. One might think the user is stupid but forgot to question the most important thing. Why the user did that in the first place?


This applies not only to digital products but to the real world too. That stupid door that you always push instead of pulling. Or the ketchup packet that you just can't open without tearing apart with your teeth - and sometimes leaving stains in your pants. Stupid things or stupid you?

Even the everyday things are poor in usability. And in the digital world, it is our responsibility to create products people can actually use. And they shouldn't need a manual to do so. The button that shouldn't be clicked was used because the design was bad - as the ketchup, and as the stupid door.

Jakob Nielsen, the guru of Web page usability by The New York Times, wrote 10 general principles for interaction design. They are called "heuristics" as they are broad rules of thumb and not specific usability guidelines. We can use this to create better, easy-to-use, and self-explanatory interfaces to our products.
  1. Visibility of System Status
  2. Match between System and the Real World
  3. User Control and Freedom
  4. Consistency and Standards
  5. Error Prevention
  6. Recognition Rather Than Recall
  7. Flexibility and Efficiency of Use
  8. Aesthetic and Minimalist Design
  9. Recognize, Diagnose, and Recover from Errors
  10. Help and Documentation

Next time blame the design, not the user.

About Vinicius Brasil

Building cool stuff with Elixir, OTP and Ruby. Majoring in Theology and musician.