These books form the core computer science curriculum and professional reading list. They cover algorithms, systems, languages, theory, and the broader craft of software engineering - essential reading for anyone serious about CS.

Foundational CS Textbooks

Books that establish the theoretical and practical foundations of computer science.

BookAuthorYearLevelDescription
Structure and Interpretation of Computer Programs
2nd Edition, MIT Press
Harold Abelson, Gerald Jay Sussman, Julie Sussman1996Intermediate-AdvancedThe legendary 'SICP' - arguably the most influential CS textbook ever written. Teaches computation as a mental model using Scheme. Freely available online.
Introduction to Algorithms
4th Edition, MIT Press
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein2022Intermediate-AdvancedThe definitive algorithms textbook ('CLRS') used in over 1,000 universities. Rigorous coverage of all standard algorithms with proofs and analysis.
Computer Systems: A Programmer's Perspective
3rd Edition, Pearson
Randal E. Bryant, David R. O'Hallaron2015Intermediate-AdvancedCMU's 'CSAPP' - the best introduction to computer systems from a programmer's viewpoint. Covers machine code, memory, linking, processes, and networking.

Theory of Computation

Automata, computability, complexity theory, and logic.

BookAuthorYearLevelDescription
Introduction to the Theory of Computation
3rd Edition, Cengage
Michael Sipser2012Intermediate-AdvancedThe standard undergraduate theory textbook. Clear, rigorous treatment of automata, computability, and complexity with elegant proofs.
Computational Complexity: A Modern Approach
Cambridge University Press
Sanjeev Arora, Boaz Barak2009AdvancedModern graduate complexity theory covering P vs NP, randomization, derandomization, quantum complexity, and interactive proofs. Freely available online.
Introduction to Automata Theory, Languages, and Computation
3rd Edition, Pearson
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman2006AdvancedClassic rigorous treatment of formal languages and automata theory.

Operating Systems and Systems Programming

How operating systems work and how to program them.

BookAuthorYearLevelDescription
Operating Systems: Three Easy Pieces
Arpaci-Dusseau Books
Remzi H. Arpaci-Dusseau, Andrea C. Arpaci-Dusseau2018IntermediateModern, free, and exceptionally well-written OS textbook organized around virtualization, concurrency, and persistence. The best free CS textbook.
Operating System Concepts
10th Edition, Wiley
Abraham Silberschatz, Peter B. Galvin, Greg Gagne2018IntermediateThe 'dinosaur book' - long-standing standard OS textbook with comprehensive coverage.
The Linux Programming Interface
No Starch Press
Michael Kerrisk2010AdvancedThe definitive reference for Linux system programming. Exhaustive coverage of system calls and POSIX APIs.

Programming Languages and Compilers

Language design, implementation, and programming paradigms.

BookAuthorYearLevelDescription
Compilers: Principles, Techniques, and Tools
2nd Edition, Pearson
Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman2006AdvancedThe 'Dragon Book' - standard compilers textbook covering lexing, parsing, type checking, optimization, and code generation.
Programming Language Pragmatics
4th Edition, Morgan Kaufmann
Michael L. Scott2015Intermediate-AdvancedComprehensive treatment of programming languages and their implementation.
Types and Programming Languages
MIT Press
Benjamin C. Pierce2002AdvancedThe canonical type theory textbook. Essential for anyone interested in programming language theory or formal methods.

Software Craft and Classics

Books every professional programmer should read on the craft of programming.

BookAuthorYearLevelDescription
The Art of Computer Programming
Addison-Wesley
Donald E. Knuth1968-ongoingAdvancedKnuth's monumental multi-volume work ('TAOCP'). Not light reading but the ultimate reference on fundamental algorithms.
The Pragmatic Programmer
20th Anniversary Edition, Addison-Wesley
David Thomas, Andrew Hunt2019Beginner-IntermediateDistilled wisdom from two experienced developers on the craft of programming. Required reading for new software engineers.
Code Complete
2nd Edition, Microsoft Press
Steve McConnell2004IntermediateThe most comprehensive guide to the practice of software construction ever written.