I agree with the article, but am skeptical of his taking a pass on Knuth-- I think that working through TAOCP is a good investment for anyone serious about programming (given sufficiently large values of "serious").
Agreed. But remember, this is Jeff Atwood... I doubt his readers do much other than 1) submit his blog to reddit and 2) write Visual Basic applications.
Not exactly what I would consider "being a programmer", but to each his own, I suppose.
"I doubt his readers do much other than 1) submit his blog to reddit and 2) write Visual Basic applications."
I agree with point #2, and perhaps he does as well. He has said much the same thing, openly, and he has also said that his mission is to provoke them into hoisting themselves up a little beyond that.
I apologise for the terrible analogy, but perhaps Jeff's blog is like a car's first gear. It exists to overcome a large amount of inertia and get an object at rest to start moving, slowly. Other gears take it from there.
I personally wish he would push them to explore towards more free software and tools rather than stay on the Microsoft plantation, but if he can get anybody to read just one more book this year, the essay is a win.
Heck, if it can remind me that I need to read one more book this year, it's a godsend for me.
Except for the fact that one of Atwood's articles is on Hacker News at least once a week. So, who is submitting these articles?
Atwood definitely does write about simple ideas, though. His blog is packaged to be consumed for programmers of all skill levels. As a result, it's often a little bit mundane for those with higher levels of knowledge.
Hey, don't knock the VB-- there's a goodly number of coders with serious programming juju (like Brianbec, for instance) who consider VB.NET to be their language of choice.
Definitely. I'm working through TAOCP, and the exercises in that book are incredibly useful in stretching your brain in ways that day-to-day coding simply will not.
That said, I think the reason that I enjoy Knuth so much is that he is a mathematician; admittedly, I'm biased, as my formal education background is rooted in mathematics as well. The nice thing about this is that Knuth not only knows what he is talking about, but that he doesn't tend to skip fundamental steps. Nor does he play the notation games that are so often found in computer science texts.
Speaking of 'notation games', why do they use 'equals' for 'set inclusive'?
So, yes, to learn how to program in language X, the Internet is probably a better resource than the average book. But to learn how to program well, a proper bookshelf is invaluable.
I think that a well-written language specific book can be much better than the internet, because they can take you from the beginning through advanced concepts in a structured way. This means you can really see how everything fits together, why the language developed the way it did, and how to do things the "right" way.
One example of this is "JavaScript: The Definitive Guide" (the Rhino book). In some respects this is exactly the kind of book that the article is criticizing: it's huge, it tries to be a reference book, it's specific to a single technology, it's about something that real programmers should be able to figure out on their own. But it was much quicker to read it than to try and make sense of the scores of tutorials out there that each explain one small part of the language. Yeah, I could have all figured it out anyway, but that doesn't mean it would have been the best way to do it.
Don't agree, That book is from 1978. I am personally very proud of some decades old BASIC books, although I would be more worry about the "more BASIC computer games" :).
In any case, nowadays before buying a book you have many options to know in advance if that book is good enough, I recheck every book I buy, actually have lots of them and only a few were bad.