User Experience is Like a Joke

(If you have to explain it, it’s no good)

This post is based on my PechaKucha (20 slides x 20 seconds each) presentation given at ThoughtWorks University in July 2015. Slides here.

DISCLAIMER: Much of my material is sourced from these highly recommended resources, which in the spirit of good UX, are quick but very insightful reads.

  • Design of Everyday Things, Don Norman
  • Don’t Make Me Think, Steve Krug
  • User Interface Design for Programmers, Joel Spolsky

Millions of apps

As of July 2015, there were 1.6 million Android apps and 1.5 million Apple store apps available.

How do we differentiate ourselves? We need to “wow” our customers.


Slack is a chat app for companies, not a new idea, but it was the fastest company to reach $1 billion in valuation. Why? I, and many articles, would argue because of its user experience. Good UX sells software, but it also makes people happy, because people are happy when they are able to do what they want to do.

One does not simply become a designer

Many still think that UX is only for experienced designers, or the realm of latte-drinking, dressed-in-all-black creatives and that it’s not logical. However, I’d argue that it’s actually very rational, and there are some simple, logical rules that anyone can apply to improve the products you work on.

As Steve Krug’s wife would say, the basic principle is that “If something is hard to use, I just don’t use it as much.”

Don’t make me think

Day-to-day, we are constantly faced with countless choices. When you are creating a website, your job is to get rid of some of these question marks. We might not think it’s a big deal if the user has to spend a couple seconds figuring something out, but these things add up.

Learned Helplessness

Joel Spolsky discusses this psychological concept, where small frustrations, such as banging yourself on the door on the way out, or fumbling with your keys, or dropping something, can all add up to make you feel extremely frustrated and upset. When something happens that you don’t expect, the subtle feeling that you aren’t in control translates into helplessness, which translates into unhappiness.

On the other hand, small victories can also add up, to make you feel good.

User Model = Program Model?

A well-designed user interface responds exactly how the user expects it to. The User Model is how a user thinks the software will work based on expectations and prior experience. The Program Model is how the program actually works.

If the program model closely matches the user model, you have a success.

Ask yourself — does it respond in the way that the user expects it to respond?

Follow conventions

Conventions help us understand how to use complicated systems, like how to drive a car, because all cars are similar. Unless your way of doing things is significantly better than the existing conventions, it doesn’t help the user.

According to Steve Krug, there’s only a couple cases when you shouldn’t just look at what other popular programs are doing and emulate them:

a) It’s so clear and self-explanatory that there’s no learning curve — so it’s as good as a convention, or b) it adds so much value that it’s worth a small learning curve.

There are a few other concepts that can help a user figure out how your product works simply by looking at it.


This phrase was popularized by Don Norman to refer to the properties of an object that suggest to the user how it should be used. For example — a protruding door handle looks like it should be pulled. Shadows on buttons on websites suggest that they should be pressed.


Metaphors are representations of real-world things, like a magnifying glass icon that represents zooming in and out, or an icon of a trash can to demonstrate how to delete items.


Consistency is pleasing to the eye, promotes reusable code or designs, and also helps make sure things behave as expected from interacting with other similar parts of the same product.

Users don’t read the manual (or anything really)

Users rarely read your website or remember anything — we mostly scan and muddle through until something happens. Every time you provide an option, you’re asking the user to make a decision. If you constantly try to design your program so that it’s easy enough for people with very short attention spans to use, you’ll be surprised how small improvements can translate into many more customers.

How do I know it works?

Just ask.

Most experts agree that even asking 5 or 6 users to try out your product is enough to tell. Remember that the more complex the program model, the more it probably differs from the user model.

So go forth and simplify.