efitz 3 days ago

Almost all problems with name handling come from two assumptions:

1. Names are identifiers.

2. Names can be used to correlate the same person between two systems.

These assumptions are not universally correct, and so programmers and designers and product managers try to restrict names in order to minimize edge cases and maximize the cases in which their assumptions hold.

And these same folks make the same mistakes about names of things as they do about names of people. If a human provides the name, then you are taking on a huge pile of problems using the name as an identifier. Take DNS domain names or AWS S3 bucket names or NetBIOS names in Windows networks or (pick your favorite flat namespace ).

The solution?

Always use system-assigned (preferably random) identifiers for things that need identification. Think UUIDs. Make the name a descriptive text property of the person/thing that they can change at any time. Consider not having names for humans, but rather just asking the user for the strings that you would like to use in certain places, eg:

“When we validate your provided credit card, what is the name that the bank expects?”

“What should we put in the ‘name’ spot on packages or letters that we send to you?”

“To make this app more friendly, we would like to address you by name. If that is ok, type the name that you would like us to use in this situation:”

[ Foo ]

Here’s what it will look like:

Hello, Foo

(No thanks) (OK)

Etc etc.

  • elric 3 days ago

    Couldn't agree more. In fact, I've ranted about this before [1]. Names can change, names can be as short as zero or one characters, or ridiculously long. Applying ones own cultural assumptions to what makes a valid name is not a good idea.

    [1] https://blog.melnib.one/2021/06/23/on-names/

    • aardshark 2 days ago

      As short as zero characters? Not the full name, surely.

      • justsomehnguy 3 hours ago

        Some peoples use only 1 identifier as a full name.

        Some peoples use 3 identifiers as a full name but there are peoples with only 2 living with them.

  • NeoTar 2 days ago

    I mostly agree, just one needs to be careful, especially when dealing with people whose first language may not be English, when asking these more complicated questions since they may be misunderstood. I like the final example a lot.

sundarurfriend 3 days ago

> Similarly, don't require that people supply a family name. In cultures such as parts of Southern India, Malaysia and Indonesia, a large number of people have names that consist of a given name only, with no patronym.

Yes, please! For eg., in my part of south India, people's last names used to be the name of their caste. When caste discrimination became somewhat uncool, most people stopped using those caste-based last names and being mononymous (having just the "given name") became the norm.

Now, because most US-based services make entering a last name a necessity, there's a resurgence of caste identity in names here. A lot of others use their father's name or the name of their home city, and end up being addressed as "Mr. <City name>" or "Ms. <Father's name>" in communication.

In general, a lot of people here find the whole firstname-lastname business just confusing.

  • paulmooreparks 2 days ago

    > A lot of others use their father's name or the name of their home city, and end up being addressed as "Mr. <City name>" or "Ms. <Father's name>" in communication.

    This pisses my Singaporean-Tamil wife off more than anything I've ever seen. Emails beginning "Dear Ms. (or worse, Mrs.) Father's-given-name" have been the end of a few business relationships with service companies.

    • pif 2 days ago

      As a service company in the Western world, does it make financial sense to even start wondering what changes could retain a couple customers more? I suppose it doesn't!

      • paulmooreparks 2 days ago

        When it's a Western company, she swears a bit and rolls her eyes and moves on. What really pisses her off is when it's a local company that ought to know better.

  • samarthr1 2 days ago

    Or, to put it a bit more bluntly, when the supporters of EV Ramaswamy Naicker started becoming violent with people who had surnames that were traditionally used by the brahmins, people out of fear started to not use their family names.

    Even years after his death, his philosophy of "If you see a cobra and a brahmin, kill the brahmin" still has a large foothold in Tamil Nadu.

Jun8 3 days ago

Other random information about names that I find interesting:

* The US habit of addressing all people, eg even the CEO, by first name in business setting would be unthinkable in most other cultures. This is one aspect that many foreigners stumble at (email heading using “Dear Sir” is typical).

* Some languages/cultures heavily use shortened names (eg Mike, Herb, Liz), even in formal settings. Again this would be a huge faux pas in other cultures. Even if people have and use such names, it would be unthinkable to address them if you are not close friends (eg Memo is an informal shortened form of the Turkish Mehmet)

* Commonly, names are chosen from a culture specific fixed set, which evolves on the order of a decade or so (not exactly true, eg the name Apple and many others) but a good approximation. In other countries names are generally made up from words, with desirable meanings, AFAIK names in Chinese are of this kind. Of course all names started this way, eg Peter=stone but I’d guess most people don’t know the meaning of their names in this sense, ie what does Elisabeth mean?

* Related to the above, one thing I was surprised to learn about Chinese names is that it is hard/impossible? to know the gender of the person from just the name. Sure, English has un-gendered names, too, but they are really small minority.

Totally unrelated, but how proper names work (ie, how they refer) is a big area of discussion in Phil of Language. Check out this entry if you want to go down that rabbit hole: https://plato.stanford.edu/entries/names/#:~:text=Proper%20n...

  • adelie 2 days ago

    chinese names can absolutely be gendered - for example, if i met a 璐, there's a 99% chance that name belongs to a woman because of its meaning (beautiful jade) and its character composition (王 radicals tend to be feminine). i feel like gender-ambiguous names have become more common in recent years, but maybe that's just me not keeping up with naming trends.

  • elric 3 days ago

    I have a Chinese friend whose name is 黑 ("hei", black). Whenever they give their name to other Chinese folks, they are met with disbelief and often suspected of using a fake name.

    • HelloNurse 2 days ago

      Could it be a homophone of some other more name-worthy word? It seems to be a common occurrence in Japanese.

  • krick 2 days ago

    About the first point, is this really universal in USA?

    I mean, consider you see Bill Gates (i.e. somebody well respected and quite older than you) in the airport, and you want to address him for some reason. Do you yell "Hey, Bill!", or would it rather be "Mr. Gates"? Is the former actually fully appropriate?

    • Jun8 2 days ago

      In a meeting or email within Microsoft it would be weird to refer to him as Mr Gates.

      • rootbear 2 days ago

        At Pixar, Steve Jobs was always just Steve, never Mr. Jobs. That was also true of his other companies I believe. After I left Pixar, I was accused of named dropping when I kept referring to him as Steve and I had to change to calling him Mr. Jobs or just Jobs.

      • krick 2 days ago

        Yeah, ok, I could assume that from the gp's post, but what about answering my question directly? How do you address him at the airport, if you have no connection whatsoever? IDK why, maybe you wanna ask him some question, or take an autograph, or you see that he just dropped a wallet, whatever. Will it be "Hey, Bill" or "Mr. Gates"?

koliber 2 days ago

There are many subtle pitfalls with names that are not obvious. It’s best to ask a person from a given country and culture and have them explain them.

There was a time when I was leading an engineering department for an American startup. The company had emails in the form of firstname@company.com. We had a guy named Piotr (Polish version of Peter) working for us. A new person joined the team and HR decided to give him the name Piotrek. The problem is that Piotr and Piotrek are two forms of the same name and are practically interchangeable. Since a big part of the engineering team was polish it was hard to remember who had which address. I asked HR to add last names but they would not have it. One had Piotr in his resume, the other Piotrek, hence different names, hence it stays.

They demonstrated cultural insensitivity at its finest. The real problem though is that they did not listen to feedback from someone in that culture and applied their understanding of what is normal and proper.

If you are managing an international team do take time to ask people about their names. How to pronounce them. If there is a nickname they like to use when working with American teams. If the accent marks matter or not. Names are very personal and applying norms from one culture to another can cause friction.

  • dmurray 2 days ago

    This doesn't sound culturally insensitive. Sounds like they would have done the same with two Americans who preferred to be called Mike and Michael - to the extent that they put those names on their resumes.

    It does seem a little inflexible and not forward-thinking, though. If you insist on everyone being firstname@company.com you are going to have a clash within your first 30 hires.

    • watwut 2 days ago

      Piotrek is diminutive of Piotr - it was grammatically correct to call both guys both names in Polish.

      That being said, HR giving people the name they put on CV is correct. It was not culturally insensitive at all. The naming policy that cant handle two Toms or three Janes in the same team is shortsighted at best.

    • koliber 2 days ago

      Yeah. The inflexibility is the problem. We told them and they ignored it.

  • tokai 2 days ago

    I don't get this. So many names in so many languages are the 'same' name while being spelled and pronounced slightly different. To me your HR did it right. How should they ever catch every similar name and flatten them together? Did the piotr(ek)s have a problem with it? Cause your story makes it seems like it was other people just being annoyed at having to remember which person had with mail.

    Personally I would be angry if HR just assumed that they could rename me to a close variant of my name.

    • koliber 2 days ago

      They should not try to catch them and "flatten" them. That would be unreasonable.

      They should have listened when a Polish person told them the names are the same and should be treated as such.

      It's perfectly OK to "flatten" Piotrek to Piotr in Polish. It's not like that in other languages, and I get it. But here's its fine.

    • marcosdumay 2 days ago

      > How should they ever catch every similar name and flatten them together?

      They don't have to solve the problem of every similar name.

      They just have to be humane to the people that are actually there.

    • ahazred8ta 18 hours ago

      There are people in india whose names are spelled differently in different dialects. They may have birth certificate, vaccination records, medical records, school registration, and adult ID card all spelled differently.

junto a day ago

I’ve always believed that you only need two name related fields in your database.

The first is a formal greeting and the second informal greeting.

The first is what appears on any formal correspondence such as letters and invoices. The second is how you greet me in your application.

As a user I can choose whatever I want. So I can be “Mrs Junto” as a formal greeting and “Hot Stuff” as my informal greeting and I can chuckle every time your app says “Hi there Hot stuff”.

The problem comes that if you integrate with other systems, they nearly always have the idea of separate database / API fields for Title, Salutation, Firstnames, Surname, etc. then it’s non-trivial to work out how to map yours to theirs.

Human name parsers are possible of course but they are fallible.

https://github.com/idauth/node-humanname

irrational 3 days ago

I have a coworker who comes from a culture where they only have one name. The solution the Fortune 500 company we work for came up with was to put her one name into both the first and last name fields. She seems to be okay with that solution.

  • mrweasel 2 days ago

    A company I worked for used three letters for username, so first character of your first, middle and last-name. I don't have a middle name, it's not unheard of, but it's also not as common as it used to be. Another colleague had no options, all relevant combinations you could make from his name was already in use, so they slapped a P in front, because he as a project manager.

    For years I was trying to move a company from multiple fields for addresses to just one big text box. We didn't really do anything with the information, so we didn't need to know your postal code as such. We just need to be able to print a customers address on a label. The amount of systems that for some reason wanted to know every separate part of the address was just crazy, and again never really used for anything. One system would map the address fields into another, from there again mapped into a third system and then mapped into the label print system. Why not just have a text box, and parse that through? I never got that implemented.

  • netsharc 2 days ago

    A friend's foreign passport has "Full name" with his 2 word name. German bureaucracy requires first name, last name, but from that field it isn't clear which is which. So his first name according to bureaucracy was "-", and his complete name is in the "last name" field.

    The separation is odd anyway, what is the reasoning for wanting to sort by last/family name? I guess it makes it easy to identify clusters (e.g. of families) in a list, but nowadays the spouse keeping their last name wouldn't be grouped in the cluster. And to follow the site's example, if there's the 2 sisters Mao Anna and Mao Zsazsa, they won't be near each other in a list sorted by last name if they put in "Mao" as first name.

    • jerf 2 days ago

      "The separation is odd anyway, what is the reasoning for wanting to sort by last/family name?"

      Cultural assumptions that date from before the world being as small as it is, more than anything else.

      HN is in English, and there's a bias towards stories of people from non-English areas integrating into English-speaking locales (which does not have to be "the US", much broader than that) because that's what gets noticed and told around here. But it flows in all directions and all cultures. I've read plenty of tales of woe of non-Japanese trying to live in Japan and integrate with their legal system and having various woes in the process based around their names not fitting into the legal system. And just like the West slowly gets better about accommodating Eastern names, it slowly gets better the other way around too.

      It's a generalized culture-mismatch problem. I'll cop to being sort of the opinion that the "Xty-Billion Things Programmers Don't Know About {Names/Time/Addresses}" can end up being overly harsh as they are generally written, but at their core, they do have a point, and while we may read it in English and the examples the articles write about are about our more Western sensibilities impacting a broader world, every culture has that problem and could have their own equivalent documents written in their own language with their own examples (e.g. "not everyone in the world lists their family name first").

    • watwut 2 days ago

      I think the reason for sorting by last name is that there are many more common last names then common first names. There is huge number of Toms, Marias etc.

      You will find target person faster if searching manually and they are sorted by the last name.

      • bux93 2 days ago

        We used to use phone books. How quickly knowledge vanishes..

  • bigbacaloa 3 days ago

    But it's a bad nonsolution. The problem persists. It can be fixed by decent form design.

    • gsich 2 days ago

      Or by chosing a name.

mikhailfranco a day ago

I once worked on a UK e-commerce site. The existing user registration form had a title field. The previous engineer had listed a few titles in the requirements, and the longest he came up with were Colonel, General, Admiral and Viscount, so he set the width as 8.

I got assigned the bug when one of the only two Archbishops in Britain tried to open an account.

Luckily, Field Marshal has slipped from normal use in the British military, but he should have also noticed Brigadier, Commodore, Rear Admiral, Vice Admiral and perhaps Ambassador.

I guess Second Lieutenant or Sergeant Major aren't pompous enough to offer their titles to buy s***f on the internet.

skzv 3 days ago

I exploited one of these regional naming conventions so that I only have a first name on Facebook.

petesergeant 2 days ago

I used to think it was weird that the French wrote Firstname LASTNAME, but at the Olympics it was very useful for picking out personal/family from countries with non-English name order

NeoTar 2 days ago

One very ,into point which I would add – if initials are important to your use–case, allow people to specify them. A previous company used initials as identification in our bug tool, and I always resented being (something like) AC1 when my full initials (ABC) were available.

djoldman 2 days ago

Does anyone have an example situation where one MUST separate a user's full name?

Or in other words, is there ever a situation where storing a user's full name is insufficient to accomplish a business critical task?

  • krick 2 days ago

    There is countless number of such situations. For example, airline tickets. You cannot just enter "Jack Daniels" into the GDS, both first name and last name are obligatory, and they are separated by slash. That's just the format these systems use for the last 50 years, you cannot do anything about it, you can only pass the problem onto the end user. Then, as you are surely aware, he will have to prove that's really him in the airport, using a document of some sort.

tdeck 3 days ago

This is a wonderful article! I've noticed that India in particular seems to have a lot of different naming traditions in one country. Do folks from India have trouble keeping this straight?

  • diveintothe9 3 days ago

    I'm from South India, and in general, people's names fall into sets of common given names and common family names, but it can get tricky. Things vary state-to-state, and even within states, across castes and subcultures. However, this also makes it somewhat easier to gauge where someone is from. Over time, you recognize some name patterns and you can guess that they're from a specific place, speak a specific language, etc.

    For a very generic example, if I encounter someone with the surname "Singh", I'm reasonably sure they're from the northern states, and likely speak Hindi apart from their native tongue. Also in terms of identifying someone's given name, they're usually from a broadly known pool. As an analogue to western names, if someone says their name is James or Marie, you're mostly guessing that's their given name, even though it's possible to have those as last names as well (eg. LeBron).

    • HelloNurse 2 days ago

      Regarding "Singh", generic Sikh surnames aren't discussed in the article but they are particularly useless and challenging.

  • delta_p_delta_x 2 days ago

    Until the early 1900s or so there was never a unified polity ruling over the entirety of the Indian subcontinent, and modern India was assembled from a set of disjointed kingdoms and 'princely states', each with their own languages and cultures.

    The people in the southern five states of India speak an entirely unrelated language family—Dravidian, rather than Indo-European.

    In many senses India is more like the EU than first meets the eye, which is why it is so hard to govern.

krick 2 days ago

In case if here is somebody Chinese, I wanted to ask: is it even possible to distinguish given name from family name by glance? Like, in the example of "Fred Yao Ming" or "Fred Ming Yao".

I mean, if you know Russian, you are pretty much always sure which one is the name, and which one is surname. In theory, it can be whatever, but it almost never really happens.

There is a bit more ambiguity in English (Scott Alexander or even having Jackson as the given name), but still I'd say in the majority of cases you know names from surnames.

Is there some common knowledge in Chinese that Ming is a common family name and Yao is a common given name, and the reverse would be unusual? Or can it be anything, and there's no way to know?

I am wondering this about all asian languages, where names tend to be so short, so it also applies to Korean, Vietnamese, etc.

  • adelie 2 days ago

    generally speaking for han chinese folks, surnames are one character and given names are one or two characters (with two being more common, usually). so if you see a name that's 1-2 or 2-1 (i.e. liu yifei) and it's not one of the few known multi-character surnames, then you can safely assume that's their given name.

    for a 1-1 name like yao ming, it's a little more difficult. some characters are definitely more common as surnames than others - the chinese term for 'common people' (百姓) actually refers to an old classic text where they compiled all the surnames they knew of! so when i see the name yao ming, i immediately recognize that 'yao' is a fairly common surname and 'ming' is not, and thus it's more likely (but not guaranteed!) that 'yao' is the surname here.

    there's also some cases that are ambiguous when romanized, but not ambiguous in chinese. for example, consider the name 'wang chen,' where both 'wang' and 'chen' are common chinese surnames. however, if i saw it written out as 王, i would be able to recognize that 王 'wang' is a character that's primarily used for surnames, while 晨 'chen' is not.

amelius 2 days ago

Is there any website where I can type a person's name and nationality and the website will turn it into speech so I know how to pronounce it?

  • agent327 2 days ago

    I don't know how well it works across all languages, but Google Translate has a text to speech option that seems to do a good job for my language. So you don't ask it to translate, just enter the name and the language and click the 'speech' button.

  • Thiez 2 days ago

    No, because sometimes there are multiple correct ways to pronounce it in the same language / culture.

throwaway290 2 days ago

I wish they didn't pick the equivalent of Stalin/Hitler as their example of Chinese name.