Skip to content
← Bookmarks
Added 4 Aug 2026kalzumeus.comfiled under Products That Last

Every assumption your signup form makes about names

A note on Falsehoods Programmers Believe About Names by Patrick McKenzie, published on kalzumeus.com.

The format is a list of confident statements about names, all of which are false, none of which look false at a glance. People have one canonical full name. Names fit in a field. Names do not change. A person has a first and last name. All of these are wrong for large numbers of real people.

The direct application is that billing forms, licence records and account systems built on those assumptions break for real customers in ways that are hard to diagnose and embarrassing to explain. If your invoice generator assumes a first and last name, it will produce something wrong for a large slice of the world.

The more useful takeaway is methodological. The piece works because someone wrote assumptions down explicitly and then checked each one. Most of the confident assumptions in any codebase have never had that done to them, that a webhook arrives once, that a currency has two decimal places, that a date has a timezone.

It also seeded a genre worth knowing about: there are equivalent lists for time, addresses and phone numbers, and each is worth thirty minutes before you design a schema that touches any of them.

This is the thinking behind the authentication mistakes early products make.

Read the original ↗ data-modelling · forms · assumptions
also read
let's talk

Building something where this kind of work matters?

I'm in GMT+6 and work async-first, so your timezone is never a reason not to reach out.

Get in touch
Copyright © Hasan Misbah. All rights reserved.Privacy
Hasan Misbah