Rafael Freire

You're not Rick Rubin (kinda)

You've probably seen the meme made with Rick Rubin's infamous 60 Minutes interview clip where he says he's basically paid to vibe with the music and provide his opinions to the artists. The meme is spread to portray vibe coders as these mysterious entities whose only function is simply to vibe with whatever the coding agent is generating and provide vague directions as to what the coding agent should accomplish. While that may be a little funny, it's far from the truth.

Rick grew up playing guitar, spent countless hours on studio with some of the most influential musicians of our time such as The Strokes, Kanye West, Daft Punk and many more. He heard versions of and songs most people will never hear and never will know they ever existed. He may not play any instruments, arrange chord progressions or master audio tracks, but both his ear and taste have decades of training. He knows what resonates, what doesn't, what sticks, what people expect from the artists he's producing, etc.

But enough of Rick Rubin, I'm not here to talk about him and despite what the last paragraph may suggest, I'm not a huge fan of his. The point here is the same as the title: (most of) you (myself included) are not Rick Rubin. We don't have years of experience coding, analyzing pull requests, filing issues, seeing what works on production and what doesn't, dealing with people and weird requests.

Yes, I understand using coding agents can lead to a significant speedup when we talk about boilerplate code or standardized sections of programs or even refactoring large code bases. The question I'm seeking an answer since this was popularized in late 2022 is this: is it worth the cost?

There's two main costs in using coding agents: (i) physical energy cost; (ii) intelectual cost. For the first one, most people already know and it's becoming a meme of how asking please to ChatGPT wastes liters of water. But seriously, is it worth it both the energy cost for training this models and then using it for boilerplate or even some repetitive refactoring? We already have a huge example that shows us that for building things from scratch it's not worth it at all (even though it's building gcc from scratch which wouldn't be possible without gcc already existing and the code being available with decades of improvement).

Next we have the intellectual cost. If you let coding agents do most of your work you will be outsourcing your ability to think and tackle problems. Sure you may have thought about the problem for a bit and may come up with a decent solution, but letting the agent code for you takes away your ability to find a solution that suits the problem and we know coding agents can't come up with anything new or anything that hasn't been done before.

Here's where we come back to Rick Rubin. Now writing this paragraph, if you rely on coding agents I think you might actually become Rick Rubin. A professional that just stands there with no agency. Sure you can tinker with the prompt and tweak something here and there, but you won't have the ability to make something that's yours, something authentic. At the end of the prompt you have no agency in whatever is generated. I guess for most people the quality of the code doesn't matter. What matters is to get the paycheck and go on with life. I don't blame anyone for that. If anything it's fair. What I'm trying to say is that I just dislike very much the way things are going.

Anyway... This is just another one (and one I'm willing to write about) of my many rants and complaints I have about generative AI and how it's being used and abused these days. I really want to wrap my mind around it like it seems everyone else does. Just accept it as this new "tool that is making everything easier and better", but I can't. If you have an answer to how I can accept it, I'd be glad to hear about it.