10 comments

[ 3.3 ms ] story [ 30.1 ms ] thread

  Because if he’s smart, and he knows he is smart, he will:

  a) stop learning
  b) stop being critical towards his own work
The logic here is quite flawed.

  Because he doesn’t accept the parameters suggested to him 
  that someone thinks make up the problem.
While there are cases when a programmer should simply answer the question (or solve the problem), those are exceptional. So, as said here, programmers (and others) should always ask questions; should always learn the reasoning behind things.

---

I hate to distract from the content, however I found the article's use of semicolons to be incorrect throughout. (edit: disregard)

>I hate to distract from the content, however I found the article's use of semicolons to be incorrect throughout.

There are too many of them, but as far as I saw, none of them were incorrect in terms of grammar.

Ah, I see now. I was indeed mistaken, thank you.
Freaking semicolons... messing about with everything, everywhere, these days.

I think the first quote is meant to deter from developing an over-inflated ego, and the 2nd is just from a great paragraph :)

That said, I always love seeing this post pop up around the internet.

I understand the sentiment, but this is stretching the definitions of "lazy" and "dumb" to the breaking point. "Lazy" does not mean doing less work in the long term. It means doing less work in the short term – often with resulting in more work in the long term. The laziest thing a programmer can do is copy and paste code instead of making the code reusable.

Similarly, while it's hard to pin down a precise definition of "intelligence", self-awareness and a drive to learn would be on my shortlist of essential characteristics. Dumb people typically are not aware of their own competence and do not realize that there is always much more to learn (See Dunning-Kruger effect).

But I guess "Why Good Programmers are Efficient and Smart" wouldn't have been a very interesting headline.

Isn`t this like "stay foolish stay hungry" ?
This was a really stupid article.

Basically, by the use of the word "lazy" the author meant "not lazy" in certain areas and by "dumb" the author meant "not an asshole".

That was a 5 minutes of my life I won't ever reclaim...

Don't take words so binary. That's the big problem of most languages. That's something like that:

If I see I have so big job to do I have problem to start, procrasinate. What does it mean? Obviously I'm lazy, isn't it?

At the same time if I see nice way to make easier some complex stuff I do frequently I do it, find it exciting, enjoyable and I don't procrastinate. So? I'm unlazy at the same time. That's the effect of being inteligent and lazy at the same time.

Maybe he could have used better words to describe that, but It wouldn't tell the people that lazyness may be advantage as well, because such lazy code is so nice. Time saving is not only thing. Such lazy code tends to be so DRY, as he wrote and as code is DRYer it is more readable as well.

About dumb, it's very similar. Guy you ask so elementar questions. It's all so obvious. So many people would say he's dumb, even take it personaly.

If he doesn't use word dumb, that fact wouldn't be emphasized so nice.

You see dull, repetitious work ahead of you. If you avoid it, you’re lazy. If you feel too icky not to find a better way, then you’re constructively dissatisfied. Your 4-year-old daughter demonstrates that what you’re doing is needlessly complicated, arbitrary, or meaningless. Did she do it by being “dumb”? No. She did it by being unassuming and asking simple questions, like “why?”—without fear of offending.

It’s all about open-mindedness and a light touch, not stupidity and laziness. The sense is much better conveyed by koans[1] than this kind of blunt language. But of course, blunt language makes for eye-catching titles.

[1] http://www.canonical.org/~kragen/tao-of-programming.html