Programmers Don’t Read Books — But You Should: Jeff Atwood criticizes the concept of reading a book on programming:
If programmers don’t learn from books today, how do they learn to program? They do it the old-fashioned way: by rolling up their sleeves and writing code — while harnessing the collective wisdom of the internet in a second window.
[…] I lay part of the blame squarely at the feet of the technical book publishing industry […]
But then he goes on to promote his programmers bookshelf, and explains that you should just be buying better books:
The best programming books are timeless. They transcend choice of language, IDE, or platform. They do not explain how, but why. If you feel compelled to clean house on your bookshelf every five years, trust me on this, you’re buying the wrong programming books.
And that’s the key. Buying books about languages and syntax is perhaps a bad idea, since they change so often. The best books are about concepts — timeless bits of information you can use for years across multiple languages.
I read obsessively. I read about my trade more than anyone I know. In the last month, here are the books I have read, either in whole or in part. These aren’t books I haven’t just thumbed through for reference (that list would be in the dozens). Rather, these are books I found a quiet time to read in order actually learn something in a deeper sense.
- Information Architecture for the World Wide Web
- Tagging: People-powered Metadata for the Social Web
- Practical Subversion
- Introduction to DITA: A User Guide to the Darwin Information Typing Architecture
- Writing White Papers
- Painless Project Management with FogBugz
And that’s just in the last month.
I have to read about this stuff. I can’t stop. And I share Jeff’s opinion that the true higher calling is to books that drench you in concepts rather than syntax. These are the books that extend you beyond just keeping up with your day-to-day job. I get a little thrill when I find a book about a transcendent concept that I’m interested in. A book that I think will make be a better developer over the long term.
Later in his article, Jeff lists his top five programming books — the books he thinks every programmer should read. You’ll have to click through to see the list, but I was gratified to see that I’ve read four of them.
For my two cents, the best book I’ve ever read on programming and the one that I should just plain force everyone at Blend to read is Code Complete by Steve McConnell. I don’t care what language you code in this, this book will make you better at it.