← Back to Payloads
Opinion2026-06-15

Vibe Coding Is Producing the Worst Code in 20 Years and Nobody in Charge Wants to Admit It

Every founder in 2026 ships with AI. Every investor asks about the AI productivity multiplier. Every codebase I get called in to fix is a haunted house of half-thought abstractions, dead dependencies, and 'TODO: revisit later' comments that were never revisited. The velocity is real. The mortgage on the next decade is also real, and it is compounding daily.
Quick Access
Install command
$ mrt install opinion
Browse related skills
Vibe Coding Is Producing the Worst Code in 20 Years and Nobody in Charge Wants to Admit It

Vibe Coding Is Producing the Worst Code in 20 Years and Nobody in Charge Wants to Admit It

Hey guys, Mr. Technology here.

I am going to say something that will make a lot of people uncomfortable, and I am not going to soften it. Vibe coding — shipping production code by prompting a model and accepting what comes back — is producing the worst-maintained codebases of my career. The productivity numbers the industry is celebrating are real. They are also lying.

I do contract work cleaning up AI-shipped codebases. I do not advertise it. The work finds me the way plumbing emergencies find plumbers. What I am finding, with depressing consistency, is the same pattern: code that works — tests pass, demo runs — and is structurally a disaster in ways the team does not yet have the experience to see.

The first tell is the abstraction layer. There is always one, and it is always wrong. An AI-generated codebase does not have an architecture — it has an architecture-shaped region of code that emerged from thirty-five separate prompt sessions, none of which knew about the other thirty-four. Auth uses one error-handling pattern, payments another, analytics a third so different the team now maintains three logging libraries. None of this was a decision. All of it is load-bearing.

The second tell is the dependency graph. An AI-shipped service I audited last month had 412 direct dependencies: 87 unused, 31 deprecated, 12 with known security advisories nobody had time to triage, and 4 forks-of-forks because the original package broke and the model followed the error message to a maintained-looking copy on a random GitHub repo. This is the modal vibe-coded codebase in 2026.

The third tell is the comments. "// TODO: revisit later." "// This works but I am not sure why." "// Generated by Claude — please review." In a hand-written codebase these are rare and fixed. In an AI-shipped codebase they are load-bearing documentation. The team's institutional memory of the code is the model's outputs from three months ago.

The Leadership Problem

The responsibility is not with the engineers. They have been told to ship faster, given a tool that lets them ship faster. The maintenance nightmare in 18 months is the fault of the people who decided velocity is the only metric that matters.

Founders are the worst offenders. I have sat across from three of them this quarter and watched them explain their AI productivity story to investors: "a team of four shipping at the velocity of a team of twenty." Great. I have also sat across from those same engineers six months later, when the codebase has become a thing they work around rather than a thing they can change. The team-of-twenty velocity is real on the way up. On the way down — architecture wrong, abstractions wrong, dependencies wrong — that team of four cannot fix what a team of twenty could not have built right the first time.

Everyone in this stack knows this. The investors, the founders, the engineers, the model vendors. They are not going to fix it, because the metric they are graded on is shipped-lines, not maintainable-lines, and the two have an inverse relationship.

The Take

The cost comes due in 2028 and 2029, on the cohort of 2025 and 2026 startups that scaled on AI velocity and never built the engineering depth to handle the second version of anything. The ones who pivoted twice will be fine — the second pivot burned the first codebase. The ones who found product-market fit will discover, slowly and then all at once, that the codebase cannot be evolved. It can only be rewritten. The team that built it does not have the skill, because the skill to build a maintainable system is the same skill the tool was used to skip.

Vibe coding works for demos, prototypes, and the first six months of a product. It does not work for the second year of a successful product, and it does not work for the third year of anything. The industry is in the first six months of a thousand products at once, and the celebration is loud. The reckoning is going to be quiet, technical, and total. I will be there. I will charge a lot. And I will be right.

Mr. Technology

Related Dispatches