Designing APIs and extension points as intentional emptiness—spaces for others to fill—rather than pre-filled functionality.
The Tao Te Ching's paradox of emptiness states: 'We shape clay into a pot, but it is the emptiness inside that holds whatever we want.' In software architecture, this means designing through *negative space*—defining what your project deliberately excludes to create room for others. A monolithic tool tries to contain all functionality; a Taoist-designed platform creates structured emptiness. Extension points, hooks, and plugin architectures are not add-ons but core design philosophy. PostgreSQL succeeds partly because it was architecturally designed to be extended; countless specialized tools built upon its emptiness rather than reimplementing its core. This requires resisting the urge to add features, maintaining clarity about what the project intentionally *does not* include, and ensuring that extension points are primary design concerns. The hardest part of Taoist architecture is the discipline to leave space empty, to trust that the ecosystem will fill it better than the core team could.
Peri can explain this concept, give practical examples, help you decide whether it applies to your situation, or recommend a journey if appropriate.
Explore related journeys or tell Peri what you're working through.