Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Reading

Practice loopRunnable examplesThree depth tiers

The chapters are ordered by dependency. Their labels describe how deeply to study them:

  • Essential: write it, debug it, and explain it without notes.
  • Important: use it confidently and explain its main tradeoffs.
  • Recognition: know why it exists and where it appears; defer the internals.

For every example, pause before reading the explanation. Predict whether it compiles. If it does, predict its output. If it does not, point to the precise ownership, type, or lifetime relationship that fails.

Use this four-step loop:

predict → compile → explain → change one thing

The final step matters. Change an owned parameter to a borrowed one, replace an iterator method, move a value into a closure, or alter a match arm. Small experiments turn vocabulary into a working model.