top | item 13637102

List of falsehoods programmers believe in

255 points| edward | 9 years ago |github.com

118 comments

order
[+] andrewstuart2|9 years ago|reply
If we really aspire to be an information-driven culture who makes informed decisions about important topics, we really ought to curate lists like these down to actual informed discussions on the items in the list.

Printing out a list of "falsehoods" littered with personal opinions and calling them "demonstrable" [1] without a shred of evidence is not going to contribute to general knowledge. There may be some utility in getting me thinking, but for the most part I just find it self-aggrandizing. For what it's worth, I do find this [2] format much more helpful. I'd very much rather see valid counterexamples proving a sweeping statement false than yet another sweeping statement that happens to cover a few sweeping statements.

Of course, the above is my personal opinion and may not be shared by the rest of the community, but please can we do better than curating a list of lists we agree with?

[1] https://chiselapp.com/user/ttmrichter/repository/gng/doc/tru...

[2] https://www.mjt.me.uk/posts/falsehoods-programmers-believe-a...

[+] Bartweiss|9 years ago|reply
Similarly, the famous list of falsehoods about names: http://www.kalzumeus.com/2010/06/17/falsehoods-programmers-b...

Even aside from the politicized content, I found it jarring that this bounced between clear and 'demonstrable' statements and entries like "you do not need a postal address", which was just a Twitter link to some letter delivered without one. It's not how I'd prefer to see this stuff curated, either.

[+] bshlgrs|9 years ago|reply
This list is an awkward mix of posts containing easily-verifiable but surprising claims about various technical specifications, and posts which just make a variety of contentious claims with no particular evidence provided (I think the economics one is possibly the worst).
[+] nostrebored|9 years ago|reply
Falsehoods programmers believe about gender is a pretty great example.
[+] masterleep|9 years ago|reply
The ideological ones are really horrible.
[+] vorpalhex|9 years ago|reply
There's a danger in mixing technical spec information (a phone number can contain non-numeric characters) and non-technical spec information (women...). Some falsehoods are provably correct/incorrect, statements about people don't fit into that mold.
[+] zubat|9 years ago|reply
All the falsehoods texts discuss the same kind of issue: the domain doesn't match the model. And computer models are imperfect a priori for modelling empirical data(natural language, human identity, relationships, continuous functions, physics calculations). We can get those closer in approximate so that the error is negligible, by testing, collecting feedback about our error, and iterating on the model. All of these - even the genders and natural language - can be tested for error, we just can't ensure 100%, and our measurements for the human things necessarily rest on sampling opinion.
[+] Piskvorrr|9 years ago|reply
Well, it is rather unfortunate that our data models need to deal with people. Without them, all those irregularities and impurities are eliminated. [lightbulb-animation-above-robot-head]
[+] elcapitan|9 years ago|reply
Ok, that list is awful, with all the ideological nonsense.

But besides that, for stuff that is actually empirically testable and relevant it would be nice to put them into a unit-testing library to automatically check certain functionality you build (for example to check functions that deal with time or dates or names).

[+] AvenueIngres|9 years ago|reply
The sociological "falsehoods" of this list ought to be renamed:

"Postulates I choose to consider as universal and objective truths as to silence any discussion or debate around them"

or

"List of opinions I have that are facts by virtue of being on this list"

Of course, you're wrong for disagreeing with OP.

[+] song|9 years ago|reply
Was reading the post about names... My girlfriend has a family name with two letters. In Asia, it's common enough so it's not an issue but in Europe there are some systems that refuse my girlfriend's name because it's too short.

It's kind of frustrating.

[+] cholantesh|9 years ago|reply
I remember hearing from a classmate of mine in college that 'O' is a legitimate Korean surname. Blew my mind! And what about people without a surname? Mononyms are common in some parts of the world, like my native state in South India.
[+] autoreleasepool|9 years ago|reply
Interesting. I'm curious, what's her usual workaround for this problem?
[+] stinos|9 years ago|reply
Most of these things are more about 'not knowing' ot 'forgetting to take into account' than 'not believing'? (not a native English speaker but surely those are not the same semantically right?)
[+] abraves10001|9 years ago|reply
Yea, as discussed in other parts the idea that programmers believe "People's names do not change" is demonstrably false. I am a programmer, I understand names change but you are right, there is a chance I don't account for it.

Semantically believing something is false != I didn't take it into account.

[+] camus2|9 years ago|reply
There is some obvious "activism" behind such list, mixing valid technical specifications, politics, opinions and gender theory. But I guess it is a political correctness guide for people who believe in a specific political line, also a way to shame publicly those who do not by using that list as an argument of authority.
[+] SilasX|9 years ago|reply
You're downvoted, but I agree that the e.g. women-in-tech one -- while worthwhile to be aware of -- does not fit the general "falsehoods programmers believe" theme/meme. The meme refers to assumptions that lead to technically-inaccurate programs.

IOW, there's a difference between "everyone has two names, so you can assume that schema for a database" vs "all women in tech are designers". The latter is false, but it's not a programming error. The stuff on this list [1] does not fit the pattern of programming errors.

https://gist.github.com/Su-Shee/5d1a417fa9de19c15477

[+] MatekCopatek|9 years ago|reply
You seem to imply that there is a non-political, non-activistic way of doing it. How would that work?

Because from where I'm standing, if you e.g. implement gender as binary, you're not being more objective, you're just supporting the opposite side of the people you perceive as activistic.

[+] komali2|9 years ago|reply
>Time passes at the same speed on top of a mountain and at the bottom of a valley

Woah, what? Like, they're talking about effects of relativity because someone is traveling "faster" as the earth spins at the top of a mountain?

[+] xenophonf|9 years ago|reply
You are going to love this:

http://www.leapsecond.com/great2005/

The short version is that this guy hauled three cesium atomic clocks up a mountain while on vacation with his kids. They returned 23 ns older then the guy's wife (who stayed home to study for her nursing board exams).

Note that time dilation isn't just caused by motion (special relativity), but also by proximity to a gravity well (general relativity).

[+] AckSyn|9 years ago|reply
Time dilation of everyday life is so small that it's not detectable to all but atomic clocks, over the course of your entire life. So the differences between 10 miles is so negligible it doesn't even exist as an issue.
[+] quickcomment|9 years ago|reply
Also, you have to account for the different gravitational field in both situations, which affects time flow.
[+] nkrisc|9 years ago|reply
Yep. And it's measurable, it's just very, very small. It normally doesn't really matter for all but the most sensitive applications.
[+] patmcguire|9 years ago|reply
"tax - A PHP 5.4+ tax management library"

What?

[+] jefe_|9 years ago|reply
was trying to figure this one out as well, best i could come up with is that the library is a bit ambitious (reliably meeting tax requirements for many countries).
[+] z3t4|9 years ago|reply
If we are to remember the truth, it's better to list the truth rather then the falsehoods.

Example: Partner says "Don't buy the red one", then a few days later you go and buy the red one, while you should have bought the blue one. It would be better if your partner had said "Buy the blue one".

[+] Piskvorrr|9 years ago|reply
There's the rub: if trying to implement, e.g., the whole Names thing, you'll find that the requirements are impossible to satisfy - if you avoid the Scylla of one, the Charybdis of another will get you. The point is to be aware of the limitations, and know which ones you are accomodating, which you are avoiding, which you are breaking, and why. The other option is akin to "MEH EVERYTHING IS UPPERCASE ASCII CHARACTER OR A SPACE NOTHING ELSE MATTERS", which sounds a bit...backward...in 2017, and will come back to bite you.
[+] pavel_lishin|9 years ago|reply
One interesting question from http://haacked.com/archive/2007/08/21/i-knew-how-to-validate...: is “Fred Bloggs”@example.com actually a valid email address, given that the plain ascii double-quotes seem to have been converted to "fancy" ones by the blogging software?
[+] jcranmer|9 years ago|reply
It is a legal email address per RFC 5321.

In practice such email addresses are not possible in many server configurations, and it usually makes sense to reject such email addresses.

[+] jwilk|9 years ago|reply
Per RFC 5321 (Simple Mail Transfer Protocol), e-mail addresses are ASCII-only.

Per RFC 6531 (SMTP Extension for Internationalized Email), this is not a valid address either.

[+] waynecolvin|9 years ago|reply
Wait a moment, they have a Falsehoods series on all sorts of subjects. The Fake News fact checkers are going to try globbing on to every niche they can...
[+] laurentdc|9 years ago|reply
> The shortest path between two points is a straight line

uh?

[+] vurpo|9 years ago|reply
Depends on your situation. In non-Euclidean geometry (such as on the surface of a sphere, which the Earth approximately is), it's not as simple as taking a straight line between two lines.

Also look at Manhattan/taxicab geometry. When you can only move along one axis at a time, you usually can't move in a straight line between two points.

Both of these situations have common applications in the real world. For example, in mapping and navigation.

[+] abraves10001|9 years ago|reply
Right?! Even on maps it is true.

It doesn't mean that there is a viable route on that line or that that line is the preferred one.

That one is really bad, imo

[+] DashRattlesnake|9 years ago|reply
When it comes to "curated" list like this, the who the curator is more important that what they curate. Who is Kevin Deldycke, and why should I value his judgement?
[+] Cyphase|9 years ago|reply
I assume OP didn't mean to link to the #postal-addresses anchor?
[+] hayleox|9 years ago|reply
Yeah, could a moderator please remove that?