Live data from Hacker News

Teach Yourself Programming in Ten Years (1998)

norvig.com

71–80 of 96 posts

Re: Teach Yourself Programming in Ten Years (1998)

#71

As much as I agree with Norvig here, linking to this article in response to the "I want to learn how to code to build my startup" question is not helpful. Entrepreneurs aren't going to wait 10 years before launching their startup. The difference, of course, is that some people just want to build an MVP, while others want to be a programmer. In that case, I'd rename this essay: "Become a Programmer in Ten Years."

You can become a programmer very quickly. But if you want to teach yourself to become a good one (something that no one else will do for you), you need to put in the time and effort. The article isnt called 'become an entrepreneur' in ten years. I didnt see it as a response to anything. Its just a good article. One of the 5-6 that regularly get upvotes every year or two.

One thing to remember is that the author is not suggesting to learn for 10 years than you start to code.

You can learn to code in 21 days then start your startup it will be very difficult and slow. But if you are dedicated and keep at it you will get somewhere. And 10 years into it you will be an expert.

Re: Teach Yourself Programming in Ten Years (1998)

#72
regarding 10,000 hours ... from Moonwalking with Einstein

"What separates experts from the rest of us is that they tend to engage in a very directed, highly focused routine, which Ericsson has labeled “deliberate practice.” Having studied the best of the best in many different fields, he has found that top achievers tend to follow the same general pattern of development. They develop strategies for consciously keeping out of the autonomous stage while they practice by doing three things: focusing on their technique, staying goal-oriented, and getting constant and immediate feedback on their performance. In other words, they force themselves to stay in the “cognitive phase.”...

The best ice skaters spend more of their practice time trying jumps that they land less often, while lesser skaters work more on jumps they’ve already mastered. Deliberate practice, by its nature, must be hard....

Amateur musicians, for example, are more likely to spend their practice time playing music, whereas pros are more likely to work through tedious exercises or focus on specific, difficult parts of pieces...

When you want to get good at something, how you spend your time practicing is far more important than the amount of time you spend. In fact, in every domain of expertise that’s been rigorously examined, from chess to violin to basketball, studies have found that the number of years one has been doing something correlates only weakly with level of performance."

tl;dr

10,000 hours may not make you expert. Constantly increasing the level of difficulty of what you practice/work on might be more important.

Re: Teach Yourself Programming in Ten Years (1998)

#73
post #24

When I was learning how to program, I asked the friend who was teaching me the rudiments "How long does it take to learn how to code?" He replied "Eight hours." "Eight hours?" "Yep, eight hours, every day. It's pretty much just like driving a bus. The hard part is keeping your ass in the seat." Fifteen years and a master's degree later, his advice remains remarkably accurate.

A more appropriate title to the post might be "Become an expert programmer in 10 years." We seem to focus on the poles: no coding skills vs. expert coding skills. You can teach yourself to code in less than 10 years, you just might not be an expert. The "learn to code" debate might be more productive if we allowed for definitions of competency at the stages leading up to expert. The post does a good job of defining t…

That's a little pedantic, no? It's just a "catchy" title. He also notes that 10,000 hours might have been just as apt.

Re: Teach Yourself Programming in Ten Years (1998)

#74
post #24

When I was learning how to program, I asked the friend who was teaching me the rudiments "How long does it take to learn how to code?" He replied "Eight hours." "Eight hours?" "Yep, eight hours, every day. It's pretty much just like driving a bus. The hard part is keeping your ass in the seat." Fifteen years and a master's degree later, his advice remains remarkably accurate.

A more appropriate title to the post might be "Become an expert programmer in 10 years." We seem to focus on the poles: no coding skills vs. expert coding skills. You can teach yourself to code in less than 10 years, you just might not be an expert. The "learn to code" debate might be more productive if we allowed for definitions of competency at the stages leading up to expert. The post does a good job of defining t…

Oh wait, this is Hacker News. Pedantry is implied.

Re: Teach Yourself Programming in Ten Years (1998)

#75
post #57

Isn't it odd and curious and such like that the chunks of time bandied about are units of ten? Coincidentally equal to the number of fingers on our hands. 10 years. 10,000 hours. I'd be willing to bet my granny's dentures that if we had eight fingers on each hand those numbers would be 16 years and 65536 hours (well, I mean it would still be 10 and 10,000 but you know what I mean). Also, did you know that in many cul…

Imprecision (one significant digit) + Benford's law (most numbers start with 1) means most numbers needing citation are of the form 10^n. http://en.wikipedia.org/wiki/Benfords_law Interestingly, this would be true even if we had 8 fingers per hand. If we had 16 total fingers, 16 (base 10) would be written as "10" (base 16). 15 (base 10) would be a one digit number in base 16. On the other hand, you'd rather have six…

... and this is why we had Pounds, Shillings and Pence (£./.d) in the UK until 1971. http://en.wikipedia.org/wiki/Decimal_Day

Much more mathematically interesting, and tortured schoolchildren for many years, to their great benefit. Twelve pennies in a shilling, and 20 shillings to the pound sterling. Coins were at or soon before decimalisation: Farthing (1/4d), ha'penny (1/2d), penny, threppence (3d), sixpence or tanner (6d), shilling, florin (2/), half crown (2/6), and the crown (5/). The first paper note was the ten-bob note (10/), tequivalent to 50 new pence, followed by the Pound (20/). Until 137 there had been sovereign and half-sovereign coins instead of the 10/ and pound notes.

Re: Teach Yourself Programming in Ten Years (1998)

#76
post #62

Earlier quoted context omitted.

That's why many things in the metric system are designed on a grid with edge length 60 - it gives you many possibilities for subdivisions. For example the dimensions of most furniture is based on this - 30 cm, 45 cm, 60 cm, 90 cm, 120 cm and 240 cm everywhere.

Not that furniture might not, say, be scaled to fit human proportions or anything funky like that.

Yup, most desks and tables are around 75cm high because they're, well, designed for humans, not mathematical convenience.

Re: Teach Yourself Programming in Ten Years (1998)

#78
post #57

Isn't it odd and curious and such like that the chunks of time bandied about are units of ten? Coincidentally equal to the number of fingers on our hands. 10 years. 10,000 hours. I'd be willing to bet my granny's dentures that if we had eight fingers on each hand those numbers would be 16 years and 65536 hours (well, I mean it would still be 10 and 10,000 but you know what I mean). Also, did you know that in many cul…

Imprecision (one significant digit) + Benford's law (most numbers start with 1) means most numbers needing citation are of the form 10^n. http://en.wikipedia.org/wiki/Benfords_law Interestingly, this would be true even if we had 8 fingers per hand. If we had 16 total fingers, 16 (base 10) would be written as "10" (base 16). 15 (base 10) would be a one digit number in base 16. On the other hand, you'd rather have six…

My favorite part about the imperial system is that a pint of butter weighs a pound. 16oz of butter is 16 fluid oz. A pint is a pound, the world round!

Re: Teach Yourself Programming in Ten Years (1998)

#79
post #6

Though agree that those "For Dummies" books grossly underestimate the time needed to be a good programmer, I really wish he didn't use the "10,000 hours is the ultimate immutable number of hours you need to 'master' a skill." It's nonsense.

> It's nonsense. The 10 year / 10,000 hours seems to come up frequently - care to cite or link to some interesting counters? (genuine curiosity)

One of the big articles in the field is by K. Anders Ericsson and Neil Charness. It is titled "Expert Performance - Its Structure and Acquisition." You can find a copy at:

http://stuff.mit.edu/afs/athena.mit.edu/course/6/6.055/readi...

Alternately, you could read "Deliberate Practice and Acquisition of Expert Performance: An overview". It is also by Ericsson and you can find a copy here:

http://www.cogsci.rpi.edu/~vekslv/classes/cogeng2010/lecture...

Re: Teach Yourself Programming in Ten Years (1998)

#80
Tip: Don't focus on learning programming. Focus on learning to find and solve tough problems.

Once you go that direction you will learn things along the way. 10 years or 5 or 20 don't even matter then. Because you will be achieving the end result of why you should even be learning programming.

Post reply on HN