Skip to content

Latest commit

 

History

History
123 lines (115 loc) · 4.72 KB

books.md

File metadata and controls

123 lines (115 loc) · 4.72 KB

Books for programmers

Just a bunch of books listed from this famous thread on StackOverflow, categorized for convenience.

TODO

  • Provide hyperlinks
  • Fetch and mantion ISBNs
  • Generate and add cover image

Algorithms

  • The Art of Computer Programming by Donald Knuth
  • Introduction to Algorithms by Cormen, Leiserson, Rivest & Stein
  • Computer Graphics: Principles and Practice in C (2nd Edition)
  • The Elements of Computing Systems

Meta

  • Gödel, Escher, Bach by Douglas Hofstadter
  • Surely You're Joking, Mr. Feynman!
  • Computability by N. J. Cutland
  • Structure and Interpretation of Computer Programs
  • Zen and the Art of Motorcycle Maintenance by Robert M. Pirsig
  • The Annotated Turing
  • Things That Make Us Smart by Donald Norman
  • Alice in Wonderland by Lewis Carol
  • How To Solve It by George Polya
  • The Alchemist by Paulo Coelho
  • The Tao Te Ching

Code(language agnostic)

  • Code Complete (2nd edition) by Steve McConnell
  • Refactoring: Improving the Design of Existing Code
  • Compilers: Principles, Techniques and Tools by Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman
  • CODE by Charles Petzold
  • Test-Driven Development: By Example by Kent Beck
  • The Practice of Programming by Kernighan and Pike
  • Writing Solid Code by Steve Maguire
  • Advanced Programming in the UNIX Environment by W. Richard Stevens
  • Introduction to Functional Programming by Philip Wadler and Richard Bird

Code(language specific)

  • The C Programming Language by Kernighan and Ritchie
  • Effective C++
  • More Effective C++
  • Effective Java 2nd edition
  • Why's (Poignant) Guide to Ruby
  • The Art of Unix Programming
  • Modern C++ Design by Andrei Alexandrescu
  • JavaScript - The Good Parts
  • Thinking in Java by Bruce Eckel
  • The C++ Programming Language (3rd edition) by Stroustrup
  • Design Patterns in C# by Steve Metsker
  • CLR via C# by Jeffrey Richter
  • Effective Java by Joshua Bloch
  • Agile Principles, Patterns, and Practices in C# by Robert C. Martin
  • JUnit in Action
  • Smalltalk-80: The Language and its Implementation
  • Pragmatic Unit Testing in C# with NUnit by Andy Hunt and Dave Thomas with Matt Hargett
  • Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp

Design, architecture and modeling

  • Design Patterns by the Gang of Four
  • Object-Oriented Analysis and Design with Applications by Grady Booch
  • Working Effectively with Legacy Code by Michael C. Feathers
  • Patterns of Enterprise Application Architecture by Martin Fowler
  • Domain Driven Designs by Eric Evans
  • Software Estimation: Demystifying the Black Art by Steve McConnel
  • Algorithms + Data Structures = Programs
  • Foundations of Programming by Karl Seguin
  • Modern Operating Systems by Andrew S. Tanenbaum
  • Object Thinking by Dr. David West
  • Refactoring to Patterns by Joshua Kerievsky
  • Rework by Jason Freid and DHH
  • Philip and Alex's Guide to Web Publishing
  • Patterns of Enterprise Application Architecture
  • Framework Design Guidelines by Brad Abrams
  • Growing Object-Oriented Software, Guided by Tests
  • About Face - The Essentials of Interaction Design

Philosophy and Culture

  • The Mythical Man Month
  • The Pragmatic Programmer
  • The Passionate Programmer (My Job Went To India) by Chad Fowler
  • The Productive Programmer
  • Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
  • Programming Pearls by Jon Bentley
  • Peopleware by Demarco and Lister
  • Coders at Work by Peter Seibel
  • The Tao of Programming
  • The Little Schemer
  • The Seasoned Schemer
  • The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity
  • Practices of an Agile Developer
  • Don't Make Me Think
  • Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin
  • The Design of Everyday Things by Donald Norman
  • Best Software Writing I by Joel Spolsky
  • Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt
  • Getting Real by 37 Signals
  • The Timeless Way of Building by Christopher Alexander
  • Hackers: Heroes of the Computer Revolution
  • Masterminds of Programming
  • The Career Programmer: Guerilla Tactics for an Imperfect World by Christopher Duncan
  • The Deadline: A Novel About Project Management by Tom DeMarco
  • Computer Systems - A Programmer's Perspective
  • No Bugs! by David Thielen
  • Here Comes Everybody: The Power of Organizing Without Organizations by Clay Shirky
  • Computational Beauty of Nature
  • The Soul of a New Machine by Tracy Kidder
  • Masters of Doom
  • Hackers and Painters: Big Ideas from the Computer Age

Software security

  • The Art of Deception by Kevin Mitnick
  • Writing Secure Code (2nd Edition) by Michael Howard