• List of books and topics are not in any particular order (since I do not possess enough expertise to do so).
  • Latest editions should be preferred unless specifically targeting legacy systems.
  • Some ideas from these references might be found as code snippets in my personal git repository.
  • Please feel free to suggest additions. Of course I will read the book first !
  • Omitting Fiction considering its vast nature and seems best discussed in person.
  • An appendix of online learning resources can be found here.

Index of Topics

Computer Architecture
Algorithms and Data Structures
Compiler Design and Tools
C++ Language
Operating Systems
Machine Learning
Computer Graphics
File Systems
Character soup for the soul

	People management(including self)
	Business management


Computer Architecture

Computer Architecture
: A Quantitative Approach
John L. Hennessy
Computer Organization and Design:
The Hardware/Software Interface
(The Morgan Kaufmann Series in
Computer Architecture and Design)
David A. Patterson, John L. Hennessy
Computer System Architecture M. Morris Mano
Computer Organization and Architecture: Designing for Performance William Stalling
Computer Architecture and Parallel Processing Kai Hwang
ARM System Developer’s Guide: Designing and Optimizing System Software Sloss
Digital Design: With an Introduction to Verilog HDL Morris Mano
Digital Logic and Computer Design Morris Mano
Microprocessors and Interfacing Hall
Computer Systems: A Programmer’s Perspective Randal E. Bryant, David R. O’Hallaron


Algorithms and Data Structures

Algorithms + Data Structures = Programs Wirth
Data Structures and Algorithm Analysis in C (C++) Mark Allen Weiss
Algorithm Design Jon Kleinberg
The Art Of Computer Programming (All Volumes) Donald Knuth
The Algorithm Design Manual Steven S. Skiena
Programming Pearls Jon Bently
Algorithms(available online for free) S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani
Introduction to Algorithms Thomas H. Cormen and Charles E. Leiserson
Algorithms and Data Structures
The Basic Toolbox (available online for free)
Kurt Mehlhorn and Peter Sanders


Compiler Design and Tools

Compilers: Principles, Techniques and Tools Aho, Ullman, Sethi , Lam
C and C++ Compiling Milan Stevanovic
Linkers and Loaders John R Levine



Thinking in C++ (All Volumes) Bruce Eckle
The C++ Programming Language Bjarne Stoustrup
A Tour of C++ (C++ In-Depth Series) Bjarne Stoustrup
Accelerated C++: Practical Programming by Example Andrew Koenig and Barbara E. Moo
C++ Template Metaprogramming: Concepts, Tools, and Techniques
from Boost and Beyond, Portable Documents
David Abrahams and Aleksey Gurtovoy
Modern C++ Design: Generic Programming and Design Patterns Applied  Andrei Alexandrescu
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions Herb Sutter
More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions Herb Sutter
C++ Coding Standards: 101 Rules, Guidelines, and Best Practices Andrei Alexandrescu and Herb Sutter
C++ Primer Lippman,Moo
C++ Concurrency in Action Anthony Williams
C++ by Dissection Ira Pohl
Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14 Scott Meyers
Programming: Principles and Practice Using C++ Bjarne Stroustrup
The C Programming Language 2nd Edition Brian W. Kernighan , Dennis M. Ritchie
The C++ Standard Library – A Tutorial and Reference Nicolai M. Josuttis



Applied Cryptography Bruce Schneier
Cryptography and Network Security: Principles and Practice William Stalling
Network Security Essentials: Applications and Standards William Stalling
Hacker’s Delight Henry S. Warren
Hacking: The Art of Exploitation Jon Erickson
Network Security with OpenSSL Pravir Chandra, Matt Messier, John Viega
Secure Programming Cookbook Matt Messier, John Viega


Operating Systems

Operating System Concepts Silberschatz, Galvin, Gagne
Operating Systems William Stalling
Windows Internals Mark E. Russinovich and David A. Solomon
Modern Operating Systems Andrew Tannenbaum
Distributed Systems: Principles and Paradigms Andrew Tannenbaum
Distributed Operating Systems Andrew Tannenbaum
Linux Kernel Development Robert Love
Linux System Programming Robert Love
UNIX Internals : The new Frontiers Uresh Vahalia
The Design of the Unix Operating System Maurice Bach
Advanced Programming in the UNIX Environment Richard Stevens
Linux Device Drivers  Jessica Mckellar and Alessandro Rubini
Understanding the Linux Kernel Daniel Bovet, Marco Cesati
The Linux Kernel Module Programming Guide Peter Jay Salzman,Michael Burian,Ori Pomerantz



Elements of Programming Alexander A. Stepanov, Paul McJones
From Mathematics to Generic Programming Alexander A. Stepanov, Daniel E. Rose
Concrete Mathematics Graham, Knuth, Patashnik
Elementary Calculus Keisler
Introduction to Linear Algebra Gilbert Strang
Linear Algebra and its applications Gilbert Strang
Probability – Random Variables and Stochastic Processes Athanasios Papoulis and S Pillai
Probability and Statistics for Engineers and Scientists Sheldon Ross
A Course in Game Theory Martin J. Osborne, Ariel Rubinstein
Stochastic Processes Sheldon Ross
Mathematics for Computer Science Eric Lehman and Tom Leighton
Advanced Engineering Mathematics Erwin Kreyszig



Design Principles and Design Patterns Robert C Martin
Head First Design Patterns Eric Freeman and Elisabeth Robson
Thinking In Patterns With Java Bruce Eckel
Head First Object-Oriented Analysis and Design David West and Brett McLaughlin
Design Patterns Erich Gamma
Beautiful Code: Leading Programmers Explain How They Think Andy Oram, Greg Wilson, Andy Oram, Greg Wilson
Software Engineering A Practitioner’s approach Roger Pressman
The Practice of Programming Brian W. Kernighan, Rob Pike



C++ Network Programming (All Vols) Schmidt, Huston
Computer Networks Tannebaum
UNIX Network Programming (All Volumes) Stevens
TCPIP Illustrated (All Volumes) Stevens
An Engineering Approach to Computer Networking
: ATM Networks, the Internet, and the Telephone


Machine Learning

Introduction to Machine Learning Alpaydin
Deep Learning Ian Goodfellow, Yoshua Bengio, Aaron Courville (online free version available.)
Artificial Intelligence: A Modern Approach Russell
Practical Statistics for Data Scientists: 50 Essential Concepts Peter Bruce,Andrew Bruce
Pattern Recognition and Machine Learning Christopher Bishop


Computer Graphics

Computer Graphics: Principles and Practice John F. Hughes,Andries van Dam
Computer Graphics With Opengl Donald D. Hearn and M. Pauline Baker
Video Demystified: A Handbook for the Digital Engineer Keith Jack


File Systems

Practical File System Design:The Be File System Dominic Giampaolo
Operating Systems: Three Easy Pieces Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau
File Structures: An Object-Oriented Approach with C++ Michael J. Folk , Bill Zoellick , Greg Riccardi



SQL and Relational Theory: How to Write Accurate SQL Code C.J Date
Database Design and Relational Theory: Normal Forms and All That Jazz C.J Date
Fundamentals of Database System Ramez Elmasri, Shamkant Navathe


Character soup for the soul..(Unordered)

Books that make a good recommendation but not strictly technical. Covers topics of
Finance, Psychology, People management, Economics, Business management, Advertising,Evolution,Philosophy and Spirituality.


The Making of Behavioural Economics
Richard H Thaler
The Dhandho Investor:
The Low-Risk Value Method to High Returns
Mohnish Pabrai
Think and Grow Rich Napoleon Hill
One Up On Wall Street:
How To Use What You Already Know To Make Money In
Peter Lynch, John Rothchild
The Most Important Thing Illuminated:
Uncommon Sense for the Thoughtful Investor
Howard Marks, Paul Johnson, Bruce Greenwald
Security Analysis:
Sixth Edition, Foreword by Warren Buffett
Benjamin Graham
The Intelligent Investor Benjamin Graham
Fooled by Randomness:
The Hidden Role of Chance in Life and in the Markets
Nassim Taleb



The General Theory of Employment, Interest, and Money John Maynard Keynes
The Wealth of Nations (Illustrated) Adam Smith
Phishing for Phools:
The Economics of Manipulation and Deception
George A. Akerlof, Robert J. Shiller
Small Is Beautiful:
A Study of Economics as if People Mattered
E.F. Schumacher, Jonathan Porritt



Flow: The Psychology of Happiness Mihaly Csikszentmihalyi
The Design of Everyday Things: Revised and Expanded Edition Don Norman
Thinking, Fast and Slow Daniel Kahneman
Stumbling on Happiness Daniel Gilbert
Influence: The Psychology of Persuasion Robert B. Cialdini PhD
A Mind For Numbers:
How to Excel at Math and Science (Even If You Flunked Algebra)
Barbara Oakley
Predictably Irrational:
The Hidden Forces that Shape Our Decisions
Dan Ariely
Mistakes Were Made (but Not by Me):
Why We Justify Foolish Beliefs, Bad Decisions and Hurtful Acts
Carol Tavris, Elliot Aronson
Manufacturing Consent:
The Political Economy of the Mass Media
Edward S. Herman, Noam Chomsky
Never Split the Difference:
Negotiating as if Your Life Depended on It
Chris Voss, Tahl Raz


People management (including self)

High Output Management Andrew S. Grove
Only the Paranoid Survive Andrew S. Grove
How to Win Friends and Influence People Dale Carnegie
How to Read a Book Charles Van Doren, Mortimer J. Adler
Deep Work:
Rules for Focused Success in a Distracted World
Cal Newport
The Revolutionary Management System that Abolishes Hierarchy
Brian J. Robertson
The Mythical Man-Month,
Essays On Software Engineering
Frederick P. Brooks Jr.
Proven Techniques to Detect Deception
Pamela Meyer
How Will You Measure Your Life? James Allworth, Karen Dillon, Clayton Christensen
The Power of Introverts in a World That Can’t Stop Talking
Susain Cain
The Disciplined Pursuit of Less
Greg McKeown
Surely You’re Joking, Mr. Feynman!:
Adventures of a Curious Character
Richard P. Feynman, Ralph Leighton
Creativity, Inc.: Overcoming the Unseen Forces
That Stand in the Way of True Inspiration
Ed Catmull, Amy Wallace


Business management

The Origin and Evolution of New Businesses Amar V. Bhide
The Art of Profitability Adrian Slywotzky
Competitive Strategy:
Techniques for Analyzing Industries and Competitors
Michael E. Porter
Good Business:
Leadership, Flow, and the Making of Meaning
Mihaly Csikszentmihalyi
Competing Against Luck:
The Story of Innovation and Customer Choice
Clayton M. Christensen, Karen Dillon, Taddy Hall, David S. Duncan
How to Fail at Almost Everything and Still Win Big
: Kind of the Story of My Life
Scott Adams
Soft Skills: The Software Developer’s Life Manual John Z. Sonmez
ReWork: Change the Way You Work Forever David Heinemeier Hansson and Jason Fried
Different: Escaping the Competitive Herd Youngme Moon
The Innovator’s Dilemma:
When New Technologies Cause Great Firms to Fail
Clayton M. Christensen
The Hard Thing about Hard Thing:
Building a Business When There are No Easy Answers
Ben Horowitz



Scientific Advertising, Updated 2012 Claude Hopkins, Tim Bruxvoort
Ogilvy on Advertising David Ogilvy
Confessions Of An Advertising Man Ogilvy, David
The Elements Of Style William Strunk
Writing That Works, 3rd Edition:
How to Communicate Effectively in Business
Roman, Kenneth



Guns, Germs And Steel:
A Short History of Everybody for the Last 13000 Years
Jared Diamond
The Selfish Gene: 30th Anniversary edition Richard Dawkins
The Origin Of Species: 150th Anniversary Edition Charles Darwin, Julian Huxley
Sapiens: A Brief History of Humankind Yuval Noah Harari
A Brief History of Time Stephen Hawking



Vedanta Treatise: The Eternities A. Parthasarathy
Governing Business and Relationships A. Parthasarathy



Wings of Fire: An Autobiography A P J Abdul Kalam, Arun Tiwari
As a Man Thinketh James Allen
From Poverty to Power James Allen, Golgotha Press
The Three Marriages:
Reimagining Work, Self and Relationship
David Whyte
Meditations Marcus Aurelius
Being Mortal:
Medicine and What Matters in the End
Atul Gawande
God Is Not Great Christopher Hitchens
How to Stop Worrying and Start Living Dale Carnegie
The Complete Works of Kahlil Gibran:
All poems and short stories
Kahlil Gibran
When Breath Becomes Air Paul Kalanithi
Godel, Escher, Bach Douglas R. Hofstadter
A Mathematician’s Apology G.H.Hardy