I was wondering what books are there that give you nice overview of the computer science field.

I'm not interested so much on the details of the trees, but on the forest. I was thinking it would have to be something like a popular introductory book, preferably up to date.

I hope this question is within the forum's scope.

  • $\begingroup$ I’ll write a book “war and peace a computer science”. Leo, get out of the way. $\endgroup$
    – gnasher729
    Commented Dec 30, 2022 at 8:54

2 Answers 2


(Disclaimer: I'm not a computer scientist and have not read most of these books. I wish more people would address this interesting question.)

CS courses usually provide an introduction to the field which may be supported by corresponding textbooks, for which various options exist out there. Many of them have titles in the lines of "Introduction to Computer Science", "Fundamentals of Computing", etc.

For example, I enjoyed reading CS for All: An Introduction to Computer Science Using Python last year, although I haven't worked through its introduction to objects because I had a bit of trouble with the Python graphics library of their choice (the issue possibly had an easy solution but I did not put much effort into it), so I just glanced its contents since objects were already a familiar topic.

I was satisfied with its treatment of Python, functions and recursion, as well as other subjects I wanted to delve into a bit deeper, so it was a generally enjoyable read.

I've found it relatively short and now I'm looking for supplementary texts. So, other titles whose TOC (Table of Contents) caught my attention for various reasons, in no particular order (but still rather Python-centric), were:

  • Introduction to Computation and Programming Using Python - John V. Guttag
  • Computer Science Illuminated - Nell Dale and John Lewis
  • Python Programming: An Introduction to Computer Science - John Zelle
  • Explorations in Computing: An Introduction to Computer Science and Python Programming - John S. Conery

And there are certainly many others available and more or less up-to-date.

BTW, regarding being up-to-date, this is probably bad advice (and possibly worth questioning separately), but I once misread the introduction from Simply Scheme (which is also an introductory CS book, and is known as a prequel to Structure and Interpretation of Computer Programs) as stating that CS books have a ten-year lifespan or so in terms of how well they address the ever-changing trends from the field (certainly a terrible misread, and people would throw SICP at me as a counterexample - BTW, there is a JavaScript edition of SICP now). But it stuck with me, and now I personally tend to favor more recent introductory CS books such as the ones I mentioned.

So that is just something to consider. You are probably okay reading any book or edition that is not terribly old or adopts an unfavorable language to teach its concepts. Python is a popular language choice today, Java had its heyday some time ago, languages such as Scheme are considered good for teaching CS concepts, and you certainly can find more or less up-to-date choices for C and other relatively popular languages you might be familiar with, or even language-agnostic options (such as the Computer Science Illuminated one that I mentioned earlier, with which you are free to adopt any language you prefer).


For all of CS, I'm not so sure. For instance, I'm imagining that you don't want to do programming. So you might have luck looking into CS's different parts, trying books not so much aimed at practitioners as at those who are just interested. Along that line, perhaps for just the Theory part, The Golden Ticket: P, NP and the Search for the Impossible by Lance Fortnow.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.