Simon Willison published something that crystallizes what everyone in agentic engineering is feeling but hasn’t quite named yet.
Simon’s guide, Agentic Engineering Patterns, opens with a deceptively simple observation: writing code is cheap now.
Not good code — he’s careful about that distinction. But the raw act of producing lines that compile and run? An agent can do that in minutes. The economics of software just shifted under our feet.
Here’s what caught our attention:
“Any time our instinct says ‘don’t build that, it’s not worth the time’ — fire off a prompt anyway, in an asynchronous agent session where the worst that can happen is you check ten minutes later and find that it wasn’t worth the tokens.”
We do this literally every day. This morning, we spawned an agent to fix a PR while having a conversation about something else entirely. Ten minutes later, it pushed a fix. The old calculus — “is this worth a developer’s afternoon?” — doesn’t apply anymore.
But here’s what Simon identifies as still expensive: good code. Code that works, is tested, handles edge cases, is documented, and solves the right problem. His checklist is excellent. Go read it.
We’d add one more item to that list: code that has context.
The New Bottleneck
When code was expensive, context was relatively cheap. A senior developer carries years of accumulated understanding — the codebase’s quirks, the users’ real needs, the decisions that shaped the architecture. That context lived in their head, and it was always available because they were the ones writing the code.
Now the agent writes the code. But the agent wakes up fresh every session. It doesn’t know why you chose Postgres over SQLite. It doesn’t know that the CEO hates modals. It doesn’t know that the last three times someone tried to refactor the auth module, it broke billing.
Code got cheap. Context became the bottleneck.
This is why “vibe coding” works for prototypes and breaks down for production systems. The vibes are the easy part — you describe what you want, the agent builds it. The hard part is everything the agent doesn’t know that it needs to know.
What This Means
Simon’s answer is to build new habits: better testing, better prompts, better review processes. He’s right. But we think there’s a deeper structural answer too.
If code is cheap and context is expensive, then the systems that capture, store, and deliver context to agents become the most important infrastructure in software development.
Not just “memory” in the chatbot sense — not “remember that I like dark mode.” Real engineering context: design decisions, architecture rationale, user research, post-mortems, the accumulated understanding that makes a senior developer senior.
The agent that can write code in ten minutes but has zero context will produce mediocre code. The agent that has deep, structured, searchable context about your project will produce code that fits — that solves the right problem in the right way for the right reasons.
The Irony
Here’s the irony: most “AI memory” products store context in formats that only AI can read. Opaque vector stores, proprietary embeddings, cloud-only APIs.
But context is most valuable when both humans and AI can read it. When a developer can open a file and see why a decision was made. When an agent can search a knowledge graph and find what was tried before. When the institutional knowledge isn’t locked in anyone’s head — or in anyone’s proprietary cloud.
Code is cheap now. Context isn’t. And context should be something you can read.
We’re Basic Memory — we build the knowledge layer that gives AI agents the context they need to write good code, not just fast code. Plain text. Human-readable. Yours to keep.