You No Longer Need to Code

Lazar Jovanovic is Lovable's first "professional vibe coding engineer." In a LinkedIn short1 that got some traction, he made the case that learning to code is pointless now. AI writes the code. The problem is solved.

I pushed back as I believe programming is more then just generating code. He replied: "if programming was 'the skill', then all programmers would be millionaires."

And I've been thinking about that exchange. Not because I think he made a good argument, but because it's a good example for the argument that Erz made2 about vibe coding being the final from of hyper individualism and for how the discource is currently going.

On one side, the AI coding evangelists: Code is solved. Learning to program is a waste of time. Prompt and ship. There's an almost religious fervor to it, as if the ability to generate code without understanding it is liberation itself. Rushing faster and faster in the hopes of gold.

On the other side, the mourners. The end of handcrafted code. The death of the craft. Programmers who feel something slipping away and respond with a defensive crouch, insisting that nothing can replace human-written code, that AI output is inherently inferior, that real programmers don't use agents.

And here I am, thinking that it's not about code.

When I responded to Jovanovic, my argument was: programming was never just about syntax. It's about the cognitive tools that programming gives you — problem decomposition, precision, the vocabulary to think about systems and constraints.

Linguists ran an experiment with bilinguals where they asked participants to watch video clips of people walking toward destinations and judge which scenes were most similar. German lacks progressive aspect — there's no equivalent of the English "-ing" form — so German speakers tend to perceive motion holistically, focusing on endpoints: where is the person headed? English, by contrast, forces speakers to mark ongoingness, so they attend more to the motion itself. When the bilinguals operated in German, they focused on the destination. When they operated in English, they tracked the ongoing movement3. Same person. Same task. Different language. Different perception of reality.

I'd argue programming languages do the same. When you define a function signature or a type, or draft a system design incooperating certain patterns, you're making a commitment about the shape of a problem. Knowing what a Strategy pattern is, or what a bounded context means, lets you think with those concepts. Communicate them in one word.

And there's tons of books and material about any of these ideas and concepts. Thinking of the Gang of Four4 or the Wizard book5, I've rarely implemented any of the concepts exactly as written. But knowing the names, being able to describe a solution in one word when working with other people — that's enormously useful. Both for thinking and for communicating. And it makes it much easier to prompt the models and get exactly the results you want.

So yes, you no longer need to code. But I'd argue that learning the language of programming is still valuable. The same way learning a second human language is valuable even though Google Translate exists. Not to outperform the tool, but because the act of learning changes how you think.

In this current gold rush, it's easy to optimize away all the seemingly unproductive work around work. But a lot of that work – learning, reading, contemplating, care – is what we require to live fulfilling lives2. And actually needed make an impact. Everythign else is ephemeral, unattached, and lost to the void.

Building something meaningful is a team effort. It requires a kind of understanding you only build by learning alongside others, by struggling through the same problems, by showing up as part of a community, by speaking the same language.

Or to put in Boris Cherny's words who heads Claude Code at Anthropic: someone has "to talk to customers, coordinate with other teams, decide what to build next."[^6]

References

  1. The short was cut from the Lenny's Podcast "The rise of the professional vibe coder (a new AI-era job)" episode. You find the full episode at https://www.lennysnewsletter.com/p/getting-paid-to-vibe-code. While I disagree with the arguement that folks shouldn't learn to code anymore, there are a few really good points in the episode.

  2. Erz, Hendrik (2025). “Vibe Coding: The Final Form of Hyper-Individualism”. hendrik-erz.de, 29 Nov 2025, https://www.hendrik-erz.de/post/vibe-coding-the-final-form-of-hyper-individualism. ↩2

  3. Athanasopoulos, P., Bylund, E., Montero-Melis, G., Damjanovic, L., Schartner, A., Kibbe, A., Riches, N., & Thierry, G. (2015). "Two Languages, Two Minds: Flexible Cognitive Processing Driven by Language of Operation." Psychological Science, 1–9. https://doi.org/10.1177/0956797614567509

  4. Design Patterns: Elements of Reusable Object-Oriented Software (1994) is a software engineering book describing software design patterns. The authors are often referred to as the Gang of Four (GoF). https://en.wikipedia.org/wiki/Design_Patterns

  5. Structure and Interpretation of Computer Programs (SICP) is a computer science textbook. It is known as the "Wizard Book" in hacker culture. https://en.wikipedia.org/wiki/Structure_and_Interpretation_of_Computer_Programs

  6. Twitter reply by Boris Cherny, to a question why Anthropic still hire engineers when Claude Code can write 100% of the code. https://x.com/bcherny/status/2022762422302576970?s=20