There's whole domains where AI doing it is just infeasible. For all the other domains, who tells the AI what to do? Who knows how to be specific enough and precise enough to get the right output?
Until you have full-on AGI that can talk to stakeholders, gather requirements, build an incremental mental model of what the requirements are, and all that jazz, programmers will have the same job as they do today: tell the computer what to do. It's just that we'll be using a different language to do it in.
In fact, the same sentence may be true if you replace AI tools with any technology that improves programmers’ productivity: advanced frameworks for example. The issue is that if programmer productivity shoots through the roof — if you need only one programmer to do the job of ten, or a hundred, or a thousand — then it can result in massive layoffs of programmers. It need not be the case that new technologies be accessible to non-programmers for this to happen.
The same thing is happening in other areas. My friend works in robotic welding. He programs robots to perform specific welds and then supervises them operating during the assembly of each truck chassis. As a single person, he’s doing the work of half a dozen journeyman welders. This amplification of his productivity by technology means his factory needs far fewer welders to get the same work done. It should come as no surprise, then, that older journeymen welders have been very vocal in expressing their hostility towards him throughout his career. “Learn to code” indeed.
I wonder what the proportions work out to be, if you break the work into "the hard bit" vs the "automatable bit", Ive defiantly worked on projects where there is one novel bit that had to be done just right, but 80% of the time was still spent setting up standard databases, payment processors, customer interfaces.
BTW, this is what’s happened with every other programmer productivity increase. No company has responded with ‘cool, our product is done’ and instead has expanded what the product can do. Customers then expect more, and the cycle continues.
I don't think so.
When ChatGPT can write code to the query: "Hey, the production server acted weird last weekend, could be about that issue we talked about on slack yesterday, could you have a look at that?", then I' going to start worrying about my job security.
The easy part of anything can be replaced by AI. It's the hard part that's the problem.