Falsehoods Programmers Believe About Names
Falsehoods Programmers Believe About Names (with 544+ comments) is a thorough dissection of the various falsehoods programmers believe about names.
Two takeaways for me:
- Depending on the application, a person may have no name at all -- think about hospitals and automobile accidents, for example.
- Thinking carefully about what name or names you need. Is this name for display to the user? Does it have to be used for email or postal mail? Should the name be sortable? There are lots of issues to consider.
(This makes a nice companion piece to Falsehoods programmers believe about time.)
Yes, it's an article I've referred people to many times.
One of the reasons people often think they need to have database fields like
title
,first_name
andlast_name
is that they need to, say, address envelopes to "Ms Alice Jones", but address letters to "Dear Alice".However, that is a mistake. If you need to address your customers in these two different ways, then you should have
envelope_name
andsalutation
fields. That way, if you end up with customers with unusual naming requirements (such as Teller or His Holiness), you're covered.