Do you have coworkers whose shelves groan under the weight of hundreds of pounds of technical books? I do. And I always try to gently convince them that maybe they should buy books by content instead of weight:
This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2005/01/ideas-are-more-important-than-code.html
re: books that teach the “why” - I agree - “how” books is not about understanding. While “how” is important, “why” is inherently difficult to figure out and is at the next level. Without teaching, “why” may never be figured out, but “how” can usually be learned through hard work.
I believe this is somewhat similar to comments in code. I like to put only comments that describe “why” some piece of code was written that way, but not comments that describe “how” the code works - because having to do so means your code is obscure and difficult to understand. But you’d always need to explain “why” something was done a certain way, because it is unlikely that you can figure it out, usually because of some external factor.
In addition to that, the mediocre developers never even ask why. They just arrive at the first solution that works and keep plowing ahead.
Chris Sells’ comment “My own method involves taking in the available material, asking a bunch of “why” questions and then telling somebody else 'til clarity emerges.” works. But the problem is he’s talking about TEACHING till clarity emerges in him - the teacher.
So once again the student is left to suffer through all this and gets the least benefit.
It’s true that teaching produces more understanding in the one teaching than in the listener.
So this all kind of begs the question of learning doesn’t it? You’ll notice that Don Box and everyone else at Microsoft has pretty much abandoned COM? And that’s because it’s just too hard!