I think different folks have different learning styles. For me books don't really help. I learn programming by programming. Often a well written blog post that I find on HN, or a tutorial that I find from google teaches me something I didn't know before. After a while you get a sense of the quality of a source... After learning like this for a few years, I started to learn a lot by reading the annotated source of libraries I use (underscore, jQuery... etc). I just wanted to throw in that I don't think books are for everyone.