Live data from Hacker News

Programming: Attitude Trumps Intelligence

alarmingdevelopment.org

11–20 of 67 posts

Re: Programming: Attitude Trumps Intelligence

#11
post #5
post #2

Ha, as if attitude resides in something other than the brain. http://yudkowsky.net/singularity/power I don't think programmers are alone in this problem, however. People by nature tend to get into their own factions and bash anyone else, even if they have more in common than not. (Also note that programmers do tend to be more harsh toward non-programmers than other programmers.) Though I think programmers haven't yet…

He maybe overstepped a little, but the principle is sound: For robust, maintainable software systems, convention and simplicity trump cleverness.

Not the way he's meaning it. This is a follow-up to his previous post, which claims that "There are no super programming languages, only super programmers."

Cleverness gets you things like Garbage Collection. Convention and simplicity leaves us all using assembler because there's no need for "clever" language features.

Re: Programming: Attitude Trumps Intelligence

#12
post #4

I'm not sure what his definition of intelligence is. Obviously not the same as mine. He states that the reason "triumphalists" annoy him so much is that he used to be one- and then goes on to explain himself programming something very unintelligent in form and function that took him 20 years to fix. I would paraphrase the post as "I used to be dumb and arrogant, but after 20 years I realize how dumb I was and why don…

Agreed—I've known too many of the former, who undo years of quality work in a single, well-meaning but unintelligent rewrite.

I think the author is confusing the Real Thing with the hubris-laden, self-proclaimed intelligent programmer. Programming is one of the tiny handful of fields where real intelligence (plus hard work) puts you at a significant advantage over the eager-but-average-intelligence hard-workers.

Programming is like writing or other arts in so many ways: it's easy for those who are competent to immediately recognize another gifted thinker, but the have-nots will dismiss the gifted work as "unintelligible" simply because they don't have the skill or capacity to appreciate it yet (Dunning-Kruger Effect).

Re: Programming: Attitude Trumps Intelligence

#14
Anyone read the prior post he references? This one is supposed to be acknowledging that he was too aggressive in attacking the Lisp community in his last post ("Mea Culpa").

Sounds like the author is having trouble with the humility thing:

   "I'm really humble, so now everyone else has to be as well"
just one of the many faces of narcissism

Re: Programming: Attitude Trumps Intelligence

#15
post #6

Well, for better or for worse, no lisper I know would ever try to fuse a database system in at the kernel level. That's one of the ugliest system designs I've ever heard of. The whole point of lisp is that the language is extensible, so that once you solve one problem, you NEVER have to think about it again. In other languages, you might have to put some conditionals in, or free some dynamic memory somewhere every ti…

How is what you described (having to solve a problem once) different than most languages (especially those with garbage collection). It seems like you're describing libraries, ala growing a language ( http://video.google.com/videoplay?docid=-8860158196198824415... ).

Lisp dialects afford you more powerful tools for abstraction. Whereas most languages provide abstraction at the function level, Lisp allows for syntactic abstraction via macros. Think of constructs like the if-statement that only evaluates one of its consequent and alternative, or short-circuiting and- and or-expressions. These things are impossible (or awkward/difficult) in most languages, but Lisp makes them relatively simple.

Re: Programming: Attitude Trumps Intelligence

#16

Anyone read the prior post he references? This one is supposed to be acknowledging that he was too aggressive in attacking the Lisp community in his last post ("Mea Culpa"). Sounds like the author is having trouble with the humility thing: "I'm really humble, so now everyone else has to be as well" just one of the many faces of narcissism

Yes, in which he claims that all languages are equally good. In which case I assume he writes everything in assembler.

Re: Programming: Attitude Trumps Intelligence

#17
The Humble Programmer (Dijkstra's Turing Award lecture) http://userweb.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD...

IMHO, factors influencing programming intelligence (PQ?) include things like short-term memory capacity, and experience of similar kinds of problems. But everyone has a limit, of innate talent and of acquired talent, and some of us pursue increasing challenges until we hit that limit - and then seriously work on strategies for tackling complexity. Probably the more intelligent of us recognize this issue earlier.

I hit my limits daily, despite my best efforts of decomposition, abstraction, narrowing scope, narrowing aspects of concern (I often fall into the trap of trying to optimize before being 100% on top of my algorithm), defining the problem explicitly (ask the question before answering it), and trying out ideas to see if they work (yes, trial and error) and to gain more information (data) about the problem.

Perhaps the best an individual can hope for is to make intelligence and time fungible - to be able to solve a problem of any complexity, given sufficient time.

Unfortunately, the task of decomposing problems well does not itself seem to be decomposable, as they grow in complexity.

Re: Programming: Attitude Trumps Intelligence

#19
post #4

I'm not sure what his definition of intelligence is. Obviously not the same as mine. He states that the reason "triumphalists" annoy him so much is that he used to be one- and then goes on to explain himself programming something very unintelligent in form and function that took him 20 years to fix. I would paraphrase the post as "I used to be dumb and arrogant, but after 20 years I realize how dumb I was and why don…

That's not the way I read it. It seems to me what he meant to say is that, no matter how good and smart you are - software can outsmart you.

Or in other words, debugging code is twice as hard as writing code, so if you write the smartest code you can, you will not be able to debug it.

But having said that, I do think that the headline is link bait. I only agree with it if you add: "On very large, long term projects".

For the release often and early and start-up crowd, smart and fast is probably better then disciplined and maintainable.

Re: Programming: Attitude Trumps Intelligence

#20
post #19
post #4

I'm not sure what his definition of intelligence is. Obviously not the same as mine. He states that the reason "triumphalists" annoy him so much is that he used to be one- and then goes on to explain himself programming something very unintelligent in form and function that took him 20 years to fix. I would paraphrase the post as "I used to be dumb and arrogant, but after 20 years I realize how dumb I was and why don…

That's not the way I read it. It seems to me what he meant to say is that, no matter how good and smart you are - software can outsmart you. Or in other words, debugging code is twice as hard as writing code, so if you write the smartest code you can, you will not be able to debug it. But having said that, I do think that the headline is link bait. I only agree with it if you add: "On very large, long term projects".…

Right. And his mistake is in equating smart languages with smart code.

A smarter language will make debugging easier. Smarter code will usually do the opposite.

Post reply on HN