<aside> 🎯 3-line summary • DDD is not a single book — it's a collaboration written by three authors a decade apart. Evans gave us the language of the domain model, Vernon gave us the pragmatism of implementation, Greg Young gave us time through events. • The biggest misconception — "aggregates must reference each other only by ID" is Vaughn Vernon's rule, not Evans's original. Evans actually allowed direct object references, and he had four reasons for doing so. • The Java ecosystem's DDD revival was not a coincidence. September 2000 POJO coined → 2002 Rod Johnson's Spring → 2003 Fowler's Anemic Domain Model → 2003 Evans's DDD book were nearly simultaneous events. That same wave carried into the era of actors (Akka), DDD-native frameworks (Axon), and Kafka-driven event sourcing.
</aside>
<aside> ✍️ ✍️ Author note — Akka & DDD overseas → Akka, DDD, and My Overseas Developer Years — An Author's Note
</aside>
<aside> 🌐 🌐 Read in Korean (한국어 원문) → DDD가 만든 세 갈래 길 — 에릭 에반스, 반 버논, 그렉 영을 다시 읽어야 하는 이유
</aside>

Hero — The three DDD thinkers (Evans, Vernon, Young) sketching the same domain cube in their own ways.
In 2026, AI coding agents auto-generate half the boilerplate, Kafka has settled in as the event backbone, and the actor model has emerged as the standard abstraction for multi-agent architectures. At exactly this moment, opening DDD (Domain-Driven Design) again is no nostalgia — it's a working decision.
The domain model is the business language humans understand, and it's the cleanest surface AI agents can work on. Axon Framework natively supporting MCP (Model Context Protocol) is the proof — agent-ready systems are, in the end, systems where the domain is cleanly partitioned.
Yet too many engineers learned DDD as if it were one book. In truth, DDD is a collaboration written by three authors over a decade, and their positions partly conflict. This article pins down exactly where they conflict, and then traces how that disagreement carried into the actor / Kafka / agent era of 2026.
| Person | Publication | Contribution | Core message |
|---|---|---|---|
| Eric Evans | 2003 "Domain-Driven Design" | Founder | Ubiquitous language, aggregates, bounded contexts |
| Vaughn Vernon | 2013 "Implementing Domain-Driven Design" (IDDD) | Implementation evangelist | Patterns for actual code/frameworks, small aggregates, identity-only reference rule |
| Greg Young | 2010 CodeBetter article + talks | Founder of Event Sourcing + CQRS | Express the domain as a stream of facts, not last-known state; separate write and read models |
<aside> 💡 Korean readers sometimes call him "Eric Young." The right name is Greg Young. He coined the term CQRS and formalized event sourcing in its modern sense.
</aside>
These three positions are not different answers — they are answers from different stages. The biggest misunderstanding is unpacked in §4.