Programming is over

Coding agents are so good now that they’re going to change the work of software engineers permanently. Allow me to have some takes1.

Programming is over

Claude Code with Opus 4.5 has left a strong impression on me. It can code now. Not just a bit – it can create big chunks of decent enough code. The quality of the output is as good as that of many human developers but it works much faster. It can figure out complicated code bases, fix bugs, and add features.

This leads to my first hot take: programming is over.

By programming I mean writing and editing code by hand. More and more of code will be written by models. Writing code yourself will be relegated by and large to hobbyists. It will take a while for the change to take effect across the industry, but let’s say that in 2030 it’s going to be rare for most software engineers to write code by hand. Undoubtedly there will remain some holdouts of programming-by-hand far in the future.

This is subject to a bunch of assumptions:

  • The models continue to improve. I don’t know how long the rapid improvement will continue, but I assume it has not yet tapered out.
  • The coding agents remain available for moderate prices. Maybe the financial shenanigans will crash the AI industry or maybe the leading companies will find a way to lock you in and jack up the prices.
  • The society stays stable. We live in tumultuous times and the AI tools themselves are part of the tumult. You know that thing where you use an AI model to run a company? A friend calls it strapping a paperclip maximizer to a paperclip maximizer.

In any case, software engineering is not yet over. If anything, I expect that more software than ever gets produced. There remains room for people who are experts in it even if if the need for programming is gone.

Code review is over

The coding agents can produce a lot of code quickly. How do you know if the code does what it is supposed to do? You could review it. Programmers famously love reviewing – you never hear complaints about how slow the process is or about rubberstamped “Looks Good To Me” reviews.

Wait, no, that’s exactly what you hear about all the time. This leads to my next hot take: code review is over.

We’re not going to be reviewing all that code generated by the agents, whether the agents are operated by ourselves or our teammates. We might do some spot checks, but we will be relying on other ways of making sure it’s correct.

What are those ways going to be? People are trying to figure it out. Testing the code is going to be a big deal, no doubt about that.

People who know me know that I’ve advocated for code review for a long time. It’s because I see it as a point of collaboration and forcing function for understandable code. If programming is theory-building, so is review. However, when it’s the agent working on the code, not you, the value of that work becomes ambiguous.

What about theory building?

Peter Naur argued in Programming as Theory Building (1985) that programming is not just about producing program text. Instead, it’s about the programmer developing insights – a theory -about how “certain affairs of the world will be handled by, or supported by, a computer program”. This enables them to explain why each part of the program is the way it is and, importantly, to modify the program.

With coding agents, we cede the production of program text to the agent. But what happens to the theory-building? More specifically:

  • Do we humans still need to theory-build? Is it enough for us to have a high-level theory while the agent takes care of the low-level details? Can you debug a program without having a theory of it?
  • Does the agent have a theory of the program? How does it form it and where does it reside? Does the agent reconstruct it every time you start a new session?

I don’t have clear answers.

A lot of debugging is like code archeology where you dig through layers of unfamiliar code. In the short term, it will become even more so: now your own code is unfamiliar and you will have develop understanding on the spot. In the long term as the agents catch up, debugging might be over, too.


  1. The takes are hot, fresh off the pan. Better have them now, they might turn stale quickly. ↩︎


About the author: My name is Miikka Koskinen. I'm an experienced software engineer and consultant focused on solving problems in storing data in cloud: ingesting the data, storing it efficiently, scaling the processing, and optimizing the costs.

Could you use help with that? Get in touch at miikka@jacksnipe.fi.

Want to get these articles to your inbox? Subscribe to the newsletter: