TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Falsehoods programmers believe about names – with examples (2018)

87 pointsby thewarpaintover 3 years ago

32 comments

kgeistover 3 years ago
A few years ago we were required to pass Microsoft's certification exams, one of the options was to do it online. Their requirement was that the name/surname in the application form had to be identical to what's in your ID (you also had to attach scans of your ID). The problem is, we're from Russia, and the form didn't allow Cyrillic letters, and there's only Cyrillic letters in a Russian ID. We had to fly all the way to St.Petersburg to pass exams offline in a Microsoft-approved certification center, instead of just doing it online in our office. Another option was getting a travel passport (it contains a Latin transliteration), but the deadlines didn't allow us to wait for up to 1 month (maximum time for issuing a travel passport here).
评论 #29143914 未加载
emodendroketover 3 years ago
&gt; This particular example name [Tanaka Tarou 田中太郎] is perhaps best known as the name of an alien in an anime series (and a manga). There have also been real people with this name.<p>Huh? That&#x27;s a bit like saying the name &quot;John Doe&quot; is &quot;perhaps best known from being the name of a character in a movie.&quot; It&#x27;s just the stand-in, &quot;generic&quot; Japanese name that&#x27;s used in examples. If an alien had the name in a cartoon it was probably a joke about the alien going out if its way to appear ordinary, the way the characters in Third Rock from the Sun were named Tom, Dick, and Harry.<p>Anyway, this article always kind of rubbed me the wrong way. OK, maybe someone&#x27;s name is one character that&#x27;s not possible to represent with Unicode. What do you want me to do about it?
评论 #29145772 未加载
评论 #29148208 未加载
评论 #29147390 未加载
评论 #29144588 未加载
dangover 3 years ago
Discussed at the time:<p><i>Falsehoods Programmers Believe About Names – With Examples</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18567548" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18567548</a> - Nov 2018 (169 comments)
karmakazeover 3 years ago
Here&#x27;s a falsehood that&#x27;s missing: people want pages that scroll in unexpected, unpredictable ways.
ajsnigrutinover 3 years ago
In some countries, women have different last names than men do.<p>Eg. in macedonia, traditionally a person would get their fathers name as their surname (so if the fathers name was &quot;Petar&quot;, and the son was Dragan, the lastname would be roughly translated to &quot;Dragan of Peter&quot;). Because there are different forms for feminine and masculine words, The son would be named &quot;Dragan Petrovski&quot;, and the daughter (Eg Marija) would be named &quot;Marija Petrovska&quot;.<p>This tanslated to modern times means, that if &quot;Marija Ilijevska&quot; married &quot;Dragan Petrovski&quot;, she would then be named &quot;Marija Petrovska&quot;. Their sons surname would again be &quot;Petrovski&quot; and daughter &quot;Petrovska&quot;.<p>So basically matching parents and their kids by their last names has to take in account the -ski or -ska form .
评论 #29144022 未加载
评论 #29144523 未加载
评论 #29144072 未加载
评论 #29145336 未加载
评论 #29143850 未加载
评论 #29144055 未加载
cassonmarsover 3 years ago
The names don’t change one has a subvariety: the falsehood that last names might change, but first names don’t. Transitioning showed me firsthand how many common products make changing specifically the first name impossible.
cronixover 3 years ago
Can we next do Falsehoods web developers believe about there being any benefit to hijacking the native scroll functionality, and use this website as an example?
iso1210over 3 years ago
Started to read, was interesting, but then I scrolled, and the whole page seems broken. Life&#x27;s too short to deal with that nonsense.
评论 #29145052 未加载
评论 #29145934 未加载
chmod600over 3 years ago
More than anything, this reflects how many business decisions a &quot;programmer&quot; makes.<p>If a &quot;programmer&quot; was actually just a programmer, none of their beliefs would matter. Either it met the spec, or not.<p>But in reality, a lot of the job of a &quot;programmer&quot; is to make all those detailed decisions, and handle all the exceptional cases, that other people don&#x27;t want to be bothered to think about. But those detailed decisions and edge cases need to be handled because much of the value of software is running the business worldwide at all hours with fewer humans involved, so those edge cases will come up constantly.<p>So all these little decisions fall on the one writing software. That&#x27;s actually an incredible amount of power once you realize it.
评论 #29146494 未加载
kube-systemover 3 years ago
&gt; I fear that part of the reason that this blog post had less impact than I hoped was that Patrick did not give examples of how each assumption can be false.<p>I think the reason is that many assume that these cases are niche and not something they need to worry about.<p>Which might be the case, or might not, depending on the application. But either way, using celebrities or historical figures is not a great way to convince anyone otherwise.
Zababaover 3 years ago
&gt; In some countries (notably French speaking) it is convention to write a person’s surname in all caps to make it clear which part of the name is the surname.<p>This is a French-specific thing? I didn&#x27;t know that. I really like it, it makes it easier to know which part is the name and which part is the family name.
评论 #29143641 未加载
评论 #29143630 未加载
评论 #29144113 未加载
评论 #29143624 未加载
评论 #29147812 未加载
Svipover 3 years ago
Programmers need to learn from bureaucrats of the 19th century. When bookkeeping of the people truly became a thing in the 1800s, industrialised nations sent out bureaucrats to collect the names of people in villages. Unfortunately, people seldom had enough names to fill in the forms the bureaucrats had. The idea of a family name was not something bestowed to nor necessary for a lowborn. If you&#x27;re the only Jack in town, why bother with any other name than Jack?<p>Not contend with simply filling in Jack, bureaucrats would simply come up with a last name for them. Or - if they felt so inclined - ask the person to come up with one themselves. They would often chose their occupation. Americans know that a lot of modern family name spellings in the US are the result of careless bureaucrats at Ellis Island.<p>Back then, family names, house names, last names and surnames weren&#x27;t necessarily the same thing. One might have more than one. You may be of one House, but your last name was Jackson (son of Jack). Also somewhat inconvenient for these bureaucrats with few fields on their forms. And also, stop changing last name from generation to generation.<p>Though, fortunately for these bureaucrats, unlike modern programmers, when the map did not fit the terrain, they could simply alter the terrain.
评论 #29144203 未加载
评论 #29144235 未加载
评论 #29145483 未加载
评论 #29145597 未加载
评论 #29144443 未加载
评论 #29146839 未加载
评论 #29143649 未加载
goto11over 3 years ago
The key takeway is that the <i>simplest</i> handling or names (as an opaque unicode string which is not assumed to be stable or unique or conform to any particular structure) is also the one which have the fewest problems.<p>The problems arise when you want to do more than just echo the name exactly as entered. Perhaps you want to show only last name in some context - now you assume everyone have a last name, and you are already in trouble.<p>Of course you can&#x27;t always get away with treating names as opaque, so this is where you need to be very careful with the assumptions you make. The approach depends on the <i>purpose</i> of registering the name in the first place. For example if the purpose is to identify a person showing showing up to pick up a rental car, you just ask them to enter their name as it is stated on the drivers license. If you want to mail them a letter, ask for the name as it is stated on their mailbox.<p>There is no one-size-fits-all solution, but instead of worrying about the-artist-formerly-known-as-Prince or tribes communicating only with colored fabric, consider the <i>use case</i> for the name. If you have a web-shop you probably don&#x27;t have to worry about orphan toddler refugees, but if you write software for hospitals you absolutely have to consider the case where the name is unknown. I&#x27;m sure Mr Artist-formerly-known-as-Prince has both a passport, credit card, legal name and drivers license, all with names representable as Unicode characters. The question is which one your application needs.<p>Btw. I find it amusing when web startups think they need a &quot;web scale&quot; distributed database system in order to be scalable to a billion users, but thinks handling characters outside of the ASCII-range is an obscure edge case which can be ignored.
goto11over 3 years ago
A more realistic example for 40 (&quot;people have names&quot;): Newborns might not have a name. Lots of systems might have to handle newborns.
评论 #29144933 未加载
评论 #29146498 未加载
kgeistover 3 years ago
41. Surnames like &quot;Null&quot; don&#x27;t exist: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12426315" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12426315</a>
swayvilover 3 years ago
By the way, John Wyndham (author of The Day of the Triffids. Mentioned in the article) also wrote a novel titled, &quot;The Kraken Wakes&quot;. Which is a hilarious, messed up and excellent piece of scifi full of early 20th century flavorful goodness.
franciscopover 3 years ago
&quot;with examples&quot; =&gt; Follows up by not giving examples to a bunch of entries<p>&quot;Confound your cultural relativism! People in my society, at least, agree on one commonly accepted standard for names. And will your software only be dealing with people named by your society?&quot;<p>&quot;I can safely assume that this dictionary of bad words contains no people’s names in it. This is a common mistake – many “bad words” are not bad words in other languages, and some are used in names. Moreover, not every society restricts what words may be used in a name; it’s perfectly possible that someone’s name may have been established in such a jurisdiction.&quot;
评论 #29145200 未加载
评论 #29146450 未加载
Izkataover 3 years ago
&gt; People whose names break my system are weird outliers. They should have had solid, acceptable names, like 田中太郎.<p>&gt; No, your system is badly designed.<p>&gt; This particular example name is perhaps best known as the name of an alien in an anime series (and a manga). There have also been real people with this name.<p>I feel like the author of this page missed the original joke here: The sentence is in English so the reader is primed to expect an English name, or at least something representable in ascii&#x2F;latin characters, and then it drops something totally different to challenge the reader&#x27;s expectations.
ted-papover 3 years ago
In Greek first names are conjugated. Also last names change based on gender.
elchiefover 3 years ago
A personal name is either a Polynym (a name with multiple <i>sortable</i> components), a Mononym (a name with only one component), or a Pictonym (a name represented by a picture - this exists due to people like [Prince][1]).<p>A person can have multiple names, playing roles, such as LEGAL, MARITAL, MAIDEN, PREFERRED, SOBRIQUET, PSEUDONYM, etc. You might have business rules, such as &quot;a person can only have one legal name at a time, but multiple pseudonyms at a time&quot;.<p>Some examples:<p><pre><code> names: [ { type:&quot;POLYNYM&quot;, role:&quot;LEGAL&quot;, given:&quot;George&quot;, middle:&quot;Herman&quot;, moniker:&quot;Babe&quot;, surname:&quot;Ruth&quot;, generation:&quot;JUNIOR&quot; }, { type:&quot;MONONYM&quot;, role:&quot;SOBRIQUET&quot;, mononym:&quot;The Bambino&quot; &#x2F;* mononyms can be more than one word, but only one component *&#x2F; }, { type:&quot;MONONYM&quot;, role:&quot;SOBRIQUET&quot;, mononym:&quot;The Sultan of Swat&quot; } ] </code></pre> or<p><pre><code> names: [ { type:&quot;POLYNYM&quot;, role:&quot;PREFERRED&quot;, given:&quot;Malcolm&quot;, surname:&quot;X&quot; }, { type:&quot;POLYNYM&quot;, role:&quot;BIRTH&quot;, given:&quot;Malcolm&quot;, surname:&quot;Little&quot; }, { type:&quot;POLYNYM&quot;, role:&quot;LEGAL&quot;, given:&quot;Malik&quot;, surname:&quot;El-Shabazz&quot; } ] </code></pre> or<p><pre><code> names:[ { type:&quot;POLYNYM&quot;, role:&quot;LEGAL&quot;, given:&quot;Prince&quot;, middle:&quot;Rogers&quot;, surname:&quot;Nelson&quot; }, { type:&quot;MONONYM&quot;, role:&quot;SOBRIQUET&quot;, mononym:&quot;Prince&quot; }, { type:&quot;PICTONYM&quot;, role:&quot;LEGAL&quot;, url:&quot;http:&#x2F;&#x2F;upload.wikimedia.org&#x2F;wikipedia&#x2F;en&#x2F;thumb&#x2F;a&#x2F;af&#x2F;Prince_logo.svg&#x2F;130px-Prince_logo.svg.png&quot; } ] </code></pre> or<p><pre><code> names:[ { type:&quot;POLYNYM&quot;, role:&quot;LEGAL&quot;, given:&quot;Juan Pablo&quot;, surname:&quot;Fernández de Calderón&quot;, secondarySurname:&quot;García-Iglesias&quot; &#x2F;* hispanic people often have two surnames. it can be impolite to use the wrong one. Portuguese and Spaniards differ as to which surname is important *&#x2F; } ] </code></pre> Given names, middle names, surnames can be multiple words such as `&quot;Billy Bob&quot; Thornton`, or `Ralph &quot;Vaughn Williams&quot;`.<p><pre><code> [1]: https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Prince_(musician)</code></pre>
评论 #29143901 未加载
评论 #29148511 未加载
评论 #29144756 未加载
shireboyover 3 years ago
I think about the 2010 article often as I develop- often little line of business apps etc I have to put first&#x2F;last&#x2F;middle on the ui and database because that’s what the paper form always had. I really wish for this, as well as other common scenarios- address and date&#x2F;time entry also- there was a standard library to pull from for various languages. Need a simple user friendly ui for names that follows all the rules? Copy this. Or a DB schema for names? Here’s the TSQL.
codebjeover 3 years ago
#41 - if you write a system that can accommodate all 40 previous examples, you can still integrate it with the popular brand customer management system your company wants to use.
notumover 3 years ago
Gotcha. Un-validated unicode text boxes for names in forms from now on. After all, someone could be named like the contents of a 64MB binary blob.<p>Compromises are unavoidable in web development.
评论 #29144163 未加载
评论 #29146862 未加载
评论 #29143774 未加载
评论 #29143792 未加载
DonaldFiskover 3 years ago
Did I miss the falsehood about family name always following personal name? (Doesn&#x27;t apply to Chinese, Japanese, Korean, or Hungarian names.)
评论 #29146052 未加载
Beldinover 3 years ago
Funnily enough, the example about the importance of capitalisation has a capitalisation error.<p>It&#x27;s &quot;Van Gogh&quot; when written without the first name. With, it becomes &quot;Vincent van Gogh&quot;.<p>Basically, the &quot;filler words&quot; are without capital unless &quot;naked&quot; at the start of the noun.<p>So it also is &quot;Van der Staaij&quot; or &quot;Kees van der Staaij&quot;.
gvvover 3 years ago
Good followup on falsehoods about time <a href="https:&#x2F;&#x2F;infiniteundo.com&#x2F;post&#x2F;25326999628&#x2F;falsehoods-programmers-believe-about-time" rel="nofollow">https:&#x2F;&#x2F;infiniteundo.com&#x2F;post&#x2F;25326999628&#x2F;falsehoods-program...</a>
ChrisArchitectover 3 years ago
Lots of previous discussion when this was new:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18567548" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18567548</a>
deepsunover 3 years ago
&gt; Cyrillic characters for Russian names<p>Russians don&#x27;t hold a patent on Cyrillic. There are plenty of languages using Cyrillic, e.g. Mongolian or Serbian.
exdsqover 3 years ago
My full name is 36 characters long which isn&#x27;t crazy but still causes a fair few issues when I try to sign up for some sites
frabjousedover 3 years ago
The altered scroll on this site is rough.
earthboundkidover 3 years ago
How do you store Queen Elizabeth II?
评论 #29145960 未加载
firebazeover 3 years ago
This is so old. Welcome, <a href="https:&#x2F;&#x2F;xkcd.com&#x2F;1053&#x2F;" rel="nofollow">https:&#x2F;&#x2F;xkcd.com&#x2F;1053&#x2F;</a>.