Skip to content

Vol. I · First Principles · I.4

Start Simple

Find the simplest solution, then add complexity only when evaluation says you must. Success is the right system, not the most agentic one.

5 min read

Doctrine

  • One well-evaluated prompt beats a crew of unevaluated agents.
  • Add a hop only when a measured failure mode requires it.
  • If you use a framework, you must still be able to read the prompt it sends.

The 70–80% trap

Horthy's journey: grab a framework, hit 80%, discover the last 20% requires reverse-engineering the framework, start over. The antidote is modular concepts — tool calling, a context builder, a pause API — dropped into existing software.

Anthropic: optimize single LLM calls with retrieval and examples first. Multi-step systems only when simpler ones fail the eval.

Make simplicity testable

promptfoo and DSPy exist so 'simple' is not an aesthetic. Write the cases. If chaining beats a single call on the golden set, keep the chain. If it does not, delete it.

Anti-patterns

  • Architecture-first: picking LangGraph vs CrewAI before writing a golden set.
  • Adding memory, RAG, and multi-agent on day one.
  • Optimizing latency of a system that is still wrong.

Related