Dunning-Kruger
medium.com
medium.com
The implied mis-interpretation of Dunning & Kruger, that inability and confidence are correlated, is as commonplace as it is untrue. The Dunning & Kruger cohort which estimated its humour at the top quartile did perform in the top-quartile. And the cohort which estimated its humour in the bottom quartile did, too, perform the worst. It's just that the top quartile estimated itself at 75 when it came out at 90 while the bottom estimated itself at 60 when it performed at 10. We are good at relative evaluation. What we suck at is pinning that to an absolute scale.
"Several of my teachers [said] I’d gotten far too arrogant...this caused me to once again return to my previous mode of thinking. I wasn't actually a good programmer."
One can be a good programmer and arrogant. The former refers to technical competence. The latter to social competence.
[1] http://www.psoriasissociety.ttsg.org/pdfs/Dunning-Kruger%20E...
If you feel like cringing a lot, check out: https://www.google.com/search?q=link:http%3A%2F%2Fen.wikiped...
Humility. People expect you to be humble. Even if you were the cleverest hacker on Earth, readers are not going to take kindly to you giving yourself kudos, even if it is something as small as being a "great engineer." I know hubris is one of great virtues of programmers, but I would contend that humility is a great virtue of writers. It's why self deprecation is so common in writing and comedy. You poke fun at yourself to make the audience feel more comfortable. Do the opposite (call yourself great) and you may be triggering impostor syndrome for your readers.
Secondly, saying that Facebook is in the wrong because you are awesome.... well, that reminds me of another social norm: "The First Rule of Programming: It's Always Your Fault" I won't elaborate any further. I think Atwood has this one covered:
http://www.codinghorror.com/blog/2008/03/the-first-rule-of-p...
http://www.codinghorror.com/blog/2004/08/why-im-the-best-pro...
By the way, I want to say that Zuckerberg's claim in the code.org video that Facebook's strategy is to literally hire as many talented engineers as possible is bullshit. Obviously, that's not their strategy.
I also don't doubt that Godwin's Law kicked in after too long in the responses he might have gotten. And while I'm glad he seems to have overcome his self-esteem issue and doesn't let the negativity of others get him down, I can't help but observe that Internet can be a rough place if you're looking for catharsis.
Lets look at the definition:
hum·ble /ˈhəmbəl/
Adjective
Having or showing a modest or low estimate of one's own importance.
When you're telling someone to be humble, what you're really doing is saying "You're not important, and I want you to know that."To even say that requires some pretension on your own behalf.
People should not have a "low estimate" of their own importance. They should have an accurate one, and it's their business to come up with it. Not anyone else's.
> not proud or arrogant; modest: to be humble although successful.
And another is
> courteously respectful: In my humble opinion you are wrong.
Both of which seem, IMHO, to be more relevant to the thread than the definition you provide.
Maybe it is because I'm English but does anyone say that when they are really being humble? I would assume sugar coating at best and dripping sarcasm at worst.
Admittedly it isn't as bad as "with all due respect" followed by something indicating how little respect is considered due.
That's not what the definition says. By saying you should be more humble, I'm not telling you you're not important. I'm saying you may be important, but flaunting that importance is in bad taste.
That's why it says showing a modest estimate of one's importance as one of the definitions.
Why is it acting all important for no reason bad? Because if there is no reason for you to pull the "I'm more important than you" card (such as having to make a decision), the impression is you're only doing it to humiliate others.
Surely we are better off accepting that resentment at the achievements of others is the problem of those resenting? I'd love to have arguments either way on this.
Peoples estimates of each others ability/importance will not always be in sync. Humbleness prevents or delays conflict when both sides think they are the more important one.
Surely we are better off accepting that resentment at the achievements of others is the problem of those resenting?
Given that people resent you for your achievements, aren't you personally better off being humble (thus decreasing their resentment)? Saying or thinking it's just their problem will not help you, since they will still resent you and presumably act against you.
OP has accomplished a lot, but his article overall seems to be VERY humble to me.
Impostor syndrome is an accurate assessment. FWIW.
Because regardless of your ability - whether you think yourself "important" is another issue altogether. There is valid concern over how much sense it makes to write a blog post like he did and whether it shows him just displaying concern for his own importance.
Dunning Kruger is very specific about concerning ability and confidence, noting that the distinction between the able and the not able is that the not able tend to be full of themselves (because they literally don't know better) while the able know enough to know how little they know. Which is another definition of humble.
Self-driven humility serves a different purpose than deflating people's importance. It is an extension of the fail faster approach to iterative development. By doubting your own accomplishments you can find the faults in them and improve. If you sit back satisfied of your work you are at the peak of your ability, and therefore paradoxically less capable than you could be.
I think the most important part of his previous post was where he mentioned that his second interviewer didn't even explain the puzzle correctly at first. This is a serious problem that I've personally encountered in several technical interviews at top companies. It is very frustrating to have a limited 30-45 minutes to discuss a problem and you end up wasting a small chunk of that because the problem wasn't even phrased correctly from the beginning.
He has a valid point -- of the people who attain great recognition, whether "deserved" or not, many many of them have to be loud and take it for themselves. Rarely have I seen that it's merely handed, as if someone noticed the lonely hacker in the corner making everything go, and shined the spotlight on him.
And part of "greatness" also is telling a story first, then making it true. It's hard to change the world if you start from the premise that objective, mutually accessible reality is more true than what you personally believe and desire.
I know your story - I've not been exactly popular in HS either. I did not excel at quite a few thing. Like you, for a while I thought I could gain more confidence by loudly proclaiming my superiority when I actually was better at things than my peers.
All that creates is resentment. The best piece of advice I ever got - and it might well be meaningless to you, but let me share anyways - was that "Actions speak louder than words".
Go forth, do great stuff. Help other people achieve greatness. Be judicious when you do and don't mention your achievements. (I'm not saying to never toot your horn, but do it by choice, to make a salient point). And never, ever, call yourself "great". There are few truly greats in any profession. Aspire to be one. You'll know you're there once others refer to you by that label.
Because soliciting constructive criticism is a rather important part of being a good engineer, and arrogance will get in the way of that.
And of course, working with somebody who rejects constructive criticism but loves doling it out (a characteristic quite commonly associated with arrogance) is plain annoying. So nobody wants to.
http://news.ycombinator.com/item?id=5278389
> I’m not really surprised at the extent of that response, either, but it is disappointing. I avoided the comments on Hacker News, which tend to attack the simplest parts of an article, to avoid getting into stupid arguments.
Hmm...I guess if he did read that HN thread, he would've seen that most of the comments sympathized with him about puzzles. But I guess a great engineer can just instinctively pre-judge things and be right without double checking.
I totally glossed over the part where he was boastful.
I think the response he got, and responded too, had more to do with the article being more popular than he's ever delt with before, then it did with anything he specifically said.
Its the internet, when you reach a wide audience, haters are indeed going to hate. You just have to ignore it.
"Great" programmer or not, both posts are pointless and this attitude will not do him any favors. Overcoming the underdog mentality is good, but being so self-centered is at the other end of the spectrum.
ar.ro.gan.ce
offensive display of superiority or self-importance;
overbearing pride; proud contempt of othersHowever, this statement from the "Great Engineer" post struck me the wrong way:
"I would fire any developer who chose to re-implement standard library functions."
That's a terribly absolute stance to take -- consider, for example the widely-discussed fast inverse square root:
http://en.wikipedia.org/wiki/Fast_inverse_square_root
That was a re-implementation of a standard function (rsqrt), but for a very good reason (speed was more important than accuracy for the use case). While that specific trick is mostly obsolete in development today, if you're pushing the envelope even a little bit with your code, it isn't that rare to run into a situation in which it makes sense to side step the standard library implementation of something.
tl; dr - Developers (at least non-Sith ones) should never deal in absolutes.
That other thread? The article did come across as a little bit arrogant. Not the fun charismatic arrogant either, just arrogant. Still, this article puts that in context.
And threads about puzzle questions are always weird.
You get one camp saying it's not about the answers, it's about the process of answering. When you see a sequence of numbers it's not about whether you happened to see that sequence on Wikipedia last month (and still remember it), but whether you can describe your process of trying to see how it's made.
You then get another camp who just can't seem to understand that the answers don't matter; who say that puzzles test for people who are lucky enough to have seen the puzzle before and don't test for good programmers. (Puzzles probably don't test for good programming, but they're not meant to.)
In poker, a game which I am not unfamiliar with, it's well understood that having confidence, even apparent arrogance, is a significant strategic factor which can dramatically improve a players results. The example of poker is relevant as an analogy both for getting through an interview, and getting money from an investor; both activities involve a similar degree of imperfect information.
Having confidence helps prevent you from making bad decisions or constantly second guessing yourself when you experience significant variance, it intimidates your opponents and causes them to make mistakes which work to your advantage, and it can drive you to push yourself harder to learn and improve than you would if you didn't think it was possible to succeed.
On the other hand, the paragraph "When I graduated high school, I was an okay programmer. Last year, I was a good programmer. After a lot of work, I’m a great programmer, or at least pretty close to it. I don’t think I’ll ever become an amazing programmer or any other superlative; I’m not that talented." came so close. What I'm interested in hearing from any candidate is what follows that thought ... "Tomorrow I'll be better than today".
Believing you can do anything often leads you find out it's only partly true.
But believing you can't do anything is often true all the time.
I blame my parents for misleading me there, but they meant well & it only took a decade to for me to find out.