I recently read Butterick’s Practical Typography. It’s a good reference book, the kind I’ll go back and check often — at least until I have enough practice and enough opinions of my own. But my main takeaway had nothing to do with typography — it was about how universally important attention to detail and respect of the consumer are. Reader for writers, user for software builders, a hungry person for a chef.
Who is software for?
He has a table in Who is typography for? which summarizes something I think about often in such a clear way, I’ll steal and adapt it for what I do every day: building software.
| Builder | User | |
|---|---|---|
| Attention span | Long | Short |
| Interest in what you built | High | Low |
| Convinced they need it | Yes | No |
| Cares about your vision | Yes | No |
Butterick’s original has “writer” and “reader” — the dynamic is identical. If you’ve worked on building consumer software long enough, you know most users are looking for reasons to stop giving you their time. This is most obvious in onboarding, since you have not given the user anything to care about yet.
Superhuman famously required 1:1 onboarding calls for their $30/month email app. They wouldn’t let you use it until someone walked you through it.
And as he says, the only person that’ll match your willingness to explore is probably your mother.
Dogfooding can make you blind
I used to think it’s an unbeatable advantage to work on things you use yourself. I still do. But it makes you blind.
You know the intention behind every screen. You know the third tab is where the value is. You know the onboarding is a formality. The user knows none of this. They do not understand your intention, unless you give the care and attention to each and every screen to convey it.
Maybe you use the software you build every day. Beeper is my most used app by screen time. But do you use it the same way as users? Just ask Snapchat.1 How would your users even know how best to use the thing?
This is worse for products built by engineers, for engineers. It is so easy to think they’ll see the value in what you built because you are an engineer too and it is so obvious to you! But did you give enough care to be sure your intention is felt? Or, maybe you cared too much and were afraid of being misunderstood so you added a paragraph of text to explain how awesome the thing you built is.
According to some sources, fewer than 2% of users tap “read more” on App Store descriptions. The screenshot carousel is your entire pitch.
Well, I have news: nobody reads. Nobody cares, by default. You have to make sure you give your user enough love so they might, sometime in the future, start caring.
So if you can’t trust your own eyes, what do you do?
You can just try things
Another maxim I’ll steal and bend to my will: “When in doubt, try it both ways.” Butterick’s point is that you shouldn’t try to resolve decisions with logic alone — make samples and get a visual reaction.
Everyone has opinions and “rules” for everything in software. But you can’t know the taste of something before trying it. Sometimes you do the thing that converts slightly less, but it delights the user so you win in the long run.
Only way to know how things will taste is to try them. Don’t debate, just build. Airbnb did.2 (This used to be expensive advice — AI changed that.)
Butterick wrote his book about typography, but the underlying principle is the same: the craft is not for you. It’s for the person on the other side. Give them a reason to stay.
- Snapchat’s team used their own app daily, yet their 2018 redesign lost them 3 million daily active users in a quarter. Kylie Jenner’s single tweet about it wiped $1.3 billion off their market cap. Google Wave was built by brilliant engineers who loved it — users opened it and had no idea what to do. Dead within months. ↩︎
- Instead of debating whether professional photos would help listings convert, Airbnb just rented a camera and tested it themselves in New York. Those listings got way more bookings. ↩︎