Writing by Peter Hilton

Respect people’s full names

Don’t call someone’s name ‘invalid’ - 16 February 2021 #software #design

A credit card

unsplash-logoМарьян Блан

In television drama, we recognise idiots by their accidental misnaming and bullies by their malicious misnaming. Software designers and developers have their own tropes, and misname people in three ways.

  1. Rejecting letters with diacritics - and other ‘special’ characters
  2. Rejecting certain words - The Scunthorpe Problem
  3. Personal name mutilation - separating words

Software has all kinds of bugs and bad design, but people’s names deserve special consideration. Your name deserves special consideration. You take it personally when software, idiots and bullies get your name wrong.

Bad letters and bad words

Allow all printable characters (earlier in this series) explains why the first person to say ‘special characters’ loses. If your software misnames people or rejects their names due to characters you don’t support, you should probably have a chat with your CTO.

Why Web Filters Don’t Work: Penistone and the Scunthorpe Problem (video) explains why trying to prevent bad words doesn’t work without human assessment or science-fiction artificial intelligence. Or as @0xabad1dea put it:

you cannot algorithmically distinguish “real” names from “fake” ones and any attempt you make is automatically racist

Again, if you think your software can judge names’ acceptability and without automatic racism, you need to talk to your CTO.

The complexity of names

Intellectually, software developers and designers understand real-world complexity, and know about Falsehoods Programmers Believe About Names (additional information). However, software still gets this wrong, despite these examples and advice on questions such as Personal names around the world: To split or not to split? (tl;dr don’t).

Writing on a different topic, Simon Wardley offers advice that may help here:

Either you make sure your management has the cognitive capability to manage a complex and complicated environment or you pretend what is being managed is simple.

Perhaps modelling peoples’ names as first name followed by last name represent the same naïve simplification as management consulting’s beloved 2×2 matrices. A discussion on management consulting’s value lies outside this article’s scope, but I can say that splitting personal names into first and last doesn’t work. And don’t take too much comfort in most of your competitors also getting this wrong.

Disrespectful name mangling

Some software deliberately breaks people’s names, in a misguided attempt to make them conform to a simplistic model. Kees de Kooter maintains a Capitalised Last Name Hall of Shame (in Dutch, translated), for web sites that force the last name’s first letter to upper case. His surname starts with a lower-case ‘d’.

Meanwhile, Patrick McKenzie listed those falsehoods about names in response to an article by John Graham-Cumming, whose surname contains punctuation that web sites cannot handle. Both writers have last names that contain two upper-case letters.

Respect people’s full names

Don’t call people’s names invalid, or otherwise blame them for your software’s inadequacies. Don’t try to split names up into fields that result in using names wrongly.

Instead, use a single full name field for personal names, and ask people for additional input if you want to do something more specific than showing their name, such as greeting or sorting. But most of all, show some respect.