There's a moment in most AI-assisted development sessions where the old mental model breaks down. You've written your detailed prompt — a careful specification of what you want, constraints, edge cases, preferred patterns — and the AI gives you something that's 70% right, 20% interesting, and 10% completely wrong. So you iterate. And iterate. And slowly, through that back-and-forth, something coherent emerges.
That process has a name now. Scott Hanselman and Mark Russinovich from Microsoft captured it perfectly in their talk: Sculpt, Not Spec. And once you hear it, you can't unsee it.
The Spec Is Dead. Long Live the Chisel.
Traditional software development leaned heavily on the specification. Before a line of code was written, you'd define inputs, outputs, behaviours, constraints, error states. The spec was the blueprint. Developers were the builders who faithfully executed it.
AI-assisted development doesn't work that way. You don't hand the AI a blueprint and walk away. You start with a rough idea — a lump of marble, if you will — and you begin to shape it. You push here, refine there, cut away what doesn't belong. Each exchange is a chisel stroke. The sculpture emerges through iteration, not specification.
This is a profound mental shift. The specification mindset says: I must define the problem completely before I can solve it. The sculpting mindset says: I can begin shaping even before I fully understand the final form.
Vibe Coding: A Gift and a Warning
Andrej Karpathy coined the term vibe coding — the practice of building software by feel, guided by natural language, without necessarily understanding every line of the output. Just describe what you want, accept what comes, keep nudging until it works. It's fluid, fast, and genuinely joyful.
As an AI professional, I find vibe coding fascinating — and slightly dangerous if taken too far. It democratises creation in extraordinary ways. A product manager can prototype an internal tool. A researcher can build a data pipeline. A designer can ship a working component. The barrier to turning ideas into software has collapsed.
But here's the tension Hanselman and Russinovich are careful to surface: lowering the barrier to creation doesn't lower the stakes of what you're creating. Code that touches production, handles user data, or interacts with external systems carries real consequences. Vibe coding without comprehension is how you accidentally ship a security vulnerability wrapped in a beautiful UI.
"The AI can generate the sculpture. But you're still the sculptor. You decide what belongs and what gets cut away."
Guidance Over Instruction
One of the most practical insights from the talk: guidance beats explicit instruction. When you try to over-specify everything upfront — anticipating every edge case, codifying every constraint — you paradoxically get worse results. The AI gets lost in the details. The spec becomes a cage.
Instead, provide direction. Give the AI enough context to reason well, then let it fill in the gaps. Review the output. Ask it to adjust. Ask it to explain its choices. The conversation is the workflow.
This maps to something I've observed repeatedly in my own work with agentic systems: agents that are over-constrained underperform compared to agents given clear goals, good context, and the latitude to reason. The same principle applies when you're the human in the loop.
Context Is the Real Moat
If guidance beats instruction, then context is the foundation of everything. The AI's output quality is almost entirely determined by how well it understands the problem space. Not just the current prompt — the surrounding knowledge: your codebase's conventions, your user's mental model, the business constraint you haven't stated explicitly because it feels obvious.
This is why investing in context management is one of the highest-leverage things a team can do today. Good context windows, well-structured system prompts, reference documents, examples of prior decisions — these aren't overhead. They're the difference between an AI that sculpts with you and one that just generates noise.
The teams I've seen get the most out of AI-assisted development aren't the ones with the best prompts. They're the ones who've built the richest context — a living understanding of their domain that they continuously refine and share with their AI collaborators.
Human Oversight Is Not Optional
The sculpting metaphor is elegant, but it contains a serious responsibility: the sculptor must understand the material. Michelangelo knew marble. He understood how it would fracture, how light would interact with it, how it would age. His mastery wasn't just aesthetic — it was structural.
We can't outsource our understanding of what we're building. Hanselman and Russinovich are clear on this: AI-assisted development amplifies your capabilities, but it doesn't replace judgment. The human remains accountable for the output. You need to review it, understand it — at least architecturally — and own it.
This is especially true as the scope of AI assistance grows. When an AI writes a function, review is straightforward. When an AI designs a subsystem, the stakes compound. Human oversight isn't bureaucratic friction. It's the quality gate that keeps the sculpture from crumbling.
What Changes for Us
So what does this mean practically, for those of us building AI-native teams and systems?
First: reframe your workflow. Stop thinking about AI as a tool you use to execute a spec. Start thinking about it as a collaborator you shape ideas with. Your first output is never the final output — and that's fine. That's the point.
Second: invest in context infrastructure. Document your decisions. Build rich system prompts. Create reference examples. The quality of your AI collaborations will rise with the quality of the context you provide.
Third: keep your hands on the chisel. Delegate freely, but review deliberately. The more powerful the AI, the more important your judgment becomes — not less. Vibe your way to a prototype; then understand what you've built before you ship it.
The sculpture is emerging. Make sure you're the one holding the chisel.
This post was inspired by the talk "Sculpt, not Spec" by Scott Hanselman & Mark Russinovich (Microsoft) — watch on YouTube ↗. The concept of vibe coding was coined by Andrej Karpathy. The synthesis and perspective here are my own.