Y Hacker News Books

Ask HN: What books had the greatest effect on how you structure your code? ↗

The books people recommended

2017-07-24 · 332 points · 158 comments · 47 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. 6

    Design Patterns

    Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

    6 here · 80 all-time · #42 overall

    Buy on Amazon4.3 out of 5, 27 ratings on Amazon
  2. 4

    Refactoring

    Martin Fowler

    4 here · 37 all-time · #132 overall

    Buy on Amazon4.7 out of 5, 1,228 ratings on Amazon
  3. 3

    Structure and Interpretation of Computer Programs

    Harold Abelson

    3 here · 316 all-time · #2 overall

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

    Code Complete

    Steve McConnell

    3 here · 108 all-time · #22 overall

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

    The Pragmatic Programmer

    Andrew Hunt and David Thomas

    3 here · 102 all-time · #26 overall

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

    Clean Code

    Robert C. Martin

    3 here · 47 all-time · #91 overall

    Buy on Amazon4.7 out of 5, 6,810 ratings on Amazon
  7. 3Working Effectively with Legacy Code

    Working Effectively with Legacy Code

    Michael Feathers

    3 here · 41 all-time · #122 overall

    Buy on Amazon4.5 out of 5, 739 ratings on Amazon
  8. 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
  9. 3Practical Object-Oriented Design in Ruby

    Practical Object-Oriented Design in Ruby

    Sandi Metz

    3 here · 12 all-time · #537 overall

    Buy on Amazon4.8 out of 5, 521 ratings on Amazon
  10. 3The Design of Design

    The Design of Design

    Frederick P. Brooks

    3 here · 9 all-time · #754 overall

  11. 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
  12. 2

    The C Programming Language

    Brian Kernighan, Dennis Ritchie

    2 here · 124 all-time · #15 overall

    Buy on Amazon4.7 out of 5, 182 ratings on Amazon
  13. 2

    How to Design Programs

    Matthias Felleisen

    2 here · 21 all-time · #299 overall

    Buy on Amazon4.4 out of 5, 97 ratings on Amazon
  14. 2Head First Design Patterns

    Head First Design Patterns

    Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra

    2 here · 16 all-time · #399 overall

    Buy on Amazon4.6 out of 5, 1,951 ratings on Amazon
  15. 2Thinking Forth

    Thinking Forth

    Leo Brodie

    2 here · 15 all-time · #430 overall

    Buy on Amazon4.8 out of 5, 35 ratings on Amazon
  16. 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
  17. 2Smalltalk Best Practice Patterns

    Smalltalk Best Practice Patterns

    Kent Beck

    2 here · 5 all-time · #1406 overall

  18. 2Framework Design Guidelines

    Framework Design Guidelines

    Cwalina, Barton, and Abrams

    2 here · 4 all-time · #1754 overall

  19. 2Dependency Injection in .NET

    Dependency Injection in .NET

    Mark Seemann

    2 here · 4 all-time · #1912 overall

  20. 2Javascript, the Good Parts

    Javascript, the Good Parts

    Douglas Crockford

    2 here · 3 all-time · #2454 overall

  21. 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
  22. 1

    The Mythical Man-Month

    Frederick Brooks Jr.

    1 here · 137 all-time · #13 overall

    Buy on Amazon4.5 out of 5, 1,811 ratings on Amazon
  23. 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
  24. 1

    The Fountainhead

    Ayn Rand

    1 here · 90 all-time · #36 overall

    Buy on Amazon4.6 out of 5, 12,667 ratings on Amazon
  25. 1

    The Life-Changing Magic of Tidying Up

    Marie Kondo

    1 here · 33 all-time · #171 overall

    Buy on Amazon4.3 out of 5, 45 ratings on Amazon
  26. 1The Art of Unix Programming

    The Art of Unix Programming

    Eric S. Raymond

    1 here · 17 all-time · #379 overall

    Buy on Amazon4.5 out of 5, 106 ratings on Amazon
  27. 1The Effective Engineer

    The Effective Engineer

    Edmond Lau

    1 here · 17 all-time · #381 overall

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

    The Practice of Programming

    Brian Kernighan, Rob Pike

    1 here · 16 all-time · #398 overall

    Buy on Amazon4.6 out of 5, 176 ratings on Amazon
  29. 1Practical Common Lisp

    Practical Common Lisp

    Peter Seibel

    1 here · 16 all-time · #400 overall

    Buy on Amazon4.6 out of 5, 120 ratings on Amazon
  30. 1Patterns of Enterprise Application Architecture

    Patterns of Enterprise Application Architecture

    Martin Fowler

    1 here · 15 all-time · #417 overall

    Buy on Amazon4.5 out of 5, 890 ratings on Amazon
  31. 1Effective C++

    Effective C++

    Scott Meyers

    1 here · 15 all-time · #437 overall

    Buy on Amazon4.6 out of 5, 1,177 ratings on Amazon
  32. 1Software Tools

    Software Tools

    Kernighan and Plauger

    1 here · 12 all-time · #542 overall

    Buy on Amazon4.7 out of 5, 29 ratings on Amazon
  33. 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
  34. 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
  35. 1Real World Haskell

    Real World Haskell

    Paul Chiusano, Jonathan Lam

    1 here · 10 all-time · #640 overall

  36. 1The Art of the Metaobject Protocol

    The Art of the Metaobject Protocol

    Gregor Kiczales

    1 here · 10 all-time · #684 overall

  37. 1Writing Efficient Programs

    Writing Efficient Programs

    Jon Bentley

    1 here · 8 all-time · #881 overall

  38. 1On Lisp

    On Lisp

    Paul Graham

    1 here · 7 all-time · #906 overall

  39. 1The Art of Prolog

    The Art of Prolog

    Leon S. Sterling, Ehud Y. Shapiro

    1 here · 7 all-time · #923 overall

  40. 1Modern C++ Design

    Modern C++ Design

    Andrei Alexandrescu

    1 here · 7 all-time · #937 overall

  41. 1The Little LISPer

    The Little LISPer

    Daniel Friedman

    1 here · 5 all-time · #1310 overall

  42. 1Paradigms of AI Programming

    Paradigms of AI Programming

    Peter Norvig

    1 here · 4 all-time · #1807 overall

  43. 1Alice in Wonderland

    Alice in Wonderland

    Lewis Carroll

    1 here · 4 all-time · #1856 overall

  44. 1Essentials of Programming Languages

    Essentials of Programming Languages

    Daniel Friedman and Mitchell Wand

    1 here · 3 all-time · #2031 overall

  45. 1C Traps and Pitfalls

    C Traps and Pitfalls

    Andrew Koenig

    1 here · 3 all-time · #2090 overall

  46. 1Digital Design and Computer Architecture

    Digital Design and Computer Architecture

    David Harris, Sarah Harris

    1 here · 3 all-time · #2098 overall

  47. 1Extreme Programming Explained

    Extreme Programming Explained

    Kent Beck

    1 here · 3 all-time · #2190 overall