tags:

views:

431

answers:

13

Sometimes there are many books about some part of programming knowledge. Sometimes there are written by very good authors.

So on what criteria choose a book to read? What take in an account to make sure that book will give me what I want? If authors are equally good and when readers don't judge what book is better one?

+1  A: 

The only way is by recommendations/reviews but even that isn't a good guide. There is no other way to assess a book without first reading it.

AnthonyWJones
+2  A: 

Finding no review about any book must be a rare occurence nowadays, so I always search for some (and do not blindly believe them but use them as an hint).

As a general rule I avoid books with screenshots : it usually means it's targeted to beginners and tend to contain content that is quickly obsolete.

I also look at the second part of the book by peeking at some random pages... If it seems it's still talking about simple things it means I won't learn much from this one.

After all if I need tutorials I can go to the web. I read books for "serious" stuff, the kind you have to read several times and actually need the additionnal comfort offered by books compared to screen

siukurnin
A: 
  • covers my area of interest
  • easy reading - if I find it hard to follow at the first glance, it's only gonna get worse when I really start reading it
  • solves some of the problems I had in the past
  • avoid books of more than, oh, I don't know, 600 pages ... usually means they've too simplified the matter (the "Bible" series, although not programming, come to mind)
ldigas
A: 

That's difficult to answer, since the setting you operate in differs (vastly) from mine, and just so from everyone else. What is helpful for some, is less helpful for others.

The best advice when looking through reviews is to stick to the reviewers that seems to match you're situation best. No reviewers found? Then it all comes down to gut feeling. Good luck finding the book that matches your situation best!

ArjanZuidhof
+1  A: 

If reviews etc. are of no help, I'd suggest that you take the time in a bookstore to flip through the books to see if you find them appealing (e.g. do you like the way the book is organized, the number and presentation of code samples, the style of the author's writing etc.) - that way, you'll at least be able to rule out books that you will potentially find tedious to read.

ISW
A: 

Take a look at work colleagues desks.

I sometimes wander past peoples desks (people I don't know) - see an interesting book and ask them what they think of it.

You might make some good contacts/friends as well.

Fortyrunner
+2  A: 
  • Does the author deal with "why", as well as "how"? That's a good start.
  • Does the author tell stories, rather than just the straight facts? Stories provide the best hooks to fire your understanding.
  • When reading the book, does the author answer questions almost as soon as you've thought of them?
RoadWarrior
A: 

Any combination of: Editors' review on Amazon and similar sites Readers reviews and readers' ratings is very key for me, personally. Preview of the book, usually also on Amazon Scan the table of contents See if the publisher has a sample chapter.

Pita.O
A: 

Whether they have fun problems, and example code. Most of the great CS and programming books tend to do.

DasBoot
A: 

Many publishers have websites where each book will have downloadable code samples, errata and sample chapters. You can have a look there to get an indication of what's in the book and maybe a hint as to the quality.

Mostly I look at blogs and Amazon reviews. Also helpful is find a book you liked, find it on Amazon, and then see what else people who bought that book also bought.

Also I find many reviews on programming books will contain warnings if the book is aimed purely at beginners or if it's not recommended for beginners.

In the past I haven't been able to decide between two books, so have bought both. Usually one is excellent and the other crap. And unfortunately I have to agree there's no way to reliably tell ahead of time which one will be which without reading them.

MikeW
A: 

i like to judge the book strictly by its cover

if it says "by Jon Skeet" then it's a good book

if it says "by Steven A. Lowe" then it's a great book

Steven A. Lowe
A: 

I find I have enough domain knowledge to assess whether a programming book will be suitable for me by spending half hour with it in the book store.

All programing tech and all languages inherit the same basic principles. If the book can explain those principles for the tech in language I understand I assume it's a good choice for me. That logic hasn't failed me thus far in my selection of dead tree tomes.

Reviews aren't a good indication of whether a book will be suitable for you. They can be useful if they all say the book was useless and didn't cover the topic in any sort of real depth, but otherwise treat them as just a very weak guide.

People are all different, and they way you need something explained or choose to represent it in your mind is different to the way I do it. That's why there's so many books to choose from.

Sit down with a couple of them and skim pages here and there. You'll know which ones you feel comfortable with very quickly.

Adam Hawes
A: 

Here's some things to check out quickly just from the surface:

I check out what year its from. If you want to learn the latest about a language (stuff that'll be more relevant in the future) then you want a later publishing date. On occasion you want stuff about earlier subjects, and sometimes you will look for an earlier date, but rarely. The knowledge has been updated in later editions that are more recent and will be more helpful (hopefully).

Publisher. My favorite is definitely O'reilly. They have their regular series (animals on cover) and the missing manuals. Apress also seems good, less books out currently. I haven't been as impressed with Sam's.

But always look through the book too. The content is going to be the most relevant part, so get the best idea you can from it in however long you can look at the book.

CrazyJugglerDrummer