Curate Platform Habitability for Humans and AI Agents
Part of a "Software Engineering Enchiridion": Platform Engineering
(Image: Build your platform for everyone in the room. My audience at GOTO Copenhagen in 2024)
“First learn the meaning of what you say, and then speak.” — Epictetus
Habitability. Your developer platform, whatever shape the constellation of integration happens to be, needs to be habitable. But here’s the catch. There’s a new inmate in the asylum. You’re not just making a developer platform for developers.
Richard P. Gabriel gave us habitability in software and grounded it in the human experience of working with software coding. Not “does it compile,” not “does it scale,” but can humans live here? Can you enter a codebase, walk its halls, and not want to scream? Habitability isn’t performance, it’s survival.
Habitability was the deep property that made a system understandable and changeable. It’s the feeling of a house where you know where the spoons are, and the light switches work where you expect them. In software, it’s meaningful names, boundaries that fit the domain, and an architecture that feels like it grew instead of being stapled together.
It’s also a platform that makes it all accessible and safe.
But now we’re in new territory: not just humans but AI agents are trying to live in the same system. The old question—can a person live here?—now becomes can people and machines share the same apartment without murdering each other?
For humans, habitability is narrative. A developer wants to walk into a system and see intention. Classes and functions that tell a story. Contexts that make sense. Self-Service where they need it, when they need it. For AI agents, habitability is consistency. They want signals, not stories. Contracts that never lie. Domains expressed in machine-readable ways.
And here’s my thinking: the foundations overlap. Humans and machines both need clarity. Both need explicit boundaries. Both benefit when orchestration turns the noise of your SDLC into music. And the divergences also matter. Humans enjoy metaphor; AI despises it. Developers improvise like jazz; AI insists on meter. Build for one without the other and your habitat becomes a desert—inhabitable for some, unlivable for the rest.
This is where platforms can shine. Think of Domain-Driven Design as laying out the city map. Semantic layering are the street signs. Domain-Integrated Context Engineering hardwires meaning into your agents, so the platform itself participates in storytelling. Together, they make a place where humans can reason and AI agents can operate. Both, safely.
The test? Ask: can a new developer explain the platform to a colleague in an afternoon? Can an AI agent infer correct behaviour without guesswork? If both can, you’ve built a habitat for both. If not, you’ve built a disaster waiting to happen.
The pitfalls are familiar. Go too far toward machine habitability, and you get a sterile desert: schema-perfect, but lifeless for humans. Drift too far toward human warmth, and you get ambiguity that machines will make mistakes on.
Habitability is not luxury—it’s the difference between a platform that lives and one that merely runs. Gabriel knew it: programs must be habitable, or they die from neglect in the cold tomb of “legacy”. Today, that truth stretches to platforms for humans and AI. A habitable platform is not machinery, it’s a civilisation: humans and agents coexisting, each thriving, neither lost.
Build for habitability. Anything less is malpractice.
If you enjoyed this article in the Software Engineering Enchiridion series you might also enjoy:





