Live data from Hacker News

Cognitive Dissonance in Programming

hangaroundtheweb.com

1–10 of 51 posts

Re: Cognitive Dissonance in Programming

#3
I thought this was an interesting article, but in real life I'm not quite sure how big the problem of programmers being unwilling to admit their own mistakes is.

A checkin goes through many checks and eyes in which mistakes are bound to surface, and not admitting to those mistakes is not really an option most of the time. What's more, they are different kinds of checks, so if you can find an excuse for one thing telling you something is broken it's likely you won't have an excuse for the next. By the time a CL goes from code review to autotests + CI, you've potentially had to admit to a few mistakes or things you could've done better. This happens daily in my workplace - and it's not that these checks are foolproof and we all check in perfect code, but there are certainly a lot of silly and not silly mistakes in both approach and syntax which we regularly have to admit to making.

Re: Cognitive Dissonance in Programming

#4
> A programmer who truly sees his program as an extension of his own ego is not going to be trying to find all the errors in that program. On the contrary, he is going to be trying to prove that the program is correct – even if this means the oversight of errors which are monstrous to another eye.

From the original 1989 "Version 1.0" of The Hacker Test[1]:

    0477 Ever spend ten minutes trying to find a single-character error?
    0478 ... More than an hour?
    0479 ... More than a day?
    0480 ... More than a week?
    0481 ... Did the first person you show it to find it immediately?
I don't know if this is caused by cognitive dissonance of the ego, "highway hypnosis"-style blindness from staring at your own code for too long, or something else. Regardless, programmers have always had this problem.

[1] http://www.hungry.com/~jamie/hacktest.text

Re: Cognitive Dissonance in Programming

#6
This is a great article and more people should read it. I was wondering why the sentences sound so familiar and it turns out it's heavily plagiarised (as in, a substantial number of sentences and paragraphs are lifted verbatim from) Gerald Weinberg's book The Psychology of Computer Programming (listed at the end as one of the "references").

Read this book; much of it is still very applicable decades later (and the exercise of translating it into modern terms makes you think and is valuable too).

Re: Cognitive Dissonance in Programming

#7
post #6

This is a great article and more people should read it. I was wondering why the sentences sound so familiar and it turns out it's heavily plagiarised (as in, a substantial number of sentences and paragraphs are lifted verbatim from) Gerald Weinberg's book The Psychology of Computer Programming (listed at the end as one of the "references"). Read this book; much of it is still very applicable decades later (and the ex…

I was about to say the same; the phrase "The programmer comes down the hall with his output listing and it is very thin..." certainly shows its age. The message, however, is just as relevant now as it was then.

Re: Cognitive Dissonance in Programming

#8
post #3

I thought this was an interesting article, but in real life I'm not quite sure how big the problem of programmers being unwilling to admit their own mistakes is. A checkin goes through many checks and eyes in which mistakes are bound to surface, and not admitting to those mistakes is not really an option most of the time. What's more, they are different kinds of checks, so if you can find an excuse for one thing tell…

Cognitive dissonance appears to be a very big problem with security - people not aggressively auditing their systems, rationalizing away concerns, etc.

Re: Cognitive Dissonance in Programming

#9
It is an interesting perspective, but I find it flawed. First of all, the author doesn't seem to understand artists, so those analogies fail. Secondly the comment of: "But the one thing we never seem to hear* is a simple 'I goofed again.'" tells me they haven't worked with many senior devs. I find once devs have enough experience to not have self-esteem issues over their own skills, there is little hesitation to admit mistakes. If we limit the scope of the article to being about newer devs, though, the content holds more value.

Re: Cognitive Dissonance in Programming

#10
post #4

> A programmer who truly sees his program as an extension of his own ego is not going to be trying to find all the errors in that program. On the contrary, he is going to be trying to prove that the program is correct – even if this means the oversight of errors which are monstrous to another eye. From the original 1989 "Version 1.0" of The Hacker Test[1]: 0477 Ever spend ten minutes trying to find a single-character…

I'd say it's way more the hypnosis reason.

You stare at it and stare at it and get so used to it that you don't notice that you needed a > where you have a <.

Post reply on HN