Rant

Y Kant Developers Read?

Bookshelf image from flickr.com/photos/ianturton/2341264331/
I guess there are two major reasons that developers don’t read many books. This is kind of a timely subject for me right now on both fronts.

First, I began a new job at the beginning of last month. My new employer was running a Visual Fox Pro environment and wants to move to a full-blown .Net SOA Architecture. I was brought in to architect that. The team that I have (save one programmer that I recommended and was hired) are all Visual Fox Pro 6 developers who don’t know a stitch of .Net. With the exception of one guy (who I *really* appreciate), none of them seem to be very interested in reading books to find the answers to problems or to learn the gist of C# and ASP.Net.

This was also the case at my last job. With the exception of the guy who I recommended at my new place, no one would read books. They would take them at our insistence and then never read them. Someone once told me that developers read about one technical book a year on average. I couldn’t believe it when I heard it, but I’m starting to wonder if that number isn’t smaller. The first major reason just seems to be laziness and/or apathy.

The second major reason seems to be the driving force behind Jeff Atwood and Joel Spolsky‘s new venture, StackOverflow. According to Joel, “Programmers seem to have stopped reading books. The market for books on programming topics is minuscule compared to the number of working programmers. Instead, they happily program away, using trial-and-error. When they can’t figure something out, they type a question into Google.”

I believe that to certainly be true, and for people who are using new technologies or are on the bleeding edge, trial-and-error is the only way to go. However, if we are talking about anything that is approaching a year old, books certainly exist. My problem with trial-and-error and Google is that you never really *learn* anything. You are kind of limited to your own cleverness.

Advanced books not only teach you new features, they teach you new techniques. If you just trial-and-error, you will only try to figure out the Python way to do your C# code, or the Ruby way to do what you’ve always done in Java. You won’t learn what there is to learn about the new languages and the cultural mindset that comes with them. You could skip reading books and read lots and lots of source code, but I don’t believe a majority of developers are doing that, either.

However, so far we’ve only talked about learning a new programming language or technology. There is no way to effectively trial-and-error the kind of knowledge that you get from books like Code Complete, Pragmatic Programmer, GOF Design Patterns, or Practical Cryptography. How in the world has this style of learning, proven effective for centuries, fallen so far by the wayside? I am not trying to seem terribly elite, but I really read more than an entire technical book per month on average, along with several technical magazines and journals. I directly attribute my success in my field to that fact. Why can’t people see books as an avenue to their greater success?

4 comments Y Kant Developers Read?

I think it is very true.

Now one thing to point out. I read a decent number of books, but I don’t always read them through, even if they were meant for that.

For advanced topics, there are times that I love short 2-3 page articles on something. I have read MSDN magazines and SQL server magazines so much before. They had some good short articles where I could dig deep into something pretty fast.

The shorter articles also made it easier to think about something where I didn’t want to invest the book reading time.

Dean Weber says:

Found your article after a quick mention on Twitter. I think I can provide your answer. Programmer’s don’t read books anymore because of time, JIT mentality, circumstance, ROI, freebie mentality and ADHD. Let me elaborate. Time: why bother reading a “whole” book when I pressing deadlines and expectations. JIT mentality: I can only spare enough cycles to get what I need to know and get it now. Circumstance: Perhaps management doesn’t buy in on the concepts yet and personal time is limited. ROI: What’s the benefit or return on the investment. If there is no immediate realized gain, “why bother?” Freebie mentality: Why pay for something that I can find for free with Google. ADHD: Due to the internet information overload programmer’s have limited time and focus outside of their manic immediate needs. Books are long term. Articles or websites are short term stop gap solutions providers.

Personally, I have a ton of programming, architecture, and design books. I love to read. I read more than a book a month. Do employers value that? Nada. Zip. No benny. For most programmers if there has to be an external motivating factor for reading full length books. Not so for me. I love to read. But again, it hasn’t provided me an out. It hasn’t manifested itself in new positions, greater glory or upward (or even lateral for that matter) mobility. Most employers if their people are reading books. Everything has gone the way of outsourcing and bean counting. Companies want what they need and want it now. They want it for the least cost. Quality and long term vision have been sacrifice. Is this a cynical or insightful response to a reasonable question? Perhaps other’s have different sentiments.

Pete says:

Ben, I think it is fair if you get a book and only read what is covered that is new or pertains to you. A good example would be a book on C# 3.0. You could probably skip the parts on how to declare a variable or do a for loop and just read the chapters on LINQ, lambdas, etc. And don’t get me wrong, I’m not against shorter articles, that’s why I read things like CODE Magazines, Sql Server Mag, and MSDN Mag. But, I definitely *didn’t* have you in mind when I was considering lazy developers!

Pete says:

Dean, thanks for stopping by after seeing the tweet. I definitely understand the time crunch that can lead people to not read entire books. I’m mainly railing against people that never RTFM at all. Not one bloody chapter! I’m like you and I read for fun, so I knock out a lot more than I need.

I don’t understand people who are in a career who can’t see long term implications of not keeping up with new developments. Sure, reading about LINQ right now does many people no good because their employer won’t adopt the new frameworks for a year or more, but when they do, wouldn’t they like to hit the ground running? What if they drop 3.5 into their environment and this developer is already at an intermediate level and becomes a leader to the team? Even if that isn’t recognized at their current job it looks and sounds great on a resume or in an interview.

I also understand the freebie mentality. No one is cheaper than me. However, almost all of my employers have been “about books”. My current employer has an O’Reilly Safari subscription for us. My last employer would buy almost any book that we asked for. My employer before that was the same way. I also hit our public library for books, or buy them used on Amazon.

I have to wonder what kind of market you work in. As I said in the article, I directly attribute my success in the industry to the amount of reading I do (all media included). The last three times I went on the market, I instantly had suitors and this past time, I had interviews every day from the time my prior company closed their doors to the day I accepted my new position. Total time out of work from my last day to my first day? Seven business days. I directly attribute my marketability to my knowledge and the things on my resume that that knowledge has brought me. I’m never scared to say that I can do some new thing at work, because I know that I can RTFM (or have already).

I make a habit of not working for companies that consider IT a total liability. In fact, I ask questions during the interview whose sole purpose is to ferret out their policies or culture. If you aren’t in a company that values you and your continuing education, I have to wonder if you shouldn’t look elsewhere. Better situations are out there!

Leave a Reply

Your email address will not be published. Required fields are marked *