|
Occasionally I hear a respected developer make the case against books - "Books are dead, use other online resources instead." I acknowledge that technical books do have several limitations:
They can be very linear, lacking the web's hyperlinks. While books can have cross references, but it's just not the same.
Books are possibly outdated - books take an average of 1-2 years to get published. Especially with technical books, where the rush is to be first and "catch the wave", books on newer topics may be inaccurate because they were written using the beta of the technology.
Books can contain information overload - you don't need every chapter in an ASP.Net book to get started (most developers never touch ASP.Net globalization).
As a book is ultimately printed paper, you can't get a dynamic interaction from a book - i.e. stepping through a source code demo or seeing an animating demo.
Books physically take up space, and can sometimes be very heavy, such as when you're a consultant in the airport and you need to pack everything into a single carry-on.
Books can only be in one place at a time - so it can cause problems when you need it at home, but left it at the office.
This is lame - but sometimes you're on a project where management discourages reading technical books during office hours ("we don't want the client thinking you don't already know what you're doing, read up on that stuff at home") - however the same manager is totally comfortable with you browsing online technical websites.
However, I think everything considered, there is definitely a time and place to use books as a learning resource. Some of these weaknesses can be turned into a book's greatest strengths:
Books, usually a 200-600 page journey through a dozen chapters, are often more thorough than online tutorials or blog posts. They cover more topics, and show the bigger picture. This gives you a more proactive approach to the topic, as well as inevitably makes you more confident about that topic.
Books are great for breaking the ice of a new technology because they are a step-by-step journey. You're not scrambling between misc blog posts or tutorials.
Especially for general topics (basic Xml, Html, C#, SQL, JS), where the entry-level knowledge is pretty stable, a books provides a good introduction and guide.
Because books are physical hardcopies, they're great when you just want to get away from staring at a laptop screen. Whether it's in an airplane (where practically there's not enough room to pull out a laptop), stepping outside, or even just taking advantage of 5 free minutes (good for reading a page, but barely enough time to even start up a laptop).
For some personality types, books provide a physical trophy: "wow, look at all those books that I've read through."
Note that books are not intended to be used as your only resource, but rather as one part of a comprehensive learning strategy. Even most tech books today are filled with online links to demos, tools, reference guides, and community groups. I benefit a lot from reading books; I think they're a great tool in one's "learning arsenal".
I think you're the first developer who "really" promotes books other than
one team I have worked with in the past at a .com. Usually most developers
will say they use "some" books but are hesitant to actually crack one open
at work for fear that fellow developers will wonder why they need to use a
book. That's a naive and unfair observation.
>>>>>This is lame - but sometimes you're on a project where
management discourages reading technical books during office hours ("we
don't want the client thinking you don't already know what you're doing,
read up on that stuff at home") - however the same manager is totally
comfortable with you browsing online technical websites.
Here's why I like books:
- I can bring them to the crapper and feel like I don't waste any time.
- Take notes in them / highlight.
- Throw the really crappy ones on a camp fire.
Nice post. I especially agree with A) that books can be more coherent and
complete than a series of individual, unrelated articles/blog
posts/tutorials etc., and B) sitting comfortably outside, or in the living
room, or (anywhere away from the office/computer), reading a paper book, is
quite enjoyable.