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

The Smell Catalog

This segment should take about 55 minutes. It contains:

Slide / ExerciseDuration
Clone Confetti7 minutes
Arc<Mutex<Everything>>7 minutes
Stringly-Typed Code5 minutes
unwrap() on External Input5 minutes
Over-Abstraction7 minutes
Lifetime Smells12 minutes
Exercise: Smell Catalog v112 minutes

A smell isn’t a bug. It’s an easy-to-spot surface feature that often indicates a harder-to-spot design problem. Smells let a reviewer triage a large amount of generated code quickly.

Each page in this catalog has the same structure:

  • Smell: what you see, usually greppable.
  • Why generation produces it: the agent’s tendency.
  • Principle: what good design does instead.
  • Prompt: the instruction that regenerates it correctly.

One rule applies to the whole catalog: every smell here has legitimate uses. The question in review isn’t “is this construct present?” but “did someone decide to use it?”