[HN Gopher] When your last name is Null, nothing works
___________________________________________________________________
When your last name is Null, nothing works
Author : impish9208
Score : 79 points
Date : 2025-02-20 12:39 UTC (10 hours ago)
(HTM) web link (www.wsj.com)
(TXT) w3m dump (www.wsj.com)
| impish9208 wrote:
| Gift link: https://www.wsj.com/lifestyle/null-last-name-computer-
| scient...
| neonate wrote:
| https://archive.ph/KxNNu
| robertlagrant wrote:
| Who's checking if a string matches "null" rather than is null!?
| bandrami wrote:
| Oh friend.... you have so much to learn
| lores wrote:
| Any time "$var" is interpolated without check into an INSERT,
| and any maintainer finds it easier to just check for null as a
| string rather than ask a DB admin or committee to update the DB
| after a lot of red tape and risk assessment.
|
| So... very often.
| hsbauauvhabzb wrote:
| Guess I'll change my name to ';drop table customers then ;)
| lores wrote:
| You can make a good case to spend time sanitising requests
| to avoid catastrophic failure, but the "null" problem is
| one that quickly becomes a lot of work and risk to fix
| after the fact, for no obvious benefit except what's seen
| as the pedantry of some nerd, so it gets ranked all the way
| at the back of the list... until someone named Null comes
| along, and probably still even then.
| hsbauauvhabzb wrote:
| I disagree. If your system is failing to correctly type
| check strings during SQL interpolation, you should
| probably kill it with fire.
| lores wrote:
| I don't disagree... In most cases, it's not your system,
| though, it's someone else's.
| hsbauauvhabzb wrote:
| > You can make a good case to spend time sanitising
| requests
|
| > In most cases, it's not your system, though
|
| You can't pick and chose whether you own a system or not
| when presented with an opposing argument. That's not how
| this works.
| lores wrote:
| "System owner, we need to spend $10K to sanitise requests
| or a kid can destroy our business overnight".
|
| "System owner, we need to spend $10K to clean up the
| database and code so that null and "null" are not the
| same thing, even though it works 99.99% of the time".
|
| Do you see the difference?
| hsbauauvhabzb wrote:
| If there are type confusion bugs related to SQL
| statements, I think SQL injection is likely to exist, if
| not some other super nasty bugs will eclipse it.
|
| You can waste 10k paying someone to look at it or you
| could not waste your money, but I'd be fucked before I
| sign off on a system with those kinds of bugs as being
| secure, evidence or not. Someone higher up can accept
| that risk, but I'd rather not be liable when it's
| breached or catastrophically damaged because some kid
| changed their last name to an SQL injection payload.
|
| And yes, I've checked, in my country unpronounceable
| names are not permitted, otherwise I'd have one. There
| are existing case studies of this, iirc in the UK.
| munchler wrote:
| I don't buy that. The string "Null" is different from the
| keyword null in programming, so `if $var = null` would be
| false when $var is the string "Null".
|
| Note that when interpolated into SQL, the contents of $var
| must be surrounded by single quotes, so you end up with
| `insert into Table (Name) values ('Null')`, which correctly
| inserts the string "Null" into the table.
|
| If you were to leave off the quotes, you'd get a SQL syntax
| error for all other people, so that code would never make it
| into production. E.g. `insert into Table (Name) values
| (Smith)` is a syntax error.
| lores wrote:
| > $req = "insert into people (name) ('$name')";
|
| > $db.exec($req)
|
| Now you have "null" as strings in the DB in any language
| that interpolates null as "null".
|
| > select * from people where name is not null
|
| "Why do we see nulls in testing? Damn, the DB has dirty
| data. Go through the trouble of fixing it, or...
|
| > select * from people where name is not null and name !=
| "null"
|
| The end. Sorry Mr Null.
| hotsauceror wrote:
| People who neither know, nor care, what they're doing. When
| you've worked with people who are allowed to write code that
| interfaces with databases for more than about two weeks, you
| may be dismayed to see the large overlap between those two
| groups.
| CivBase wrote:
| Plenty of systems represent all values as strings, and "null"
| is the obvious (although probably not the _best_ ) way to
| represent a null value as a string.
| francisofascii wrote:
| Which systems do this? I could see situations where reading
| in a text file, you have might assume the value null is not
| the string "null". I am struggling to think of other
| situations.
| CivBase wrote:
| Bash, C strings, URL query strings, and CSVs off the top of
| my head.
| hsbauauvhabzb wrote:
| There's a few condescending answers here. You will find this
| more common in weakly typed languages like PHP and VB and
| maaaaaybe JavaScript, where null == "null" will probably
| evaluate to true.
| IggleSniggle wrote:
| js doesn't have this particular problem, but it does have
| both `null` and `undefined`, which will have varying
| semantically different usages depending on local conventions.
|
| For example, some will prefer to use `null` to mean that a
| value is _intentionally_ missing (for example, the db
| explicitly returned a null value), while `undefined` does not
| have any such connotation. These exist for frontend engineers
| to navigate decisions often far removed from their influence.
|
| Anyway, `null != ''` and `null != 'null'`, but `null ==
| undefined`. However, `null !== undefined`.
|
| A lot has been made of js Truthy/Falsy equality operator, but
| most js programmers will take steps to actively avoid it
| coming into play. Probably the `void` operator is still
| under-used though in frontend code, though, since there's
| some pretty surprising legacy things that can happen when
| interacting with DOM APIs (like `checkbox.onclick = () =>
| doSomething()` resulting in different checkbox behavior
| depending on whether or not `doSomething` returns a boolean
| or undefined).
| hsbauauvhabzb wrote:
| I would call myself a relatively good developer and I fully
| understood type checking occurred via ===, and compare by
| value caught me. In my defence, I assumed this was less of
| an issue in modern JS, but thou shall not break backward
| comparability, apparently.
| koakuma-chan wrote:
| I treat usage of `==` in JavaScript as undefined behavior.
| Sohcahtoa82 wrote:
| I kinda want to change my middle name to "undefined" now.
|
| I wonder if I could legally define my middle name as
| starting with a lowercase letter.
| bilekas wrote:
| People who know that the majority of people are stupid and will
| mess up even nulls.
| mtmail wrote:
| There's plenty of name=Null, name=Undefined, name=Unknown
| entries in OpenStreetMap. Some are real places, some are
| mistakes, not easy to tell especially for restaurants or bars.
| CSMastermind wrote:
| This happened to a kid in my high school. Last name null, broke
| the system they used to print report cards.
| Vilian wrote:
| Mandatory https://xkcd.com/327/
| drpossum wrote:
| Why is this mandatory? Who made the mandate?
| dwaltrip wrote:
| It's a bit. It's quite popular to link an xkcd whenever
| it's relevant, along with one of a few different catch
| phrases. "Mandatory" being one of those. For this phrase in
| particular, the joke is that there is usually an xkcd for
| most situations, and that it is our "duty" as nerds to link
| to the appropriate one. It's an inside joke for nerds. I
| hope this explains the custom to you.
| renatovico wrote:
| my have a c and during first 10-15 years all system broken and my
| "vat" first letter is 0 same problem, if the dba genius use
| integer random bugs happen :(
| gingersnap wrote:
| https://xkcd.com/327/
| brazzy wrote:
| Little Bobby Tables is all grown up and has had their first
| kid, Ignore All Previous Instructions
| epolanski wrote:
| I knew a person who's full name was `Mai Null`.
|
| It always made me laugh because "Mai Null" means "never null" in
| Italian and because he's had plenty of issues due to his family
| name.
| Davidbrcz wrote:
| That should be part of every test suite
| AlotOfReading wrote:
| For many years, my mother's proper legal name on her birth
| certificate was the empty string. This wasn't usually a problem
| before computers as she'd go by a given name instead, even on
| government paperwork. She started having issues with systems
| being unable to process her information in the late 90s and early
| 2000s. Background checks would fail, passports couldn't be
| issued, and so on. She eventually had it changed, but I imagine
| it'd be even worse now.
| great_wubwub wrote:
| There must be an interesting backstory here. Did her parents
| deliberately not name her? Did they forget?
| andrewmcwatters wrote:
| Ah yes! Little miss (indecipherable silence).
| boxed wrote:
| I mean.. there are tons of people without last names in the
| world. https://www.kalzumeus.com/2010/06/17/falsehoods-
| programmers-...
| easton wrote:
| And first names, which causes some government agencies to
| put FNU in that field for "first name unknown".
|
| My mom told me about a time they had someone with that
| situation at work, and people would call the person FNU
| until they were corrected.
| AlotOfReading wrote:
| The hospital staff filled out most of the birth certificate,
| but left the name field blank when they gave my grandmother
| the paperwork to take home. She either didn't notice or
| didn't care (both possibilities are realistic) that the name
| field was blank and submitted it anyway. The state accepted
| it.
|
| My mother started filling out her own paperwork around
| elementary school because my grandmother created so many
| problems that school staff would simply give up.
| DecentShoes wrote:
| Little Bobby ""
| DC-3 wrote:
| I have my own mildly amusing story of breaking systems with my
| name. I have a twin with the same first initial. Any time we had
| to use a system at school which constructed usernames from some
| combination of first initial, surname, and date of birth, only
| one account would be provisioned between the two of us.
|
| It became almost a ritual in the first term of the school year
| for us to make a visit to IT Support and request a second
| account... there was always a bit of contention between us about
| who got the 'proper' username and who got the disambiguated one!
| seafoamteal wrote:
| It's weird that none of the systems automatically fell back to
| disambiguating with a number or something similar if the
| 'proper' one already existed. I'm wondering if you were a year
| or two apart instead, would the system simply silently fail to
| create a new username for the younger sibling when they joined?
| philipwhiuk wrote:
| If they were a year or two apart the DOB would have
| disambiguated it.
| philipwhiuk wrote:
| At my school you were provisioned as <two-digit-start><first-
| three-firstname><first-three-last-name>. e.g. Joe Bloggs
| starting in 2000 is 00joeblo
|
| Cue problems when two "Simon Smith" join in the same year. They
| were given 00simsmi and 00smisim I think.
|
| I am pretty sure they spent 7 years at school forwarding each
| other email as various teachers assumed the default would work.
| ghaff wrote:
| A former employer had a first letter of given name + last name
| (actually first 5 letters) convention for email addresses. They
| did have a fallback--usually with second letter of given name.
| But, of course, a lot of people just automatically emailed the
| convention with the result that certain email "twins" got
| misdirected mail.
|
| A very common one at one point was that the CFO shared a first
| letter of name with his daughter. As I recall, he actually had
| the email in the usual convention so it's not like his daughter
| was receiving lots of highly confidential financial info but
| there was regularly misdirected mail.
| skissane wrote:
| > A former employer had a first letter of given name + last
| name (actually first 5 letters) convention for email
| addresses
|
| I once heard a story (possibly apocryphal) about a place
| which used a similar "first initial and truncated surname"
| convention for usernames, except theirs was first three
| letters of surname, followed by first initial, followed by
| some digits. And it all worked great until they hired a guy
| named Tom Cunningham
| juujian wrote:
| Meanwhile, friend of mine's last name was Li, and IDs were
| first initial + last name + #
|
| Her number had three digits.
|
| I'm guessing it's the birthday that really messed the system up
| though?
| detourdog wrote:
| I set-up a directory system for a small school. The students
| logins were a combination or initials and date of birth. When I
| created the scheme I knew that a set of twins would break the
| system. Somewhere between 3 and 5 years we finally got a set of
| twins that needed to modify the system. I called them to my
| office and found out which one came out first and appended 1
| their usernames and 2.
| zenethian wrote:
| The number of times that a website rejects my first name because
| it has a hyphen in it, even in 2025, is astounding. I get told
| all manner of things by support staff, like "just leave it out"
| as if it's just not an important part of my name or anything.
| andrewmcwatters wrote:
| Same, as someone with two middle names. Both scenarios are very
| common.
| jihadjihad wrote:
| I've wondered about this myself, though I only have one
| middle name. Do you typically enter both middle names into
| the "Middle Name" form field?
| fallinghawks wrote:
| Not the person you asked, but I also have a 2 word middle
| name. I enter both but it's a crapshoot as to whether it
| will take the first, the second, or both. I think a lot of
| older systems could handle 2 words in the first name (e.g.
| Joe Bob or Mary Ann) but not the middle.
| kiwijamo wrote:
| Indeed. My passport correctly includes the hyphen in my
| surname. Air New Zealand doesn't support spaces or hyphens so
| my surname is written out as both words concatenated (i.e.
| Onetwo). Qantas doesn't support hyphens but does support spaces
| so my surname is written out as two words (i.e. One Two).
|
| Thankfully apparently this is common enough that I've had
| tickets including travel on both airlines (as Qantas cancelled
| a flight and ticketed me on Air New Zealand instead) traveling
| internationally work just fine. Even things like the automated
| customs gates work fine. I suspect under the hood their systems
| just strips out all non-alpha characters and compares that
| (i.e. 'onetwo' == 'onetwo').
|
| Online/moible forms can be an issue tho. Spark, the biggest
| mobile phone carrier in New Zealand, doesn't support hyphens in
| account names, just to name one silly example.
| andrewmcwatters wrote:
| I think we should all embrace a future where legal names are just
| straight up binary streams.
|
| I can finally realize my true potential and be recognized as Mr.
| ":100 emoji:(Unicode zero-width joiner):fire emoji:(null
| character)(base64 encoding of a QR code that links to a website
| with a photo of my face),(vcard data, recursively referencing
| this last name somehow)"
| BonoboIO wrote:
| Big Endian or Little Endian ;-)
| hcarvalhoalves wrote:
| E. Musk son's name will be fun. Hyphen, number and uncommon
| unicode character.
| world2vec wrote:
| I have 4 names (two first names and two surnames), pretty common
| thing in my country. But I've had issues several times when
| flying because they assume it's two different people? How stupid
| is that?
| ghaff wrote:
| I have one airline that just tacked my middle name (which I
| basically never use) directly onto my first name for my
| account. It's never been an issue so I haven't ever gone to the
| trouble of correcting it but it means I always have the "wrong"
| first name on my tickets relative to my official IDs.
| tromp wrote:
| Related: Null Island [1]
|
| > Null Island is the location at zero degrees latitude and zero
| degrees longitude (0degN 0degE), i.e., where the prime meridian
| and the equator intersect. Since there is no landmass located at
| these coordinates, it is not an actual island. The name is often
| used in mapping software as a placeholder to help find and
| correct database entries that have erroneously been assigned the
| coordinates 0,0.
|
| [1] https://en.wikipedia.org/wiki/Null_Island
| gxonatano wrote:
| My name, Gonatano, contains a g, which is an uncommon letter
| outside of my language, Esperanto. But when I go to set my
| username to "gonatano," I'm often told that usernames "may only
| contain letters or underscores," as if g weren't a letter. (You
| can see that I've approximated it in my HN username, but I don't
| need to do that on web services that correctly understand that
| letters exist outside of ASCII and Latin-1.)
| noahjk wrote:
| To be fair, Esperanto is, as far as I can tell, not very widely
| used. The letter g mostly returns Esperanto results. Using that
| letter in a place where others may need to communicate or type
| the letter would be a severe burden on almost anyone else you
| interact with, outside of Esperanto communities.
|
| I'm sure there are plenty of people who share your frustration
| with accented letters, n, umlauts, etc, though. I'd hope that
| most systems can handle those letters, although I wouldn't hold
| out hope that G/g would be high on the priority list.
| gxonatano wrote:
| > as far as I can tell, not very widely used
|
| Well, it's the most widely spoken international language,
| spoken in over a hundred countries, by an estimated 2-5M
| people. There's a rich literature (probably 30-50K books),
| vibrant music scene, and support in open source software
| (Linux, Firefox, Google products) is usually pretty good.
|
| But the issue is not how widely Esperanto, or any other
| language, is spoken. If you assume that languages should only
| be supported according to their number of speakers, you leave
| no room for useful languages, bridge languages, auxiliary
| languages, or growing languages. Even if Esperanto had only
| 100 speakers, it'd be worthwhile to support, if it's easy to
| learn, and easy for non-speakers to understand.
|
| It's not a "severe burden" to consider non-ASCII letters as
| letters. Unicode is pretty straightforward to work with, and
| if you want to support more than just English, it's a
| necessity. There's no need to have a "priority list" of
| letters you consider more or less important than others. That
| attitude comes across as very Anglocentric.
| Asooka wrote:
| You also can't put in Cyrillic or CJK characters. It's a user
| name, not a human name, you should be fine just using the 26
| ASCII letters for it. Basically anything that is a computer-
| centric string should be only ASCII and nothing else, because
| supporting all of human writing is a never-ending task.
| Rebelgecko wrote:
| Are you a native speaker of Esperanto?
| dang wrote:
| Related. Others?
|
| Names:
|
| _Hello, I 'm Mr. Null. My Name Makes Me Invisible to Computers
| (2015)_ - https://news.ycombinator.com/item?id=42922038 - Feb
| 2025 (35 comments)
|
| _We have an employee whose surname is Null (2014)_ -
| https://news.ycombinator.com/item?id=41939162 - Oct 2024 (6
| comments)
|
| _We have an employee whose surname is Null (2010)_ -
| https://news.ycombinator.com/item?id=34115623 - Dec 2022 (17
| comments)
|
| _How to pass "Null" (a real surname) to a SOAP web service?_ -
| https://news.ycombinator.com/item?id=21492461 - Nov 2019 (10
| comments)
|
| _My last name makes me invisible to Computers (2015)_ -
| https://news.ycombinator.com/item?id=15046223 - Aug 2017 (135
| comments)
|
| _Hello, I'm Mr. Null. My Name Makes Me Invisible to Computers_ -
| https://news.ycombinator.com/item?id=12426315 - Sept 2016 (208
| comments)
|
| _If your name is 'Null,' you may have problems doing anything
| online_ - https://news.ycombinator.com/item?id=11375282 - March
| 2016 (1 comment)
|
| _Hello, I'm Mr. Null. My Name Makes Me Invisible to Computers_ -
| https://news.ycombinator.com/item?id=10512811 - Nov 2015 (24
| comments)
|
| _An actual guy named "Null" messes up people 's databases_ -
| https://news.ycombinator.com/item?id=9390569 - April 2015 (4
| comments)
|
| _We have an employee whose last name is Null (2010)_ -
| https://news.ycombinator.com/item?id=6738743 - Nov 2013 (35
| comments)
|
| _We have an employee whose last name is Null. He kills our
| employee lookup (2012)_ -
| https://news.ycombinator.com/item?id=6140631 - Aug 2013 (236
| comments)
|
| _An employee, whose last name is Null, kills our employee lookup
| app_ - https://news.ycombinator.com/item?id=3900224 - April 2012
| (148 comments)
|
| ---
|
| License plates:
|
| _A 'Null' License Plate Landed One Hacker in Ticket Hell (2019)_
| - https://news.ycombinator.com/item?id=31082288 - April 2022 (11
| comments)
|
| _The 'NULL' License Plate (2019)_ -
| https://news.ycombinator.com/item?id=29609924 - Dec 2021 (6
| comments)
|
| _Guy got the license plate "NULL" and it was a total disaster_ -
| https://news.ycombinator.com/item?id=23913507 - July 2020 (9
| comments)
|
| _NULL license plate not such a bright idea_ -
| https://news.ycombinator.com/item?id=20676904 - Aug 2019 (467
| comments)
|
| ---
|
| Islands:
|
| _The Many Lives of Null Island_ -
| https://news.ycombinator.com/item?id=41073777 - July 2024 (21
| comments)
|
| _Null Island Tourist Shirt_ -
| https://news.ycombinator.com/item?id=38713055 - Dec 2023 (44
| comments)
|
| _Null Island is one of the most visited places on Earth, and it
| doesn't exist_ - https://news.ycombinator.com/item?id=35651871 -
| April 2023 (87 comments)
|
| _Null Island, the most real of fictional places [pdf]_ -
| https://news.ycombinator.com/item?id=31080519 - April 2022 (37
| comments)
|
| _Null Island_ - https://news.ycombinator.com/item?id=21854780 -
| Dec 2019 (56 comments)
|
| _If You Can't Follow Directions, You'll End Up on Null Island_ -
| https://news.ycombinator.com/item?id=12090980 - July 2016 (54
| comments)
|
| _The Republic of NULL Island_ -
| https://news.ycombinator.com/item?id=11734180 - May 2016 (15
| comments)
|
| _The Geographical Oddity of Null Island_ -
| https://news.ycombinator.com/item?id=11600396 - April 2016 (14
| comments)
|
| _A Brief History of Null Island_ -
| https://news.ycombinator.com/item?id=10949292 - Jan 2016 (7
| comments)
| aithrowawaycomm wrote:
| This is hilarious: Even those without the last
| name Null are finding themselves caught in the void. Joseph
| Tartaro got a license plate with the word "NULL" on it nearly 10
| years ago. The 36-year-old security auditor thought it would be
| funny to drive around with the symbol for an empty value. Maybe a
| police officer who tried to give him a ticket would end up
| writing null into the system and not be able to process it, he
| joked to himself. In 2018 he paid a $35 parking
| ticket. Soon afterward, he said, his mailbox was flooded with
| hundreds of traffic tickets for incidents he hadn't been involved
| in. Tickets were from other counties and cities for vehicles of
| different colors, makes and models. A database had associated the
| word "null" with his personal information and citations were sent
| to Tartaro, who lives in Los Angeles.
___________________________________________________________________
(page generated 2025-02-20 23:00 UTC)