Teach Yourself Programming in Ten Years
WidgetBucks - Trend Watch - WidgetBucks.com

Teach Yourself Programming in Ten Years

Walk into any bookstore, and you'll see how to Teach Yourself Java in 7 Days alongside endless variations offering to teach Visual Basic, Windows, the Internet, and so on in a few days or hours.

People are in a big rush to learn about computers, or that computers are somehow fabulously easier to learn than anything else. There are no books on how to learn Beethoven, or Quantum Physics, or even Dog Grooming in a few days.

Let's analyze what a title like Learn Pascal in Three Days could mean:

Learn: In 3 days you won't have time to write several significant programs, and learn from your successes and failures with them. You won't have time to work with an experienced programmer and understand what it is like to live in that environment. In short, you won't have time to learn much. So they can only be talking about a superficial familiarity, not a deep understanding. As Alexander Pope said, a little learning is a dangerous thing.

Pascal: In 3 days you might be able to learn the syntax of Pascal (if you already knew a similar language), but you couldn't learn much about how to use the syntax. In short, if you were, say, a Basic programmer, you could learn to write programs in the style of Basic using Pascal syntax, but you couldn't learn what Pascal is actually good (and bad) for. So what's the point? Alan Perlis once said: "A language that doesn't affect the way you think about programming, is not worth knowing". One possible point is that you have to learn a tiny bit of Pascal (or more likely, something like Visual Basic or JavaScript) because you need to interface with an existing tool to accomplish a specific task. But then you're not learning how to program; you're learning to accomplish that task.

So go ahead and buy that book; you'll probably get some use out of it. But you won't change your life, or your real overall expertise as a programmer in 24 hours, days, or even months.

Original Article : norvig.com

AddThis Social Bookmark Button

1 comments:

    On 5:40 PM brodezoe said...

    At the same time, you have to start somewhere. Gaining a basic understanding of the syntax and fundamentals of a language is all that a beginner (with alot of enthusiasm and drive) will need in order to take their first step toward learning a programming language. I'd say that the titles of these books are the biggest misnomer (which is probably the point that you're trying to get across). It'd be better to change the beginning of the titles of these books to "Become familiarized with ...".