The Weekly is a weekly essay on something I've been thinking about in the last seven days. They're less than a thousand words long. This week I want to talk about the metaphors we use when we talk about designing for the web.
I read two (fantastic) pieces on the web this week:
- What even is a website anyway? by Manuel Moreale, who cited,
- Brutalist Web Design by Carl Barenbrug
Sometimes I have no time for Medium-style self proclaimed "think pieces" about the web and technology. They'll expound self-indulgently on non-actionable points, while the rest of us get on with the mundane tasks of building things. This is a criticism I throw un-ironically from the glass house of my personal website.
The above pieces are good. Very good, actually. They remind you it doesn't have to be like this. We don't have to design and build websites and web apps against a feature list that never stands still. That we're building for our audience, not the public.
When I started web development, I internally compared what I was doing to Google's work. Now it's Stripe's (their designers are ~ artists ~ though) and a milieu of other web apps. Every user, we tell ourselves, is expecting an experience which rivals AirBNB, and Reddit, and Etsy. Even when they land on our dinky little personal site.
I don't think they are. I think we, the people who design and build things on the internet, are. Not every blog needs a load-balanced Elastic Search instance against it. Heck, not every website needs Card or a Menu component.
You can build a feature complete website with maybe a dozen html tags and a single CSS file. Does it even need JavaScript? It'd be heckin' fast and SEO optimised to boot.
It doesn't matter what other people are doing. Your website probably won't turn into the next Reddit or Tumblr. A website can be feature complete. A feature list can not grow.
Barenbrug's piece (mentioned at the top) argues that we can see websites like Brutalist Architecture: created and inhabited by humans…
Brutalist architecture not only reduces construction to its basic materials, but it also finds beauty in that simplicity.
I like being reminded of this. I like the Brutalist Architecture metaphor.
There are two other metaphors which I think about a lot when I step back from building.
That Garden Metaphor
I heard about this quote this from George R R Martin, in the context of writing:
I think there are two types of writers, the architects and the gardeners. The architects plan everything ahead of time, like an architect building a house. They know how many rooms are going to be in the house, what kind of roof they're going to have, where the wires are going to run, what kind of plumbing there's going to be. They have the whole thing designed and blueprinted out before they even nail the first board up. The gardeners dig a hole, drop in a seed and water it. They kind of know what seed it is, they know if planted a fantasy seed or mystery seed or whatever. But as the plant comes up and they water it, they don't know how many branches it's going to have, they find out as it grows.
I like this metaphor because it is chaotic and unpredictable. It's non-committed and it changes. I think these are good qualities to have in technology, and life.
Gardening acknowledges the life of a project is out of your control. Something you can guide, and give suggestions to, but eventually something that will thrive best when given good conditions and space.
The Video Game Metaphor
I can't remember where I heard this first. I found some good articleson it, though.
Video games are expertly and intentionally designed. Everyone who designs things can learn something from them. I like the analogy for two main lessons:
- Your design needs to get out of the way
- Design can reduce friction, not make everything easy
Get out of the way. No one plays a game for the User Interface (UI) or Heads Up Display (HUD) design. But a bad design will ruin your experience as a player. Because it gets in your way.
Nobody goes to QuickBooks because they just want poke around. People go to QuickBooks to make sure their receipts, invoices, and payroll are up to date then they get the hell out of there. Nobody opens the inventory in Diablo II to browse, you open it to check the stats on your fire staff and equip or sell it.
I work at a laundry company. I agonise over creating the best user experience and interface elements I can. People don't go to our website because they want to look at a list of things they could get cleaned. They go there to get their things cleaned then get out. People don't want to notice my new Receipt component design.
Reduce friction. Video games are challenging. It makes them rewarding. Hollow Knight is maybe the most frustrated I have felt in 2021 so far and we are in a pandemic. Hades is so frustrating I could cry at times.
If QuickBooks' goal was to remove all stress and difficulty from a user's life, they'd just say "pay us $1/mo and we'll do all your accounting and filing and you'll never have to worry about it". The business fails but the customer succeeds.
Your website or app is one thing your user will do today. Then, if you're lucky, they'll forget about you completely, and move on. They're okay with the friction of the task at large. Taxes are annoying, bank statements are annoying. But you can't solve that unless you become a government or bank.
Don't solve the puzzle, be a good puzzle piece.
See other articles