Free — no signup required

When to Use Each Mode

3 min read

The Spectrum of Decision-Making

First-principles thinking is powerful but expensive. It requires time, cognitive effort, and often domain expertise to identify the right "first principles" for a given problem. You cannot derive everything from scratch—you'd never ship. The skill is knowing which mode to use when.

Use Analogy (The Cook) When:

  • The problem is well-understood and common (e.g., "How do I set up a CI/CD pipeline for a standard web app?")
  • Time pressure is high and stakes are low (e.g., choosing a linting configuration)
  • You're operating within known constraints similar to the reference case (e.g., your team size, scale, and requirements closely match the tutorial you're following)
  • You have a way to validate the analogy quickly (you can test in staging and reverse the decision cheaply)
  • The decision is easily reversible—what Amazon calls a "Type 2 door" (you can walk back through it)

Use First Principles (The Chef) When:

  • You're hitting the limits of existing solutions and nothing off-the-shelf fits
  • The stakes are high—architecture decisions that are hard to reverse (database choice, service boundaries, cloud provider)
  • Your constraints differ significantly from the reference case (different scale, different team, different budget, different regulatory environment)
  • You're being asked to justify significant investment (time, money, complexity) to stakeholders
  • You're experiencing repeated failures with the current approach and need to understand why

The Hybrid Approach

In practice, experienced engineers blend both modes in a specific sequence:

  1. Start with Analogy to get a baseline solution quickly. "Teams like ours typically use X."
  2. Apply First Principles to stress-test whether the analogy holds. "But does X actually solve our specific problem? What assumptions does X make that might not hold for us?"
  3. Adjust where the physics of your situation differs. "X assumes high write throughput, but our workload is 95% reads. We should tune for that."

This hybrid approach gives you the speed of analogy with the accuracy of first principles. You don't reinvent the wheel, but you verify that a wheel is actually what you need (and not, say, a sled).

A Practical Decision Framework

When facing a technical decision, run through this quick checklist:

□ Can I articulate WHY this solution works, not just THAT it works?
□ Do my constraints (scale, team, budget) match the reference case?
□ What would I do differently if the reference case didn't exist?
□ What's the cost of being wrong? Can I reverse this decision?
□ Am I choosing this because it solves my problem, or because it's familiar?

If you answer "no" or "I don't know" to the first three questions, you're operating on analogy and should invest time in first-principles analysis before committing.

Interview Tip

In system design interviews, explicitly narrate your reasoning mode. Say: "My initial instinct is to use a message queue here because it's a common pattern for decoupling producers and consumers. Let me validate that instinct—our actual requirements are X, Y, Z. Given those constraints, a message queue makes sense because [specific reason], but I'd also consider [alternative] if [condition changed]." This demonstrates that you can use analogy efficiently while maintaining first-principles awareness.

Key Point: The goal is not to eliminate analogy—it's to use it consciously rather than unconsciously. An unconscious analogy is a hidden assumption. A conscious analogy is a validated shortcut. The difference between the two is the question: "Does this actually apply to my situation?"

This is one of 18 chapters

Every chapter is free — Kubernetes, Terraform, SRE, distributed systems, and more — with fast daily review built in.

Sign up free