If you ever faced the challenge of finding a book on a particular subject which you wished to educate yourself on but couldn't decide on which one, then we both share the same problem.
The idea to find the right book amongst the lot confuses me always and not just sometimes. Being unknown to the topic I find it hard to narrow down to the one book which I might truly enjoy and be justified on the parting of hard earned money. My recent trip to this journey was when I was looking for books to learn JAVA programming language. The JAVA language is a pretty popular one in industry and as you would expect there have been tons of books written by many accomplished authors. But the question still looms large, "How do I know which one is best for me and what if I am getting biased by selecting something which may not be right book to learn from?"
Well, I think the answer is very subjective in nature but can be reached upon careful flow with these steps of ideas.
Step 1. Figure out what are the popular books in the domain. The reason is, that's when you know that you are not getting biased by your option and there have been many people who have read it before. Make sure you at least have two choices.
Step 2. Go and read the reviews (both good and bad) of the book and if sample chapters are available, read them too to get an idea about authors style of writing. This factor helps me a lot because for me I have specific criterion on style of writing that suits me otherwise I find it hard to read. Books which are verbose, with poor English grammar or with eclectic styles are not the ones I like when I am talking about something serious like programming language. I want them to be well structured and to the point.
Step 3. Ask yourself, what is it that you want to accomplish from this reading. This is because, based on what your goal is, some books do a better job in focusing on that particular need of yours rather than on side dishes. For eg. I don't need to know about EJB when I am focusing on Core Java. That way when I buy a book and read it, I will be content at the end by fulfilling my goal.
The way I started was to list the names of popular books dealing with JAVA and see if I can get a sample chapter to read from each of these books and also get reviews (I made sure I read the ones where it got single star apart from 4/5 stars) from other readers. I went to my school library and peeped through the pages and read a bit to get a feel of each of them. I finally ended up selecting Core Java Volume-I by Horstmann and Cornell. The reason I chose this book over 100's of other selection is because this book makes a smooth transition from C++ to Java. I am a C++ Programmer and a bridge to Java will be any day helpful than a jump over a gap. Next, this book is a no-nonsense style and comes to the point in few lines. That's my style in general as to come straight to the point and get it done. Know that the other books are not bad but just not my style. Simple.
Good luck in your next trip to book store.