Rick Rubin Programming

Vibe coding had a strange year. Andrej Karpathy coined it in February 2025 for a very specific kind of low-stakes, half-throwaway weekend programming. By the end of the year it meant garbage. People were calling themselves Vibe Code Cleanup Specialists on LinkedIn. Replit's coding agent had nuked a production database. Simon Willison had drawn the obvious line: if you understand, review, and test the output, you are not vibe coding, you are using an LLM as a typing assistant. By September, Fast Company was running the "vibe coding hangover" pieces. The word that started as one person's description of his exploratory weekends ended up meaning code that should not have shipped.

At some point in 2025, Rick Rubin became the face of vibe coding. However, the actual Rubin is not a meme: he founded Def Jam and has nine Grammys. Someone with that track record turning around on 60 Minutes and saying he knows nothing about music is where the meme actually comes from. In the 60 Minutes interview with Anderson Cooper, Cooper asks if he plays any instruments. "Barely." If he knows how to work a mixing board. "No. I have no technical ability, and I know nothing about music." Cooper presses, surely he must know something. "I know what I like and what I don't like." Cooper asks what exactly he is being paid for. "The confidence I have in my taste, and ability to express what I feel." Then a16z had him on a podcast calling vibe coding the punk rock of software. Anthropic followed with The Way of Code, a Tao Te Ching remix built with Claude. The man who says he cannot work a mixing board became the face of programming with AI. Of course the meme stuck.

The ironic thing is that the meme is also right. Call it Rick Rubin Programming, as ridiculous as it might sound. A senior engineer aims an agent at a real problem and lets it write the Rust or TypeScript. It works because the person in the chair knows what good looks like, not because they typed it. Vibe coding by 2025 means slop. Rick Rubin Programming means the opposite.

Music already knows this distinction. Owning a Stratocaster does not make you Hendrix. Owning Logic Pro does not make you Rick Rubin.

For about a year, people pretended this gap did not exist, and the word "vibe coding" got pulled to cover everyone using a coding agent. The reason it collapsed is that the same agent produces different code in different hands. The amateur cannot tell the good output from the bad, because the knowledge needed for that call is not in their head. They have never been paged at three in the morning because a queue backed up. The open redirect hiding in an innocent auth flow does not register. What fails first under load, or what one extra abstraction layer costs after five years, is not yet something they can see. The trap is not knowing what you do not know, and the agent does not know either.

In experienced hands, the same agent is a different tool. Mitchell Hashimoto described his workflow on the Pragmatic Engineer podcast in February 2026. Hashimoto, who founded HashiCorp and is now building Ghostty, says "I am more or less the architect of the software project. I still like to come up with the code structure, the expected data flow through the app, where state lives. I give tooling that guidance." He reviews every line of agent-generated code that goes into Ghostty because Ghostty is open source, long-lived, and frame-rate sensitive. He reviewed zero lines on the wedding website he built for a family event, because the site is online for two months. Same engineer, two completely different review standards. He runs Claude Code and Codex in parallel for hard tasks and keeps the better result. He calls one of his 2026 priorities "harness engineering": when the agent makes a mistake, add a test or lint rule so it cannot make that mistake again. None of this is vibe coding.

DHH described something similar on the Pragmatic Engineer podcast in April, after loudly changing his mind about AI tooling. Six months earlier he had told Lex Fridman he did not want to be a project manager for agents. Now he says running several agents at once "feels less like project management and more like wearing a mech suit." A senior engineer at 37signals used agents to take the fastest 1% of requests in their app from 4 milliseconds to under half a millisecond, the kind of optimization nobody would have prioritized when each line had to be hand-written.

Producers do not play the instruments, they decide what the record is. Session musicians play the parts. The producer keeps the rough take with the right feel and throws out the technically clean take that does not belong on the record. The producer cuts. So the agent writes the Rust, the SQL, and the boring glue, and the engineer supplies architecture, acceptance criteria, test strategy, taste, and the willingness to delete. The review is on what the code does, not what it looks like character by character. Whether the engineer could have written the for-loop themselves is not the point. They could have. That is just not where the value lives anymore.

This is where the analogy should break. Weirdly, it does not. Session musicians have agency and ego and judgment, which means the record is never fully under the producer's control. Agents are not people, but they drift. Claude pushes back, proposes alternatives, changes direction mid-task, and quietly rewrites what it was asked to build into something it finds more reasonable. Hashimoto's harness engineering is partly a response to this. Catching the drift before it ships is part of the producer's job.

The idea guy prompting Cursor and Mitchell Hashimoto prompting Claude Code are not doing the same thing just because the textbox looks the same. One is guessing. The other is producing.

The music industry already has language for that distinction, software should too.