"Every holon has two tendencies: an integrative tendency to function as part of a larger whole, and a self-assertive tendency to preserve its individual autonomy." — Arthur Koestler, The Ghost in the Machine (1967)
An open-source book — 15,000+ lines, 62 chapters across 22 parts — that bridges Arthur Koestler's philosophy of holons with modern distributed systems architecture. From SOLID to Sagas, from cognitive load to circuit breakers, through the lens of one powerful idea: every module is simultaneously a whole and a part.
Koestler named it after the Roman god with two faces. Every holon looks inward (as a self-governing whole) and outward (as a dependent part). Software is no different:
graph TB
subgraph "The Holarchy"
direction TB
System["SYSTEM<br/><i>the whole</i>"]
subgraph H1 ["Holon: Orders"]
direction TB
H1_pub["Public Interface<br/><small>API / Events / UI</small>"]
H1_dom["Domain Logic<br/><small>Rules, Invariants</small>"]
H1_inf["Infrastructure<br/><small>DB, Cache, Queue</small>"]
H1_reg["Self-Regulation<br/><small>Health, Circuit Breakers</small>"]
H1_pub --> H1_dom --> H1_inf
H1_dom --> H1_reg
end
subgraph H2 ["Holon: Payments"]
direction TB
H2_pub["Public Interface"]
H2_dom["Domain Logic"]
H2_inf["Infrastructure"]
H2_pub --> H2_dom --> H2_inf
end
subgraph H3 ["Holon: Inventory"]
direction TB
H3_pub["Public Interface"]
H3_dom["Domain Logic"]
H3_inf["Infrastructure"]
H3_pub --> H3_dom --> H3_inf
end
Bus(["Event Bus<br/><i>Async Integration</i>"])
end
System --- H1
System --- H2
System --- H3
H1_pub -. "OrderCreated" .-> Bus
Bus -. "PaymentRequested" .-> H2_pub
Bus -. "StockReserved" .-> H3_pub
style System fill:#1a1a2e,stroke:#e94560,color:#fff
style Bus fill:#0f3460,stroke:#e94560,color:#fff
style H1_pub fill:#16213e,stroke:#0f3460,color:#fff
style H1_dom fill:#16213e,stroke:#0f3460,color:#fff
style H1_inf fill:#16213e,stroke:#0f3460,color:#fff
style H1_reg fill:#16213e,stroke:#0f3460,color:#fff
style H2_pub fill:#16213e,stroke:#0f3460,color:#fff
style H2_dom fill:#16213e,stroke:#0f3460,color:#fff
style H2_inf fill:#16213e,stroke:#0f3460,color:#fff
style H3_pub fill:#16213e,stroke:#0f3460,color:#fff
style H3_dom fill:#16213e,stroke:#0f3460,color:#fff
style H3_inf fill:#16213e,stroke:#0f3460,color:#fff
Each holon owns its UI, logic, database, and self-regulation. It communicates with the world only through asynchronous events. Autonomy inward, integration outward. When this balance breaks — cells that keep autonomy but lose integration — you get cancer. In software, you get a distributed monolith.
Every software module lives in tension between two forces:
- Self-assertive tendency — autonomy, independence, owning its own data and rules
- Integrative tendency — cooperating, serving the larger system, responding to events
Holonomic architecture resolves this through Self-Contained Systems: each holon is autonomous enough to develop and deploy independently, yet integrated enough to form a coherent whole. Not microservices. Not a monolith. A holarchy.
The book is organized in four pillars. Browse the full chapter listing in book/.
|
Parts I–II · Chapters 1–7 The philosophical foundation. Koestler's holons, lessons from biology, the metaphysics of software, cognitive load, readability, and expressive code.
Parts III–IV · Chapters 8–20 From SOLID to CUPID, from monoliths to hexagonal architecture. The blueprint for building holons. |
Parts V–IX · Chapters 21–39 Messaging, Temporal, Event Sourcing, CQRS, Sagas, testing, refactoring, anti-patterns, and hard-won lessons.
Parts X–XXII · Chapters 40–62 Security, DevOps, serverless, AI/ML, observability, circuit breakers, distributed data, contract testing, and frontend-per-holon. |
Epilogue: The Garden and the Gardener · References
- Senior engineers tired of the monolith-vs-microservices false dichotomy
- Architects designing distributed systems who want a principled decomposition strategy
- Tech leads choosing between SCS, microservices, and modular monoliths
- Anyone curious about what happens when philosophy meets software engineering
New to holonomic architecture? Read the introductory article — a 10-minute overview of the core ideas before diving into the full book.
- Single file — all 62 chapters in one document
- Browse by chapter — navigate part by part
Felipe Coelho — Senior Software Engineer & Engineering Manager. Over a decade building distributed systems, this book distills the patterns and principles that actually survived production.
This work is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0).
You are free to share and adapt this material, as long as you give credit and distribute contributions under the same license.