Fog Creek Software
Discussion Board

I like Books

Elsewhere in dis-cussion about the best software tools, Sammy said:

> Books too, I've spent a lot on.

Yes! Books are an extremely important tools investment. Durable and quite inexpensive for what you get.

But how does one find the books? Here's how I've done it and I'm satisfied with my process so I'll share:

First I hear about a book through other developers, or posted in the reading list of some famous developer (Steve McConnell's has excellant taste here IMO and his professional development library on his site is the best compilation of development books I've seen so far.)

At this point, you will have a list of 100s of books. Which ones to start with? Start with ones that pique your interest and then head out to review land.

The reviews at and on amazon are quite helpful here. Nearly any book will have some rave reviews so need to distinguish the real standouts. In fact, it's not uncommon to see over half rave reviews for a book that just doesn't do it for me. To find the real gems, I find it helpful to read/scan every review. The really great books might have thousands or hundreds of reviews and you don't have to look at them all but the sheer number does bode well.

There are certain books that have near unanimous praise and those that I have gotten I have not been disappointed with (Design Patterns, Refactoring, Code Complete, Peopleware, Structured Design). These are general erough that I'd recommend them to any developer.

And I'll personally throw in a few of the ones I like best: The C Programming Language, Expert C Programming (Deep C Secrets), C Traps and Pitfalls, Obfuscated C and Other Mysteries, The Secrets of Consulting, Programming Pearls). Those are all a lot of fun. If you hate C or just don't partake, don't bother with most of these.

I've got scores more on the bookshelf, but those are all ones I like best.

Anyway, there is no better development *tools* investment than good books. Also, I think any company would be well-advised to establish a company library and to accept any and all requests from developers to add a book to it. But if your company is not so enlightened, you'll have to lobby for it, or buy your own (which you may want to do anyway).

How many to read? I am always reading/studying at least one or two books. Personally I average 6-10 development related books a year.

That's excluding manuals and journal and magazine articles which are helpful for keeping up with the flawor of the month, but for the big picture, books are great.

X. J. Scott
Sunday, August 11, 2002

At one time I thought that a company library was a good thing, but I have lost my enthusiasm for it.  My previous employer tried it for a while, but it turned out to be too difficult to keep it up to date without having someone with a significant amount of time available to maintain it.  It probably works OK for large companies that can hire a librarian or at least pay someone part time.

Here is what has worked reasonably well:
- I buy general CS and SWE books myself.  These usually stay at home, but may go to the office.  Sometimes I'll even buy a second copy for the office.
- The company has a book budget.  Individuals use this to buy books relevant to their project.  They are company owned, but the individual developer keeps them at the office.
- There is some amount of book borrowing between individuals.  This makes for a sort of distributed library.

Here is a site that can be helpful in selecting books.  Unfortunately, it has not had the participation needed to be as useful as it could be:

Sunday, August 11, 2002

My company rents a building on the campus of the local university. As part of the deal, we all get university staff cards, which allow us to use the uni gym, library, and other facilities.

The uni library is a great source of reading material. I've often borrowed a book I was thinking of buying, and then realised that it wasn't as good as I expected. Also, some books you only really need to read once, so there's no point buying them after you've borrowed them. When I find a really good book that I'll refer to often, I go out and buy it.

I reckon that library has saved me hundreds of dollars!

Darren Collins
Sunday, August 11, 2002

I've always immersed myself in communities and found out what they consider good, and overrated.  Eventually I know enough to find those gems that no one really mentions, but should.

Monday, August 12, 2002

I use O'Reilly's Safari service.

It's a great idea and I use it almost every day. I still prefer hard copies though as reading from screen is not ideal.

Patrick Ansari
Tuesday, August 13, 2002

*  Recent Topics

*  Fog Creek Home