The MUST read books for every Computer Geek
If you're crazy about Computer Technology...
Are you a Computer Enthusiast? You want to find out how they actually work? Are you interested in the real deal? Not just clicking stuff here and there, visiting search engines and social networking websites, you want to actually learn about the complex algorithms and programmings behind the pretty stuff? You're a Computer Science/Information Technology Major? Then you NEED to read these books, as they will quench your thirst for computer-related knowledge like no other.
It has been tried here to bring the list down to 10. You should realize there are of-course many more awesome books out there and it's not possible to list them all. But the ones mentioned here are definitely worth your time (These are not in any order/rank).
1. Computer Networks - Andrew S. Tanenbaum
Covers almost every aspect of networking in detail. It progresses in a very systematic manner to unfold all the concepts related to the 7 layers of the OSI and much more.
2. Operating System Concepts - Silberschatz, Galvin
A great book on concurrency, synchronization, deadlock, Processes, threads and Inter-process communication, CPU scheduling, Memory management, File systems etc in an OS.
3. Principles of Compiler Design - Aho , Ullman, Lam, Sethi
Beautifully written book on a complex subject of compilers. If you have trouble understanding Parsing, Code Optimization, Code Generation and all, I will definitely suggest you this book.
4. Digital Logic and Computer Design
Logic functions, Minimization, Design and synthesis of Combinational and Sequential circuits, all explained in this book.
5. Introduction to Algorithms, Third Edition - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein
Introduction to Algorithms used in various kinds of languages. Good if you want to 'think' computer.
6. Code Complete 2: A Practical Handbook of Software Construction - Steve McConnell
The book’s focus is on writing better code. McConnell addresses a wide
variety of topics including managing complexity, re-factoring, coding
style, and writing good comments. A must read for every programmer who is serious about writing some good code.
7. Introduction to Languages and the Theory of Computation - John C Martin
This book is an introduction for undergraduates to the theory of computation. It emphasizes formal languages,automata and abstract models of computation,and computability. It also includes an introduction to computational complexity and NP-completeness.
8. The Mythical Man Month - Frederick P. Brooks
This book is an All Time Classic. First published in 1975. Technology has changed a lot since then, but the human aspect of the software industry still is the same. It describes many commonly occurring problems in large and mid-scale development projects and breaks them down.
9. Hacking Exposed: 5th Edition - Stuart McClure, Joel Scambray, George Kurtz
Having sold millions of copies throughout the world, the book is the number one best-selling computer security book. It's for those of you who want to delve deep into the 'Hacking and Security' aspect of computers.
10. The Little Black Book of Computer Viruses - Mark Lugwig
Ok, Ok, It's not a MUST read for EVERY computer geek. It goes very deep in a very specific topic of computer viruses. But I assure you this book is worth reading. I tried to read this during my 10th grade with a little experience of programming, I couldn't understand much of the assembly language. But the book fascinated me. I picked it up again after 4 years (when I was in a position to understand it better) and loved it. Mark Ludwig takes you into a deep dirty world of computer viruses. If you're a virii coder you've got to read this.
I hope you'll try some of these books. I know I've left many good books but can't include everything in a 10 book list. I would greatly appreciate comments on:
1. Any book you'd like to add
2. Positive/Negative feedback about this page/topic