The World’s Leading Microsoft .NET Magazine
   
 
timstall

Donate Today!

Search Box

 

Calendar

««Jul 2009»»
SMTWTFS
    12
3
4
567891011
12131415161718
19202122232425
262728293031

My RSS Feeds








Mailing List

Most Popular Tags

                                                           

Why I still read technical books

posted Monday, 1 September 2008

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".

 

tags:  

links: digg this    technorati    




1. Dave Schinkel left...
Monday, 1 September 2008 8:24 pm

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.

I've always used books here and there and I have about 6 that I keep on my shelf at work at all times. This is after learning how to buy smart after some years of buying everything when I was younger thus the books get a bad rap because of lack of experience of how to find a good book. I think a lot of people don't invest time to research when shopping for a book to really see which ones are a good buy in terms of content.

Now if a developer is telling you that "all I need is the internet", maybe that's true but in my experience, you can't always find what you want on the internet and that developer might just be fine and dandy with that (more power to him/her) however I think they may be missing some great time savors as well by totally ridding books all together. I think when a developer says that, they are also naive or afraid to humble themselves and this is not good.

Supplemented by GOOD books, the internet and book combination is the way to go. There are so many blogs you'd think how in the world I would ever need a book again to find how to do something or whatever it may be. But the reality is, there are a lot of good developers who cannot post a good blog post if they tried because a lot of them skip half the details or just post to "brag". That leaves you with 70% ineffective resources on the net outside just articles and in most articles; they don't really cover what you're exactly looking for in the first place when a lot of these are in GOOD books. This is where a good handy and well written book comes in.

Good books provide the following in this internet based culture:

1) More insight on a topic by a blogger or good developer who may not want to write a "book" in his blog but goes into much more detail in their book(s). If that blogger writes a book on the subject and you love their blog, why not buy their book? Most likely if their blog has helped you out, the book will be a great reference as well.

2) Books provide a wider range of topics in one place. Whereas the internet does also, but searching can be a pain or become even frustrating in certain situations where the topic you are searching for you just are not going to come across that day no matter how much you try and vary your search. At a last resort, this is where a book comes in and in a lot of surprising cases, they resolve your question.

3) Books can be a good read, and can gradually introduce you to a subject or elegantly take you through and entire subject so well, that it's a true read. These are rare but there are some that constitute a good reason to read front to back if you can find the time to read the entire thing (most of us cannot).

4) Books you can take with you in times where you may not have an internet connection. You may be surprised (maybe you're in Thailand), and you wanted to sit out on the beach and read a programming book. As dumb and nerdy as that sounds, I'm just proving a point that a book can go anywhere, internet cannot.

There is no reason why one should think books are worthless. I think that person just has not really come across some really good books yet and probably yea, has wasted a LOT of money on BAD books in the past (I have).

Examples of what constitutes a "GOOD" in my opinion are some of the following that I highly recommend having available on any team:

Beginning ASP.NET 2.0 in C# 2005: From Novice to Professional 1-59059-572-6 Programming Microsoft ASP.NET 2.0 Applications: Advanced Topics 978-0735621770 Pro ASP.NET 2.0 in C# 2005 978-1590594964 Pro ASP.NET 3.5 in C# 2008, Second Edition 78-1590598931 ASP.NET 2.0 (A Developer's Notebook) ISBN:0-596-00812-0 Design Patterns: Elements of Reusable Object-Oriented Software 0201633612 Practical .NET2 and C#2 Second Edition: Harness the Platform, the Language, the Framework 978-0976613251


2. Dave Schinkel left...
Monday, 1 September 2008 8:33 pm

>>>>>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.

If I ever worked in an environment with managers like that, I'd wonder why those managers are managers to begin with and how they got to that level. They don't deserve to be a "manager".


3. Casper Bang left...
Thursday, 4 September 2008 5:28 pm :: http://coffeecokeandcode.blogspot.com/

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.


4. Frederic Daoud left...
Thursday, 4 September 2008 8:43 pm :: http://www.stripesbook.com

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.