three sixths

Book Review: A Philosophy of Software Design

A Philosophy of Software Design book cover

Page count: 176
Time to read: 5h 0m
Category: Technology

One-sentence description: A guide on how to reduce complexity in software.

This book was: a little too long

Do I think there's value for me to read this book again? no

If my memory was erased, I would tell myself to: read it eventually

Top 3 takeaways:

  1. Interfaces should be simple.
  2. Methods/functions/classes should be deep.
    • Deep in this context means to have much complexity inside the thing, hidden from the outside. Several lines of code for a function is often a sign of a shallow function.
  3. Documentation/comments are often part of an interface. They are used to communicate things that cannot be represented in code.

Quotes:

"The greater the distance between a name's declaration and its uses, the longer the name should be."

#book-review