UI design is as much about expectations


A few of you might remember years ago a blog design I wrote to mimic an email inbox. I had a column of category “folders” on the left, a column of recent posts in the middle, and the post itself in the right.

The feedback I got from people was mostly negative, ranging from it being confusing or difficult to use, and the implementation not working that well across multiple viewports. The latter could be solved with a better understanding of responsive design, but it’s the former I’m interested in.

Recently I came across a site implementing a similar UI. I was bamboozled, just like my readers were back then. I assumed I’d stumbled on someone’s private email server; it wasn’t until I clicked around that I got my bearings, and translated that mental model into that of a personal site with posts and bookmarks.

Not to critique that site specifically, but in general such mismatches are the perfect demonstration of two related axioms:

  • the principle of least surprise, and
  • context is king

Save for games and certain art projects, software and websites shouldn’t surprise people. If you want your words read, goods bought, or tasks completed, you want to reduce cognitive overhead. Danny Halarewich’s 2016 article is still the best summary I’ve found on this topic:

If the user experience design does what it’s supposed to do, the user won’t notice any of the work that went into it. The less users have to think about the interface or design, the more they can focus on accomplishing their goal on your website.

The biggest culprit in cognitive overload is confusing UIs. The user should never have to spend long figuring out how to complete the action they want, nor waste brain power deciphering an icon.

Likewise, context explains why we find UIs applied to alternate settings confusing, even if we understand their original implementation. We may grok car steering wheels and bicycles, but merging the two creates a new, foreign interface that nullifies people’s experience and training.

Personal websites like ours get more of a pass, because they’re as much a living demonstration of technical and design ability. But by the same token, they’re an expression of one’s values. I try and keep things simple and predictable because I value that when I see it on other blogs, and it’s jarring when I encounter ones that aren’t.

In the legendary words of Rob Pike, clear is better than clever. I wish that were emphasised more in modern webdev.

Author bio and support


Ruben Schade is a technical writer and IaaS engineer in Sydney, Australia who refers to himself in the third person in bios. Wait, not BIOS… my brain should be EFI by now.

The site is powered by Hugo, FreeBSD, and OpenZFS on OrionVM, everyone’s favourite cloud infrastructure provider.

You can leave me a comment by contacting me, and I might publish your thoughts. Please read the FAQs first though.

If you found this post helpful or entertaining, you can shout me a coffee or buy some silly merch. Thanks!