Back in 2011, lukeprog posted a textbook recommendation thread.  It's a nice thread, but not every topic has a textbook recommendation.  What are some other heuristics for selecting textbooks besides looking in that thread?

Amazon star rating is the obvious heuristic, but it occurred to me that Amazon sales rank might actually be more valuable: It's an indicator that profs are selecting the textbook for their classes.  And it's an indicator that the textbook has achieved mindshare, meaning you're more likely to learn the same terminology that others use.  (But there are also disadvantages of having the same set of mental models that everyone else is using.) BTW, my dad claims Goodreads star ratings can have a more informative spread than Amazon ones.

Somewhere I read that Elements of Statistical Learning was becoming the standard machine learning text partially because it's available for free online.  That creates a wrinkle in the sales rank heuristic, because people are less likely to buy a book if they can get it online for free.  (Though Elements of Statistical Learning appears to be a #1 bestseller on Amazon, in bioinformatics.)

Another heuristic is to read the biographies of the textbook authors and figure out who has the most credible claim to expertise, or who seems to be the most rigorous thinker (e.g. How Brands Grow is much more data-driven than a typical marketing book).  Or try to figure out what text the most expert professors are choosing for their classes.  (Oftentimes you can find the syllabi of their classes online.  I guess the naive path would probably look something like: go to US News to see what the top ranked universities are for the subject you're interested in.  Look at the university's course catalog until you find the course that covers the topic you want to learn.  Do course_id on Google in order to find the syllabus for the most recent time that course was taught.)

New Comment
17 comments, sorted by Click to highlight new comments since:

If you're using Amazon, look at the comments, not just the star ratings.

There are people who like a book, but don't seem to have read it. So far as I know, the "this comment was useful" is a good guide to finding the detailed, specific comments.

I suppose that all else equal, more recent textbooks are better since they are going to be more up-to-date (modulo editions) and also written to address a perceived flaw in all the existing books? Though there are some great older textbooks: I think I remember reading that Turing award winner Richard Hamming added probability to his calculus textbook because he agreed with students that calculus was too frequently presented without any motivating applications.

If you're an autodidact, having answers available for the problems in the book, to make sure you are learning stuff correctly, seems pretty valuable.

Reposting my comment from lukeprog's thread with slight edits.

It would be useful for me if some of you guys shared your methodology of choosing textbook / course / whatever for learning X, especially if X has something to do with math, computer science or programming.

My methodology (especially for math, computer science and programming) (in no particular order):

  • I know Russian and English but I prefer English textbooks, because there are more textbooks in English produced. If their usefulness for me is a gaussian distribution, then top textbooks in English are probably better, than top textbooks in Russian.
  • Go to and look at recommendations
  • Go to libgen, search for the keyword and sort by the publisher or by year. Identify potentially good publishers, e.g. top universities of the world or top universities in that field, or Springer
  • Check rating on goodreads and/or on amazon
  • Check top comments by usefulness on goodreads and/or amazon
  • Download the book, look at the Contents section, see how useful they seem to me
  • Google best textbook on ${subject name}, ${book title 1} vs ${book title 2}. Pay special attention to results on stackexchange. Do the same google search with

New ideas which I haven't tried yet:

  • Look for a subreddit or freenode chat on the topic I am interested in. See if there's a recommended reading list pinned there.

Interesting topic, thanks for bringing it up.

Regarding sales rank vs. ratings, I disagree, but I don't feel strongly about my disagreement at all.

  • My impression is that different textbooks use roughly the same terminology, although I don't have much experience reading different textbooks on the same topic, so I don't feel too strongly about this impression.

  • Professors may be paid off (or some variation of "paid off") to require certain textbooks. I don't know much about this, just noting it as a possibility.

  • I suspect that professors aren't great at choosing textbooks that explain things well, in part due to the illusion of transparency, and in part due to my experience being one where professors aren't good at pedagogy. Or maybe they just don't care. Or perhaps they do care, but they care more about choosing a book that fits the curriculum they want to teach. I suspect that ratings do a better job of predicting how well the book explains things.

Some other things to consider:

  • I have a theory that the more good visuals a textbook has, the more likely it is to be a good textbook overall. If you can access some random pages in the textbook, try skimming through to get a sense of what quality of visuals there are in the textbook.

  • Try different books out before committing to one! Eg. by reading a small subsection or two. Seems like a reasonable investment of your time.

  • Read descriptions and reviews to see if you fit the target market. Ex. Probability Theory: The Logic of Science by ET Jaynes seems like a "good" book, but it probably isn't a good book if you're a beginner looking for an introduction (I'm guessing).

When approaching a new field:

Google scholar for recent papers -> select the ones that appear relevant to your query -> trace citations backwards until you find the seminal papers in the subfield -> pull the first authors and last authors' CVs -> they will likely have written or contributed to a broad survey textbook, and may have written a specialist one on your chosen subtopic.

This can sometimes produce funny results with mature fields, where most of the major work was done decades ago. Reading high quality works by the giants of the 20th century and comparing it to more modern material can be a humbling experience for some--it certainly has been for me on more than one occasion.

Reading high quality works by the giants of the 20th century and comparing it to more modern material can be a humbling experience for some--it certainly has been for me on more than one occasion.

I am not sure, are you saying, that for some fields "works by the giants of the 20th century" is great, while modern material is bad?

Correct. I have found that the works written at the time when the relevant technical work had just recently been completed, by the people who made those breakthroughs, is often vastly superior to summary work written decades after the field's last major breakthrough.

If I remember correctly, Elon Musk cited some older texts on rocketry as his 'tree trunk' of knowledge about the subject.

This advice only applies to mature fields, in places where fundamental breakthroughs are happening regularly, this advice is downright awful.

If you can physically get to a university library, then going to the section about the topic and looking at each book from the shelf until you find something that is comprehensible or otherwise meets your criteria, could be a good strategy.

I've found some good books that way.

In addition to what you've cited, here are some methods I've used and liked:

  1. Email professors to ask for recommendations. Be polite, concise, and specific (e.g., why exactly do you want to learn more about x?).

  2. David Frum says he used to pick a random book on his chosen topic, check which books kept showing up in the footnotes, then repeat with those books. A couple rounds yielded a good picture of who the recognized authorities were. (I pointed this out in a Rationality Quotes thread in 2015. Link: Cons: This is time-consuming, sometimes requires physical access to many books you don't yet own, and tends to omit recent books.


This is literally doing PageRank, by hand, on books. There's got to be a better way

True. I think Frum did this in law school, which he finished in 1987.

This might take a few hours, but selecting a good book might save you significantly more time.

I agree it might be locally optimal, globally very suboptimal

I don't think a global optimum exists. People are different their optimums are different as well.

Sorry did not quite mean that. Meant it would be nice for everyone if there was a service to do this :)

1a. If a professor is a suitable source for a recommendation, they've probably taught a course on the topic, and that course's syllabus may be available on the open web without emailing the professor.

Asking for advice in online forums such as this one seems like a good idea. For most fields, you're likely to find someone who has spent enough time on the subject to have read the most highly accredited textbooks about it and can give reasoning for the merits of one book over others.