Y Hacker News Books

Ask HN: What language-agnostic programming books should I read? ↗

The books people recommended

2017-06-05 · 927 points · 337 comments · 132 books named by at least one person here and at least 3 people overall. The number on the left is how many people named it in this thread.

  1. 19Working Effectively with Legacy Code

    Working Effectively with Legacy Code

    Michael Feathers

    19 here · 41 all-time · #122 overall

    Buy on Amazon4.5 out of 5, 739 ratings on Amazon
  2. 17

    The Pragmatic Programmer

    Andrew Hunt and David Thomas

    17 here · 102 all-time · #26 overall

    Buy on Amazon4.8 out of 5, 3,644 ratings on Amazon
  3. 13

    Structure and Interpretation of Computer Programs

    Harold Abelson

    13 here · 316 all-time · #2 overall

    Buy on Amazon4.7 out of 5, 742 ratings on Amazon
  4. 12

    Code

    Charles Petzold

    12 here · 147 all-time · #12 overall

    Buy on Amazon4.6 out of 5, 2,787 ratings on Amazon
  5. 12

    Code Complete

    Steve McConnell

    12 here · 108 all-time · #22 overall

    Buy on Amazon4.6 out of 5, 1,353 ratings on Amazon
  6. 11

    The Mythical Man-Month

    Frederick Brooks Jr.

    11 here · 137 all-time · #13 overall

    Buy on Amazon4.5 out of 5, 1,811 ratings on Amazon
  7. 9

    Programming Pearls

    Jon Bentley

    9 here · 35 all-time · #145 overall

    Buy on Amazon4.4 out of 5, 402 ratings on Amazon
  8. 8

    Zen and the Art of Motorcycle Maintenance

    Robert Pirsig

    8 here · 193 all-time · #5 overall

    Buy on Amazon4.4 out of 5, 13,921 ratings on Amazon
  9. 8The Psychology of Computer Programming

    The Psychology of Computer Programming

    Gerald M. Weinberg

    8 here · 16 all-time · #410 overall

    Buy on Amazon4.0 out of 5, 140 ratings on Amazon
  10. 7

    Compilers: Principles, Techniques, and Tools

    Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman

    7 here · 25 all-time · #240 overall

    Buy on Amazon4.4 out of 5, 156 ratings on Amazon
  11. 7The Art of Unix Programming

    The Art of Unix Programming

    Eric S. Raymond

    7 here · 17 all-time · #379 overall

    Buy on Amazon4.5 out of 5, 106 ratings on Amazon
  12. 6

    The Art of Computer Programming

    Donald Knuth

    6 here · 127 all-time · #14 overall

    Buy on Amazon4.5 out of 5, 203 ratings on Amazon
  13. 6

    Introduction to Algorithms

    Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

    6 here · 71 all-time · #47 overall

  14. 5

    Clean Code

    Robert C. Martin

    5 here · 47 all-time · #91 overall

    Buy on Amazon4.7 out of 5, 6,810 ratings on Amazon
  15. 5Coders at Work

    Coders at Work

    Peter Seibel

    5 here · 27 all-time · #213 overall

    Buy on Amazon4.5 out of 5, 330 ratings on Amazon
  16. 5The Effective Engineer

    The Effective Engineer

    Edmond Lau

    5 here · 17 all-time · #381 overall

    Buy on Amazon4.6 out of 5, 164 ratings on Amazon
  17. 5The Practice of Programming

    The Practice of Programming

    Brian Kernighan, Rob Pike

    5 here · 16 all-time · #398 overall

    Buy on Amazon4.6 out of 5, 176 ratings on Amazon
  18. 5Head First Design Patterns

    Head First Design Patterns

    Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra

    5 here · 16 all-time · #399 overall

    Buy on Amazon4.6 out of 5, 1,951 ratings on Amazon
  19. 5Types and Programming Languages

    Types and Programming Languages

    Benjamin C. Pierce

    5 here · 15 all-time · #422 overall

    Buy on Amazon4.8 out of 5, 98 ratings on Amazon
  20. 5Thinking Forth

    Thinking Forth

    Leo Brodie

    5 here · 15 all-time · #430 overall

    Buy on Amazon4.8 out of 5, 35 ratings on Amazon
  21. 4

    Peopleware

    Tom DeMarco

    4 here · 62 all-time · #59 overall

    Buy on Amazon4.5 out of 5, 1,189 ratings on Amazon
  22. 4

    The Elements of Style

    William Strunk Jr.

    4 here · 38 all-time · #129 overall

    Buy on Amazon4.7 out of 5, 7,297 ratings on Amazon
  23. 4

    Refactoring

    Martin Fowler

    4 here · 37 all-time · #132 overall

    Buy on Amazon4.7 out of 5, 1,228 ratings on Amazon
  24. 4Advanced Programming in the UNIX Environment

    Advanced Programming in the UNIX Environment

    W. Richard Stevens

    4 here · 14 all-time · #465 overall

    Buy on Amazon4.7 out of 5, 266 ratings on Amazon
  25. 4Software Tools

    Software Tools

    Kernighan and Plauger

    4 here · 12 all-time · #542 overall

    Buy on Amazon4.7 out of 5, 29 ratings on Amazon
  26. 4Let Over Lambda

    Let Over Lambda

    Doug Hoyte

    4 here · 11 all-time · #592 overall

    Buy on Amazon4.5 out of 5, 68 ratings on Amazon
  27. 4How to Make Friends and Influence People

    How to Make Friends and Influence People

    Dale Carnegie

    4 here · 9 all-time · #768 overall

  28. 3

    Design Patterns

    Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

    3 here · 80 all-time · #42 overall

    Buy on Amazon4.3 out of 5, 27 ratings on Amazon
  29. 3Computer Systems: A Programmer's Perspective

    Computer Systems: A Programmer's Perspective

    Randal E. Bryant; David R. O'Hallaron

    3 here · 26 all-time · #220 overall

    Buy on Amazon4.2 out of 5, 682 ratings on Amazon
  30. 3

    Domain Driven Design

    Eric Evans

    3 here · 21 all-time · #289 overall

    Buy on Amazon4.6 out of 5, 1,578 ratings on Amazon
  31. 3A Pattern Language

    A Pattern Language

    Christopher Alexander

    3 here · 19 all-time · #331 overall

    Buy on Amazon4.7 out of 5, 1,073 ratings on Amazon
  32. 3Concepts, Techniques, and Models of Computer Programming

    Concepts, Techniques, and Models of Computer Programming

    Peter Van Roy and Seif Haridi

    3 here · 16 all-time · #409 overall

    Buy on Amazon4.2 out of 5, 37 ratings on Amazon
  33. 3Engineering a Compiler

    Engineering a Compiler

    Cooper & Torczon

    3 here · 10 all-time · #687 overall

  34. 3Transaction Processing: Concepts and Techniques

    Transaction Processing: Concepts and Techniques

    Gray and Reuter

    3 here · 6 all-time · #1170 overall

  35. 3Clean Coder

    Clean Coder

    Robert C. Martin

    3 here · 6 all-time · #1178 overall

  36. 3Applied Cryptography

    Applied Cryptography

    Schneier

    3 here · 5 all-time · #1477 overall

  37. 3Implementing Domain Driven Design

    Implementing Domain Driven Design

    Vaughn Vernon

    3 here · 5 all-time · #1494 overall

  38. 2

    Gödel, Escher, Bach

    Douglas Hofstadter

    2 here · 347 all-time · #1 overall

    Buy on Amazon4.7 out of 5, 2,713 ratings on Amazon
  39. 2The Elements of Computing Systems

    The Elements of Computing Systems

    Nisan and Schocken

    2 here · 58 all-time · #65 overall

    Buy on Amazon4.7 out of 5, 416 ratings on Amazon
  40. 2

    Founders at Work

    Jessica Livingston

    2 here · 51 all-time · #80 overall

    Buy on Amazon4.4 out of 5, 689 ratings on Amazon
  41. 2

    The Little Schemer

    Daniel P. Friedman, Matthias Felleisen

    2 here · 51 all-time · #81 overall

    Buy on Amazon4.6 out of 5, 185 ratings on Amazon
  42. 2

    Algorithms

    Robert Sedgewick

    2 here · 49 all-time · #89 overall

    Buy on Amazon4.6 out of 5, 876 ratings on Amazon
  43. 2The Cuckoo's Egg

    The Cuckoo's Egg

    Clifford Stoll

    2 here · 39 all-time · #124 overall

    Buy on Amazon4.6 out of 5, 3,286 ratings on Amazon
  44. 2Operating Systems: Three Easy Pieces

    Operating Systems: Three Easy Pieces

    Tanenbaum

    2 here · 22 all-time · #279 overall

    Buy on Amazon4.5 out of 5, 721 ratings on Amazon
  45. 2Effective Java

    Effective Java

    Joshua Bloch

    2 here · 21 all-time · #293 overall

    Buy on Amazon4.7 out of 5, 1,623 ratings on Amazon
  46. 2

    An Introduction to General Systems Thinking

    Gerald M. Weinberg

    2 here · 19 all-time · #336 overall

    Buy on Amazon4.0 out of 5, 155 ratings on Amazon
  47. 2Patterns of Enterprise Application Architecture

    Patterns of Enterprise Application Architecture

    Martin Fowler

    2 here · 15 all-time · #417 overall

    Buy on Amazon4.5 out of 5, 890 ratings on Amazon
  48. 2Joy of Clojure

    Joy of Clojure

    Michael Fogus

    2 here · 13 all-time · #493 overall

    Buy on Amazon4.8 out of 5, 44 ratings on Amazon
  49. 2Practical Object-Oriented Design in Ruby

    Practical Object-Oriented Design in Ruby

    Sandi Metz

    2 here · 12 all-time · #537 overall

    Buy on Amazon4.8 out of 5, 521 ratings on Amazon
  50. 2The Linux Programming Interface

    The Linux Programming Interface

    Michael Kerrisk

    2 here · 10 all-time · #639 overall

  51. 2Elements of Programming

    Elements of Programming

    Alexander Stepanov, Paul McJones

    2 here · 9 all-time · #742 overall

  52. 2The Design of Design

    The Design of Design

    Frederick P. Brooks

    2 here · 9 all-time · #754 overall

  53. 2Cracking the Coding Interview

    Cracking the Coding Interview

    Gayle Laakmann McDowell

    2 here · 9 all-time · #764 overall

  54. 2The Reasoned Schemer

    The Reasoned Schemer

    Daniel P. Friedman, William E. Byrd, Oleg Kiselyov

    2 here · 6 all-time · #1117 overall

  55. 2Test-Driven Development by Example

    Test-Driven Development by Example

    Kent Beck

    2 here · 6 all-time · #1180 overall

  56. 2The Art of Unit Testing

    The Art of Unit Testing

    Roy Osherove

    2 here · 5 all-time · #1478 overall

  57. 2Software Tools in Pascal

    Software Tools in Pascal

    2 here · 4 all-time · #1756 overall

  58. 2Algorithmics

    Algorithmics

    David Harel

    2 here · 4 all-time · #1757 overall

  59. 2SQL Performance Explained

    SQL Performance Explained

    Markus Winand

    2 here · 4 all-time · #1820 overall

  60. 2Dependency Injection in .NET

    Dependency Injection in .NET

    Mark Seemann

    2 here · 4 all-time · #1912 overall

  61. 1

    Thinking, Fast and Slow

    Daniel Kahneman

    1 here · 178 all-time · #6 overall

    Buy on Amazon4.6 out of 5, 48,679 ratings on Amazon
  62. 1

    How to Win Friends and Influence People

    Dale Carnegie

    1 here · 175 all-time · #8 overall

    Buy on Amazon4.7 out of 5, 106,505 ratings on Amazon
  63. 1

    Designing Data-Intensive Applications

    Martin Kleppmann

    1 here · 104 all-time · #24 overall

    Buy on Amazon4.8 out of 5, 5,595 ratings on Amazon
  64. 1

    The Phoenix Project

    Gene Kim, Kevin Behr, George Spafford

    1 here · 67 all-time · #56 overall

    Buy on Amazon4.6 out of 5, 14,975 ratings on Amazon
  65. 1

    The Lean Startup

    Eric Ries

    1 here · 56 all-time · #68 overall

    Buy on Amazon4.5 out of 5, 17,985 ratings on Amazon
  66. 1

    Moby Dick

    Herman Melville

    1 here · 51 all-time · #82 overall

    Buy on Amazon4.3 out of 5, 16,756 ratings on Amazon
  67. 1

    Influence

    Robert Cialdini

    1 here · 50 all-time · #84 overall

    Buy on Amazon4.5 out of 5, 13,065 ratings on Amazon
  68. 1

    Concrete Mathematics

    Donald Knuth

    1 here · 46 all-time · #98 overall

    Buy on Amazon4.5 out of 5, 2 ratings on Amazon
  69. 1

    The Algorithm Design Manual

    Steven S. Skiena

    1 here · 43 all-time · #111 overall

    Buy on Amazon4.4 out of 5, 597 ratings on Amazon
  70. 1

    How to Solve It

    George Polya

    1 here · 42 all-time · #115 overall

    Buy on Amazon4.5 out of 5, 1,615 ratings on Amazon
  71. 1

    A Deepness in the Sky

    Vernor Vinge

    1 here · 41 all-time · #121 overall

    Buy on Amazon4.6 out of 5, 3,418 ratings on Amazon
  72. 1

    Hackers and Painters

    Paul Graham

    1 here · 36 all-time · #139 overall

    Buy on Amazon4.5 out of 5, 765 ratings on Amazon
  73. 1

    Crafting Interpreters

    Robert Nystrom

    1 here · 32 all-time · #175 overall

    Buy on Amazon4.8 out of 5, 734 ratings on Amazon
  74. 1Artificial Intelligence: A Modern Approach

    Artificial Intelligence: A Modern Approach

    Stuart Russell and Peter Norvig

    1 here · 29 all-time · #195 overall

    Buy on Amazon4.3 out of 5, 664 ratings on Amazon
  75. 1The Code Book

    The Code Book

    Simon Singh

    1 here · 28 all-time · #204 overall

    Buy on Amazon4.6 out of 5, 2,217 ratings on Amazon
  76. 1The Annotated Turing

    The Annotated Turing

    Charles Petzold

    1 here · 25 all-time · #235 overall

    Buy on Amazon4.6 out of 5, 399 ratings on Amazon
  77. 1

    How to Design Programs

    Matthias Felleisen

    1 here · 21 all-time · #299 overall

    Buy on Amazon4.4 out of 5, 97 ratings on Amazon
  78. 1Are Your Lights On?

    Are Your Lights On?

    Donald C. Gause

    1 here · 15 all-time · #421 overall

    Buy on Amazon4.0 out of 5, 264 ratings on Amazon
  79. 1Drive

    Drive

    Daniel Pink

    1 here · 13 all-time · #492 overall

    Buy on Amazon4.5 out of 5, 9,418 ratings on Amazon
  80. 1Game Programming Patterns

    Game Programming Patterns

    Robert Nystrom

    1 here · 11 all-time · #577 overall

    Buy on Amazon4.7 out of 5, 1,556 ratings on Amazon
  81. 1Algorithm Design

    Algorithm Design

    Kleinberg, Tardos

    1 here · 11 all-time · #601 overall

    Buy on Amazon4.3 out of 5, 426 ratings on Amazon
  82. 1Test Driven Development

    Test Driven Development

    Kent Beck

    1 here · 11 all-time · #615 overall

    Buy on Amazon4.5 out of 5, 539 ratings on Amazon
  83. 1Purely Functional Data Structures

    Purely Functional Data Structures

    Chris Okasaki

    1 here · 10 all-time · #625 overall

    Buy on Amazon4.5 out of 5, 101 ratings on Amazon
  84. 1The Unix Programming Environment

    The Unix Programming Environment

    Kernighan and Pike

    1 here · 10 all-time · #634 overall

  85. 1The Art of the Metaobject Protocol

    The Art of the Metaobject Protocol

    Gregor Kiczales

    1 here · 10 all-time · #684 overall

  86. 1Unix Network Programming

    Unix Network Programming

    W. Richard Stevens

    1 here · 9 all-time · #696 overall

  87. 1The Elements of Programming Style

    The Elements of Programming Style

    Brian Kernighan and P. J. Plauger

    1 here · 9 all-time · #697 overall

  88. 1The Passionate Programmer

    The Passionate Programmer

    Chad Fowler

    1 here · 9 all-time · #717 overall

  89. 1Continuous Delivery

    Continuous Delivery

    Jez Humble

    1 here · 8 all-time · #790 overall

  90. 1A Discipline of Programming

    A Discipline of Programming

    Edsger Dijkstra

    1 here · 8 all-time · #805 overall

    Buy on Amazon4.7 out of 5, 27 ratings on Amazon
  91. 1Systemantics

    Systemantics

    John Gall

    1 here · 8 all-time · #831 overall

  92. 1Theory of Computation

    Theory of Computation

    Michael Sipser

    1 here · 7 all-time · #924 overall

  93. 1The New Turing Omnibus

    The New Turing Omnibus

    A. K. Dewdney

    1 here · 7 all-time · #942 overall

  94. 1The Cathedral and the Bazaar

    The Cathedral and the Bazaar

    Eric S. Raymond

    1 here · 7 all-time · #949 overall

  95. 1The New Testament

    The New Testament

    NT Wright

    1 here · 7 all-time · #965 overall

  96. 1Death March

    Death March

    Edward Yourdon

    1 here · 7 all-time · #1043 overall

  97. 1Software Foundations

    Software Foundations

    Robert Harper

    1 here · 6 all-time · #1062 overall

  98. 1Growing Object-Oriented Software Guided by Tests

    Growing Object-Oriented Software Guided by Tests

    Steve Freeman and Nat Pryce

    1 here · 6 all-time · #1070 overall

  99. 1Modern Compiler Implementation in ML

    Modern Compiler Implementation in ML

    Andrew Appel

    1 here · 6 all-time · #1166 overall

  100. 1JavaScript Allonge

    JavaScript Allonge

    Reg Braithwaite

    1 here · 6 all-time · #1175 overall

  101. 1Apprenticeship Patterns

    Apprenticeship Patterns

    Dave Hoover , Adewale Oshineye

    1 here · 6 all-time · #1176 overall

  102. 1Cryptography Engineering

    Cryptography Engineering

    Niels Ferguson and Bruce Schneier

    1 here · 6 all-time · #1218 overall

  103. 1Code Complete 2

    Code Complete 2

    Steve McConnell

    1 here · 5 all-time · #1240 overall

  104. 1How Buildings Learn

    How Buildings Learn

    Stewart Brand

    1 here · 5 all-time · #1272 overall

  105. 1The Architecture of Open Source Applications

    The Architecture of Open Source Applications

    1 here · 5 all-time · #1296 overall

  106. 1Facts and Fallacies of Software Engineering

    Facts and Fallacies of Software Engineering

    Robert L. Glass

    1 here · 5 all-time · #1357 overall

  107. 1Starting Forth

    Starting Forth

    Leo Brodie

    1 here · 5 all-time · #1364 overall

  108. 1The Pattern on the Stone

    The Pattern on the Stone

    Daniel Hillis

    1 here · 4 all-time · #1536 overall

  109. 1The Art of Readable Code

    The Art of Readable Code

    Dustin Boswell & Trevor Foucher

    1 here · 4 all-time · #1541 overall

  110. 1Programming in the 1990s

    Programming in the 1990s

    Edward Cohen

    1 here · 4 all-time · #1576 overall

  111. 1Code Reading

    Code Reading

    Diomidis Spinellis

    1 here · 4 all-time · #1587 overall

  112. 1Making Software

    Making Software

    Oram and Wilson

    1 here · 4 all-time · #1589 overall

  113. 1A Retargetable C Compiler: Design and Implementation

    A Retargetable C Compiler: Design and Implementation

    David R. Hanson

    1 here · 4 all-time · #1606 overall

  114. 1The Seasoned Schemer

    The Seasoned Schemer

    William F. Clocksin

    1 here · 4 all-time · #1609 overall

  115. 1Object Oriented Software Construction

    Object Oriented Software Construction

    Bertrand Meyer

    1 here · 4 all-time · #1617 overall

  116. 1Out of the Tar Pit

    Out of the Tar Pit

    Moseley and Marks

    1 here · 4 all-time · #1758 overall

  117. 1From Mathematics to Generic Programming

    From Mathematics to Generic Programming

    Alexander Stepanov and Daniel E. Rose

    1 here · 4 all-time · #1801 overall

  118. 1Language Implementation Patterns

    Language Implementation Patterns

    Terence Parr

    1 here · 4 all-time · #1861 overall

  119. 1Enterprise Integration Patterns

    Enterprise Integration Patterns

    Gregor Hohpe, Bobby Woolf

    1 here · 3 all-time · #1960 overall

  120. 1Dynamics of Software Development

    Dynamics of Software Development

    McCarthy

    1 here · 3 all-time · #1969 overall

  121. 1Beautiful Code

    Beautiful Code

    Greg Wilson, Andy Oram

    1 here · 3 all-time · #1998 overall

  122. 1Essentials of Programming Languages

    Essentials of Programming Languages

    Daniel Friedman and Mitchell Wand

    1 here · 3 all-time · #2031 overall

  123. 1Think Stats

    Think Stats

    1 here · 3 all-time · #2100 overall

  124. 1Intuitive Biostatistics

    Intuitive Biostatistics

    Motulsky

    1 here · 3 all-time · #2155 overall

  125. 1The Cartoon Guide to Statistics

    The Cartoon Guide to Statistics

    Gonick and Smith

    1 here · 3 all-time · #2156 overall

  126. 1The Garbage Collection Handbook

    The Garbage Collection Handbook

    Richard Jones, Antony Hosking, Eliot Moss

    1 here · 3 all-time · #2178 overall

  127. 1Building Microservices

    Building Microservices

    Newman

    1 here · 3 all-time · #2350 overall

  128. 1Programmers at Work

    Programmers at Work

    Lammers, Susan

    1 here · 3 all-time · #2353 overall

  129. 1Release It!

    Release It!

    Michael T. Nygard

    1 here · 3 all-time · #2373 overall

  130. 1A Fortran Coloring Book

    A Fortran Coloring Book

    1 here · 3 all-time · #2439 overall

  131. 1Discovering Statistics Using R

    Discovering Statistics Using R

    Field/Miles/Field

    1 here · 3 all-time · #2474 overall

  132. 1500 lines or less

    500 lines or less

    1 here · 3 all-time · #2475 overall