A person’s name can be valid even when the database refuses it

Patrick McKenzie assembled a list of assumptions programmers make about names: that everyone has a family name, that names remain unchanged, that their order is stable, or that they can safely fit a fixed character set and length.

The list’s force comes from accumulation. Fixing one rejected apostrophe does not repair a model built around one culture’s naming convention. The same person may use several legitimate names, and two systems may represent that person differently without either entry being fraudulent.

McKenzie writes from his experience living and working in Japan, where his own name repeatedly broke supposedly international systems. His essay is deliberately provocative rather than a complete implementation standard.

The practical design problem is to separate what the application truly needs from assumptions inherited through a familiar first-name/last-name form. An identifier, a legal record, and the name someone wants displayed are different pieces of information.