The classical mindset treated software as architecture: plan precisely, construct carefully, enforce correctness locally, and trust composition to scale that correctness up. This worked when systems were small and failure modes were simple. But past a certain size, precision becomes brittle. Correctness leaks away as components interact in unpredictable, adversarial, or simply chaotic ways. Large-scale correctness only ever appears in highly constrained domains (safety-critical systems, avionics, compilers) or in heroic multi-decade efforts that normal teams can’t replicate.
Agentic systems push this further. When behaviour is emergent, adaptive, or probabilistic, the fantasy of clean modular correctness collapses entirely. What replaces it is a biological metaphor: gardening.
A garden is cultivated, not constructed. It is system-level stewardship rather than piecewise perfection. Instead of pursuing immaculate order, you accept that mess is inherent a