Part 1 in a series of posts on a nerdy computational search for a name for our new son.

My son was born in April 2017:



We had been considering lots of different names for him when Maya was pregnant. We knew we wanted a name that:

I was particularly interested in finding a name that would be entirely unique.

I remembered that a fellow I used to work with, who was a mathematician and a programmer, had twins and decided to find names for them by enumerating all short names up to four or five letters. I’ve never seen the code he used to do it, but he ended up calling them Zax and Xalen. And those names are so unique that those twins will probably find this article when they Google themselves in 10 years!

I must say I think the situation with first names is pretty strange. I mean a first name is supposed to be an identifier right? So ideally it would be unique. That way you could be distinguished from the people around you based on your first name.

In computing we use a hash to assign a unique identifier to an object. For example, the Git version control system assigns SHA-1 hashes to each revision of your code so it can be referred to precisely later. The hashes it uses are designed so that there’s a very small chance that two hashes generated from two different objects will be the same. When two hashes do come out exactly the same it’s called a “hash collision”.

Of course we would never assign hashes to humans. Or would we? We kind of do actually, when we assign ID numbers to people for drivers licenses or social security cards. The ID number is meant to be unique within the social security system, and everyone who was born in (or moved to) the US is assigned a social security number, so the SSN serves as a unique ID for you within the US.

Your given name is supposed to serve more or less the same purpose. Your first name is an identifier that people around you can use to specify you. It’s like a hash for humans to use conversationally. It’s supposed to serve as a locally unique identifier, meaning when someone says your first name in a room full of people, you know they are referring to you and you can respond.

When you add in your last name, you further distinguish your name from the rest of the population. Your full name becomes a globally unique identifier.

Well that might be how it would work in an ideal world, but in reality there are plenty of first names that get used so much they aren’t very locally unique at all. How many Mike’s and Dave’s do I know?

If you have an extremely common first name like “John”, there’s going to be a fair chance that in a group there will be another person with the same first name. So when someone says your name, you’ll get a hash collision!

I have a confusing name: Paul-Jean. It’s sort of original, since the order is usually Jean-Paul. But that means a lot of people actually reverse my name in their head, assuming they heard it wrong. So they say “hi Jean-Paul nice to meet you!” Or they assume I’m telling them my first and last name “Paul Jean”, so they figure my first name is Paul, so they say “Hi Paul nice to meet you!” So my name has some “bugs” in it.

I wish I had a good story for how my parents gave me this interesting (and frustrating) name. But nobody ever explained it to me if there is one. The best I can figure, my dad, whose name was Paul Joseph Letourneau, was riffing on his own first and middle name. I imagine he went through a progression something like:

Paul Joseph -> Paul Jean -> Paul-Jean

When I was a kid, I just went by “PJ”. People still often got it wrong though and would call me “J.P.” all the time (I’m assuming because “Jean-Paul” is the vastly more common full name which is often then abbreviated “J.P.”).

One time in kindergarten I tried to sign my full birth name on a piece of artwork, and I spelled it wrong, like “Pol Jan” or something. And the kindergarten teachers told me not to sign my full name unless I knew how to spell it :(

When I moved away from home in Calgary to go to university in Vancouver, I decided I wasn’t going to be PJ anymore. I wanted to start using my birth name Paul-Jean. It was symbolic for me to take that new name. I was coming into my own. I was an individual. I was rebranding myself for a new phase of my life.

So although my birth name was confusing, it did have the nice feature of having a ‘kid’ version (P.J.), and an ‘adult’ version (Paul-Jean) that I could sort of grow into over time.

So on the one hand, I wanted my son to have a fairly unique first name. On the other hand, I wanted to save him the constant friction of having to correct people all the time when they say his name incorrectly.

If your name is entirely unique, never been used before on Earth, people won’t have any reference for it in their minds. They’ll have to consider the name and add it to their mental database of names, which means they have to think about your name before they can store it and retrieve it again to call you with it.

There’s a natural tension between those two goals. How do you find a name that’s quite unique and yet easy to understand?

And what is the measure for how unique a name is? And what is the measure for how easy to understand a name is?

This post is the first of a multi-part series where I describe my search for our son’s name.