This is a collection of popular, highly recommended, highly influential academic and practical computer science books. Some of these books are outdated but still conceptually relevant. Suggestions are always welcome via E-mail.
[Title - Author]
- Algorithms - Sedgewick
- Introduction to Algorithms - Stein
- Artificial Intelligence A Modern Approach - Russell
- Introduction to Information Retrieval - Manning
- Compilers: Principles, Techniques, and Tools - Aho
- Computer Architecture: A Quantitative Approach - Hennessy and Patterson
- Computer Organization And Design - Patterson
- Digital Design - Mano
- Fundamentals of Computer Graphics - Marschner
- OpenGL Programming Guide - Kessenich
- Computer Networking: A Top Down Approach - Kurose and Ross
- TCP IP Illustrated Volume 1: The Protocols - Stevens
- TCP IP Illustrated Volume 2: The Implementation - Stevens
- TCP IP Illustrated Volume 3: TCP for Transactions HTTP NNTP and the UNIX Domain Protocols - Stevens
- TCP IP Network Administration - Craig Hunt
- Concrete Mathematics: A Foundation for Computer Science - Graham
- Discrete Mathematics Applications - Rosen
- Introduction to Theory of Computation - Sipser
- Godel's Proof - Nagel
- Hacker's Delight - Warren
- Hacking: The Art of Exploitation - Erickson
- Security Engineering - Anderson
- The Art of Deception - Kevin Mitnick
- The Art of Intrusion - Kevin Mitnick
- The Art of Invisibility - Kevin Mitnick
- The Craft of System Security - Smith
- IDA Pro Book - Chris Eagle
- Malware Analyst's Cookbook - Ligh
- Practical Malware Analysis - Sikorski
- Applied Cryptography - Bruce Schneier
- Foundations of Cryptography Volume 1 - Goldreich
- Foundations of Cryptography Volume 2 - Goldreich
- Introduction to Cryptography with Coding Theory - Trappe
- Introduction to Modern Cryptography - Katz
- Database Management Systems - Ramakrishnan
- Embedded Linux Primer: A Practical Real World Approach - Hallinan
- Modern Operating Systems - Tanenbaum
- Operating System Concepts - Silberschatz
- Operating Systems: Principles and Design - Anderson
- Operating Systems: Three Easy Pieces - Arpaci
- Operating Systems Design and Implementation - Tanenbaum
- An Introduction to Parallel Programming - Pacheco
- Distributed Computing Fundamentals Simulations and Advanced Topics - Attiya
- C: A Reference Manual - Steele
- Code: The Hidden Language of Computer Hardware and Software - Charles Petzold
- Code Complete A Practical Handbook of Software Construction - McConnell
- Coders at Work Reflections on the Craft of Programming - Seibel
- Cracking the Coding Interview - McDowell
- Programming Interviews Exposed Coding Your Way Through the Interview - Mongan
- Structure and Interpretation of Computer Programs - Abelson
- The Art of Programming Volume 1 - Knuth
- The Art of Programming Volume 2 - Knuth
- The Art of Programming Volume 3 - Knuth
- The Art of Programming Volume 4A - Knuth
- The C Programming Language - K & R
- The C Standard Library: A Tutorial and Reference - Josuttis
- The C++ Programming Language - Stroustrup
- The Pragmatic Programmer - Hunt
- Advanced Programming in the UNIX Environment - Stevens
- The Art of UNIX Programming - Eric S. Raymond
- The Unix Programming Environment - Kernighan
- Linux Device Drivers - Corbet, Alessandro
- Linux In A Nutshell - Siever
- Linux Kernel Development - Robert Love
- Linux Pocket Guide - Barrett
- Linux System Programming - Robert Love
- Professional Linux Kernel Architecture - Mauerer
- Understanding Linux Network Internals - Benvenuti
- Understanding the Linux Kernel - Cesati
- Design Patterns Elements of Reusable Object Oriented Software - Gang of Four
- Essentials of Software Engineering - Tsui
- Mythical Man Month: Essays on Software Engineering - Brooks
- The Cathedral and The Bazaar - Eric S. Raymond
- Godel, Escher, Bach - Hofstadter
- I Am A Strange Loop - Hofstadter