Design Principles
In an effort to become a better designer, I’ve started codifying a list of design principles I believe to be true. Done in the spirit of ‘strong opinions, loosely held’.
Core Principles
- Design is merely determining and communicating hierarchies of information: what sits in the foreground, what recedes to the background, and what stays off-stage entirely. Entropy is your main enemy, the rest is noise.
- Most software makes me less calm, aim for building software that makes end users more calm or at least not less calm.
- The best products are reliable, fast and beautifully designed. In that order.
- Good design isn’t a prerequisite to having a successful or even useful product, but having a poorly designed product means I can’t look at myself in the mirror.
- Good design has an art like quality to it.
- The best kind of interface is no interface. The best kind of product is the invisible one.
- Product design is not a medium for emphasising your individuality as a designer.
Applied to Product Thinking
- If you’re building a utility tool that power users use frequently, you absolutely have to nail the underlying UI data structure.
- If you’re building a utility tool that power users use frequently, a UI change (even a tremendously positive one) is by default user hostile. [1, 2]
- If you’re not building a utility tool that power users use frequently, purge any unnecessary settings and customisation options.
- With constrained resources nail reliability and performance first, then beauty.
- With sufficiently unconstrained resources either 1) consciously allocate time, or 2) hire people — merely for focusing on polish and going the extra 10 miles (ask companies who say they care about design if they do this lol).
- There is an unquantifiable amount of alpha in creating a product that is beautifully designed.
- Opinionated products > unopinionated products.
- How opinionated your product is, is inversely proportional to the number of people who work on it.
- I can’t remember who said this but ‘an ounce of utility is worth a pound of brand’.
- Brand is what’s left when the substantive differences between products disappear. [1]
On the Nitty Gritty
- Useful and subtle interaction > no interactions > poorly implemented interactions > too much interaction.
- You almost certainly aren’t large enough to need a design system, you just need good primitives. [1, 2]
- Woe is the designer who ignores great options because of obsequious adherence to a design system.
- The source of truth is your product. A Figma file is merely a means of exploration, not a 1:1 representation of your UI.
- I think the modern day product design equivalent of Larry Tesler’s ‘no modes’ should either be: ‘no modals’ or ‘no toasts’.
- Contextual and inline notifications are hard to implement, but undervalued.