The Computing Series

The 12 Mental Models

# Model Layer 1 — Recall Trigger
MM1 Transformation Computation is input → function → output
MM2 Search Many problems are finding the best state in a large space
MM3 Optimisation Find the best solution under constraints
MM4 Flow Systems are defined by how data moves through them
MM5 State Systems remember things; state management is the hardest problem in distributed systems
MM6 Networks Relationships between things are first-class objects
MM7 Feedback Systems react to their own output
MM8 Concurrency Multiple actors operating simultaneously on shared state
MM9 Redundancy Copies protect against loss
MM10 Layered Abstraction Reason at any level of the stack without knowing all the levels beneath
MM11 Indirection Any problem in computing can be solved by adding a level of indirection
MM12 Tradeoffs Every decision is an optimisation under constraints

Read in the book →