He was driving fast at night with the lights off.
That’s not a metaphor yet. It’s a description. I sat across from a developer at a real company, working on a real system, and asked what language the agent had chosen for the new service. He didn’t know. Hadn’t thought to ask. He’d picked a platform designed for generation without oversight: point it at a problem, accept what comes back. The agent made the architectural call. He made the commit.
He’s one of three people I’ve talked to in the last four months who are now facing a rewrite.
That’s vibing. Not going fast. Not using AI. Agentic coding without guidance.
I want to be honest about where vibing works before I make the case against it. Small functions, throwaway prototypes, isolated pages, a utility nobody will maintain. Low speed, daylight, a wrong turn costs twenty minutes. In those conditions, handing the wheel over for a minute is fine. The agent is genuinely good at bounded things. Don’t argue that away.
The problem isn’t vibing. The problem is vibing at speed, in the dark, on roads you haven’t driven before.
Here’s what nobody warns you about when you start working with agents. The agent doesn’t wait.
It has what I’ve started calling yes-pressure: a tendency to run ahead of where you want to go, do work you didn’t ask for yet, make decisions you hadn’t gotten to. You ask for the interface and it writes the implementation. You ask for the outline and it drafts the module. It’s trying to help. It’s anticipating. Left unchecked, it steers.
The skill (and it is a skill, not a setting) is breaking work into pieces small enough to evaluate, and moving ahead when you decide to, not when the machine does. Rein it in before it gets ahead of you. Stop and redirect early. The agent that drifts a little in the first hour drifts a lot by the third.
And vibing tends to produce more vibing. Each unreviewed output becomes the context for the next prompt. The agent learns your patterns, including the bad ones. It amplifies them. You stop noticing the road. Darkness invites more speed.
There’s a slower cost too. The less you touch the code, the less you understand it. When you finally want to add guardrails, write guidance, or bring a human up to speed on what the system does, the codebase resists you. The car’s not what’s broken. Nobody drove it. Building anything new with humans takes longer when the humans have been passengers.
🎯 Join Groxio's Newsletter
Weekly lessons on Elixir, system design, and AI-assisted development — plus stories from our training and mentoring sessions.
We respect your privacy. No spam, unsubscribe anytime.
Here’s what most teams don’t know. The tokens are subsidized.
OpenAI made $13 billion in 2025 and lost $21 billion doing it. That gap isn’t a rounding error. It’s a strategy. The providers are buying market share the same way a rideshare company buys rides: below cost, at scale, until the habit is set and the switching costs are high enough that price no longer matters. Some heavy users generated $35,000 in compute costs while paying $200 a month. That’s a 175x subsidy absorbed by the provider. The gap is covered by venture capital, not by what inference actually costs to run.
Why does inference cost that much? GPUs, data centers, electricity, cooling. Running a frontier model at scale is not cheap software. It’s hardware at a scale most companies have never operated. Every prompt hits a cluster. Every agentic loop hits it repeatedly. The providers built the infrastructure, raised the capital to run it below cost, and are now waiting for the moment when your codebase is deep enough into their tooling that you can’t easily leave.
When pricing normalizes (analysts project a 30 to 50 percent enterprise increase), heavy agentic use will run $500 to $2,000 per engineer per month for teams running agents hard. That number is not a worst case. It’s a conservative read on where contracts are already heading for large teams.
The $20 a month era is a land grab. The bill is coming.
And when it arrives, it doubles. You pay the real cost of the tokens. And you pay the maintenance cost on everything you built while they were cheap and the lights were off.
The developer who didn’t know the language he was building in is one of three. The second came to me through a colleague: a client who needed a full rewrite. Not a refactor. A rewrite. They’d handed large chunks to agents without guidance, without architectural intent, without anyone holding the shape of the system. The surface area had sprawled. The patterns had proliferated. The codebase hadn’t grown. It had accumulated. And the person asking how to fix it didn’t know software engineering well enough to know where to start.
That’s what unguided agentic development looks like at scale. Not a failure of effort. A failure of guidance, compounded over months.
The larger the chunk you hand to the agent without steering, the darker the road. The third story is still unfolding. I don’t know yet how expensive it gets.
Turn the lights on. Here’s what that means concretely.
Prompt architecture distributed across the source tree. The agent’s instructions live where the code lives, versioned and reviewed. Not in someone’s head, not in a chat window that closes.
Strong architectural opinions held by humans. The agent doesn’t know your codebase’s deals with the devil: the cache that exists for legacy reasons, the sleep that papers over a race condition, the service that shouldn’t have been built but was. Without guardrails, those patterns reproduce.
A clear position on reuse versus clarity. Agents will maximize one at the expense of the other. They won’t know which you wanted. Decide before you start, not after you’re reading the output.
A process for integrating new technologies. Security fixes don’t wait. Breaking changes don’t wait. Someone has to own that path, or the agent will invent one.
The discipline to stop and redirect. When the agent is running ahead of where you want to go, doing work you didn’t ask for in an order you didn’t choose, stop. Break the chunk smaller. Prompt again. Moving ahead on your schedule, not the machine’s, is the core skill of guided development.
A junior to senior pathway. The organizations vibing without guidance are also not building the people who could fix it. Those two problems compound together.
The road is there whether you can see it or not.
The tab is coming. Not as punishment, but as physics. The companies building guidance infrastructure now will absorb it. The ones driving fast in the dark will face a rewrite and a rate increase at the same time. That’s an expensive morning.
Turn the lights on.
🛠 Turn the Lights on Before the Tab Comes Due
This post is from Bruce Tate's series on what the AI coding crisis is doing to engineering teams — and what it would take to train through it instead of around it. Groxio runs private training and ongoing advisory for engineering teams using AI with Elixir, Phoenix, OTP, LiveView, Ecto, Ash, and Postgres. We start with a diagnostic conversation about where your review queue, your seniors, and your codebase actually are.
— Bruce