Live data from Hacker News

Teach Yourself Programming in Ten Years by Peter Norvig (2001)

norvig.com

11–20 of 32 posts

Re: Teach Yourself Programming in Ten Years by Peter Norvig (2001)

#11
post #6

Learn at least a half dozen programming languages. Include one language that supports class abstractions (like Java or C++), one that supports functional abstraction (like Lisp or ML), one that supports syntactic abstraction (like Lisp), one that supports declarative specifications (like Prolog or C++ templates), one that supports coroutines (like Icon or Scheme), and one that supports parallelism (like Sisal). I'd b…

Lua has built-in support for coroutines. Python and Ruby have (limited?) support for coroutines via generators/iterators (via the yield statement).

But why not Icon? It has plenty of neat features on its own, such as goal-directed execution (which I've never seen in another language). Plus it has several pretty solid (and free) introductory e-books: http://www.cs.arizona.edu/icon/books.htm

Re: Teach Yourself Programming in Ten Years by Peter Norvig (2001)

#12

I would like to make the point that Dr. Norvig nowhere in this article says, "It takes 10 years or 10,000 hours to be a programmer." Dr. Norvig himself refutes that notion explicitly here: http://news.ycombinator.com/item?id=3278080 In a brief email exchange I Had with him, he even suggested he may rewrite this essay to address the fact that it is often used (inappropriately, obviously) to bludgeon new programmers in…

I read your link and nowhere does he refute that. In the context of his essay I believe he means it takes 10 years or 10,000 hours (more or less) to be a really good, experienced programmer. You can start playing the piano in a couple of weeks but it will take several years before you get really good. That is the spirit of his essay.

Re: Teach Yourself Programming in Ten Years by Peter Norvig (2001)

#14

I would like to make the point that Dr. Norvig nowhere in this article says, "It takes 10 years or 10,000 hours to be a programmer." Dr. Norvig himself refutes that notion explicitly here: http://news.ycombinator.com/item?id=3278080 In a brief email exchange I Had with him, he even suggested he may rewrite this essay to address the fact that it is often used (inappropriately, obviously) to bludgeon new programmers in…

I read your link and nowhere does he refute that. In the context of his essay I believe he means it takes 10 years or 10,000 hours (more or less) to be a really good, experienced programmer. You can start playing the piano in a couple of weeks but it will take several years before you get really good. That is the spirit of his essay.

The context of his response was that there is this belief on HN that "programmer" is a title reserved for certain people, and that belief is often predicated on an erroneous/incomplete understanding of his writing.

Re: Teach Yourself Programming in Ten Years by Peter Norvig (2001)

#17
post #6

Learn at least a half dozen programming languages. Include one language that supports class abstractions (like Java or C++), one that supports functional abstraction (like Lisp or ML), one that supports syntactic abstraction (like Lisp), one that supports declarative specifications (like Prolog or C++ templates), one that supports coroutines (like Icon or Scheme), and one that supports parallelism (like Sisal). I'd b…

Lua has built-in support for coroutines. Python and Ruby have (limited?) support for coroutines via generators/iterators (via the yield statement). But why not Icon? It has plenty of neat features on its own, such as goal-directed execution (which I've never seen in another language). Plus it has several pretty solid (and free) introductory e-books: http://www.cs.arizona.edu/icon/books.htm

I think some people might see Lua has giving more bang for your buck because of its popularity in things like game scripting among other things.

Re: Teach Yourself Programming in Ten Years by Peter Norvig (2001)

#18
post #4

Earlier quoted context omitted.

Yes - hardly counts as "news". Why does this get posted so often, and how on earth does it get to the front page of Hacker News?

Articles can be resubmitted after a given time. Google shows me several submissions of this article from years ago but none recently, though citations of it do show up often in comments. Why does it get to the front page? Because it's relevant and good, of course, unlike almost everything that is merely new. I'm pleased to see more classics turning up on HN; Periodic reviews of the classics are the only way to get ne…

One of problems with the resubmission is that it (intentionally or accidentally) ignores prior discussions until someone manually points out. The resubmission itself is not a problem, as you mentioned, however.

I guess a small link to the prior discussions or the HNSearch link to given URL will do a job. I personally prefer the latter, but it seems that HNSearch only indexes the domain name of the URL.

Re: Teach Yourself Programming in Ten Years by Peter Norvig (2001)

#19

I would like to make the point that Dr. Norvig nowhere in this article says, "It takes 10 years or 10,000 hours to be a programmer." Dr. Norvig himself refutes that notion explicitly here: http://news.ycombinator.com/item?id=3278080 In a brief email exchange I Had with him, he even suggested he may rewrite this essay to address the fact that it is often used (inappropriately, obviously) to bludgeon new programmers in…

I read your link and nowhere does he refute that. In the context of his essay I believe he means it takes 10 years or 10,000 hours (more or less) to be a really good, experienced programmer. You can start playing the piano in a couple of weeks but it will take several years before you get really good. That is the spirit of his essay.

Somewhere between 2 weeks and 10 years you hit a point where you're good enough to entertain people/write useful code and perhaps even make some money doing so. The point being argued against I think is that you shouldn't tell people who are writing useful code that solves real problems that they shouldn't call themselves programmers because they haven't hit the 10 year/10000 hour mark.

Re: Teach Yourself Programming in Ten Years by Peter Norvig (2001)

#20
post #19

Earlier quoted context omitted.

I read your link and nowhere does he refute that. In the context of his essay I believe he means it takes 10 years or 10,000 hours (more or less) to be a really good, experienced programmer. You can start playing the piano in a couple of weeks but it will take several years before you get really good. That is the spirit of his essay.

Somewhere between 2 weeks and 10 years you hit a point where you're good enough to entertain people/write useful code and perhaps even make some money doing so. The point being argued against I think is that you shouldn't tell people who are writing useful code that solves real problems that they shouldn't call themselves programmers because they haven't hit the 10 year/10000 hour mark.

>>The point being argued against I think is that you shouldn't tell people who are writing useful code that solves real problems that they shouldn't call themselves programmers because they haven't hit the 10 year/10000 hour mark.

I understand your point. That is not what the essay is doing. It is telling you that to be a true master of your craft it takes years.

Anybody can call themselves an artist if they are practicing art, but only very few get to showcase their work in art galleries. That is how the essay is using programmer in this essay. In the broader sense I agree with you, if you can code then you are a programmer.

Post reply on HN