The Alchemist's Code: Bringing More Value with Less Magic
summary
Argues that Elixir apps become maintainable by decoupling API, business model and persistence: uses Phoenix and Ecto but extracts opaque structs for domain models, puts persistence into an IO/data-access layer, and implements use cases in services that accept and return primitives. Shows hierarchical edge‑bundling graphs: one messy app with many cross‑context links and one clean app with six tight contexts, no cross‑context links and no cycles. Implements pyramid service→IO→model pyramid and reports it actually works, simplifying tests and onboarding.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 0:50Apprenticeship
- 1:53Painting
- 3:17Templates
- 4:10Hierarchical edge bundling
- 5:39Painterly technique
- 6:44Project structure
- 9:25Models
- 15:15Pyramid Weave
- 15:59Concerns
- 17:05Slow Development
- 17:34Onboarding
- 18:28Domain Driven Design
- 19:00Conclusion
- 20:44Question
related talks
47mElixir for curing product development pains
43mThe Tyranny of Structurelessness
52mEvolving a Pragmatic, Clean Architecture A Craftsman's Guide
37mModern Abstractions and the Web, and avoiding Pitfalls because Life is short
49mKeynote: How to sell Elixir (Again)
47mElixir for curing product development pains?
19mStructs for order
26mMind your own business view controller
