The Computer Science Book, Second Edition is a practical map of computer science for working developers. It gives you the foundations beneath the abstractions, without asking you to reconstruct a whole degree from scratch.
The online version previews the chapters below, including the three new V2 chapters on machine learning, deep learning, and large language models and AI.
Preview chapters
-
Theory of computation
Preview
Automata, computability, and algorithmic complexity
-
Algorithms and data structures
Preview
Arrays, linked lists, hash maps, sorting, and searching
-
Computer architecture
Preview
Binary, logic gates, processors, and memory hierarchy
-
Operating systems
Preview
Processes, memory management, and file systems
-
Networking
Preview
TCP/IP, DNS, HTTP, and how the internet works
-
Concurrent programming
Preview
Threads, locks, and asynchronous programming
-
Distributed systems
Preview
CAP theorem, consistency models, and consensus protocols
-
Programming languages
Preview
Paradigms, type systems, and language design
-
Databases
Preview
SQL, indexes, B-trees, and concurrency control
-
Compilers
Preview
Parsing, ASTs, code generation, and optimization
-
Machine learning
Preview
Learning from data, uncertainty, evaluation, and where ML fits into real software systems
-
Deep learning
Preview
Neural networks, learned representations, and the architectures behind modern AI
-
Large language models and AI
Preview
Transformers, post-training, and the systems perspective behind LLM-powered software