Live data from Hacker News

My last name makes me invisible to Computers (2015)

wired.com

41–50 of 140 posts

Re: My last name makes me invisible to Computers (2015)

#41
post #33

Earlier quoted context omitted.

It's not always a computer problem. I have an O' name. There have been many college educated adults I've had to explain the difference between a quote ("), an apostrophe ('), and whatever the hell you call the character under the tilde (`). I kid, it's the grave.

The backtick and apostrophe are often used to emulate ``curly quotes,'' which makes the confusion even worse.

I think this style might come from TeX, based on this comment: https://english.stackexchange.com/questions/17695/any-refere...

Manpages aren't written in TeX though (apparently they use something called "roff"), but they also contain things like `read' instead of 'read'... perhaps manpage writers tended to like TeX too?

Re: My last name makes me invisible to Computers (2015)

#42
post #13

Earlier quoted context omitted.

Javascript lets you do it if you use the equality (==) instead of the identity (===).. i think.

Javascript lets you do anything wrong if you use == and not === though, I'm pretty sure the machine apocalypse is going to happen because someone types == instead of === at this point.

At least if the Terminators are running JavaScript they'll be pretty easy to thwart.

Re: My last name makes me invisible to Computers (2015)

#43
post #39

I don't get what's happening at the low-level for this to be a problem. It seems like you'd have to do something pretty stupid at the coding level to introduce a problem with "Null" by mistake . I'm sure it happens, but not more of an occasional issue. My best guess is that there are common old databases that did not have a first class null type where it was common practice to use the string "NULL" for that purpose.…

I think JavaScript is the biggest offender here. So this check would fail:

  if (lastName.toLowerCase() != null)

Re: My last name makes me invisible to Computers (2015)

#44

I've been programming for over a quarter century, and I feel pretty confident that I've never written anything that could confuse 'null' with NULL. I can't even think of a language that would let you easily do this. If web forms aren't accepting NULL, then somebody probably specifically programmed the word 'null' into a filter of disallowed entries. Probably to stop clerks from entering the word 'null' to mean empty…

i just checked one of the projects where i work and a search for "null" returns 32 matches. its a java project and i believe the checks came about because stuff being converted to strings and then being sent back and forth between html forms and the backend.

    > git grep -i '"NULL"' src |wc -l
    > 32

Re: My last name makes me invisible to Computers (2015)

#45
post #21

Earlier quoted context omitted.

In java + operator on strings works like this: Object a = null; String s = "foo bar " + a; // s == "foo bar null" So, it's possible to get "null" as a string downstream, when some variable that should be non-nulleable - was null. If you find such a bug and incompetently fix it by checking for "null" downstream instead of checking before turning variables into strings - you have the error from the article. Especially…

Sure – that's just casting a null type as a string. So I guess if you have a comparison that somehow casts null to a string before comparing, you could run into this issue, but that's still bad programming. I used to own null@myundergrad.edu as an email alias (with my real university, not that generic .edu, of course) and I got all sorts of interesting things... but that was very intentional on my part.

I don't think anyone ever argued that this wasn't because of bad programming.

Re: My last name makes me invisible to Computers (2015)

#46
post #2

I have seen apps that choke on much more common names. Like O'Brian. This post is a classic on various name issues: http://www.kalzumeus.com/2010/06/17/falsehoods-programmers-b...

Tangentially related (rule 9); my girlfriend's surname contains an 'é'. I have yet to see a year go by without receiving mail having 'é' on the address label where the é should be. Explanation: echo "é" | iconv -t utf8 -f iso8859-15 We're Dutch, and the é is part of our language, and even part of the legacy character encoding standard everyone used before Unicode's widespread adoption. This is just a matter of code…

Dutch programmers probably have little incentive to get it right, because Dutch makes relatively light use of accents. I wouldn't be surprised if Czech programmers, for example, were much more meticulous at converting between UTF-8 and legacy encodings.

Here in CJK territory, using the wrong encoding makes the output so obviously broken [1] that mistakes are almost always caught before hitting production.

[1] https://en.wikipedia.org/wiki/Mojibake

Re: My last name makes me invisible to Computers (2015)

#47
post #13

Earlier quoted context omitted.

Javascript lets you do it if you use the equality (==) instead of the identity (===).. i think.

Just tested (in the node CLI console) and that doesn't seem to be the case. Edit: It's true in PHP though. :-/

null == undefined in js.

Re: My last name makes me invisible to Computers (2015)

#50

Earlier quoted context omitted.

It's not always a computer problem. I have an O' name. There have been many college educated adults I've had to explain the difference between a quote ("), an apostrophe ('), and whatever the hell you call the character under the tilde (`). I kid, it's the grave.

That character is a backtick not a grave isn't it? Also some cultures use «» as quotes. It's a big world.

https://en.wikipedia.org/wiki/Grave_accent

"Programmers use the grave accent symbol as a separate character (i.e., not combined with any letter) for a number of tasks. In this role, it is known as a backquote or backtick."

Post reply on HN