TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Falsehoods programmers believe about names – with examples (2018)

87 点作者 thewarpaint超过 3 年前

32 条评论

kgeist超过 3 年前
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 未加载
emodendroket超过 3 年前
&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 未加载
dang超过 3 年前
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)
karmakaze超过 3 年前
Here&#x27;s a falsehood that&#x27;s missing: people want pages that scroll in unexpected, unpredictable ways.
ajsnigrutin超过 3 年前
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 未加载
cassonmars超过 3 年前
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.
cronix超过 3 年前
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?
iso1210超过 3 年前
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 未加载
chmod600超过 3 年前
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-system超过 3 年前
&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.
Zababa超过 3 年前
&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 未加载
Svip超过 3 年前
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 未加载
goto11超过 3 年前
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.
goto11超过 3 年前
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 未加载
kgeist超过 3 年前
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>
swayvil超过 3 年前
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.
franciscop超过 3 年前
&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 未加载
Izkata超过 3 年前
&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-pap超过 3 年前
In Greek first names are conjugated. Also last names change based on gender.
elchief超过 3 年前
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 未加载
shireboy超过 3 年前
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.
codebje超过 3 年前
#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.
notum超过 3 年前
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 未加载
DonaldFisk超过 3 年前
Did I miss the falsehood about family name always following personal name? (Doesn&#x27;t apply to Chinese, Japanese, Korean, or Hungarian names.)
评论 #29146052 未加载
Beldin超过 3 年前
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;.
gvv超过 3 年前
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>
ChrisArchitect超过 3 年前
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>
deepsun超过 3 年前
&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.
exdsq超过 3 年前
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
frabjoused超过 3 年前
The altered scroll on this site is rough.
earthboundkid超过 3 年前
How do you store Queen Elizabeth II?
评论 #29145960 未加载
firebaze超过 3 年前
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>.