I think if you want to find a trend in computing, it's the same as the progression in other industries. Tooling replaces raw ability, technique replaces skill, and jobs requiring skills are slowly replaced by jobs that don't require skills.
Consider Go, for instance. There's no doubt that the opinionated, overly-controlling compiler, absolute minimalism, and conventional structure of the language is designed so that a mediocre programmer can produce passable code. A good programmer doesn't really need gofmt, or a compiler that tells them off for not properly commenting their code. Good programmers don't tend to abuse generics or lambdas or all the other things Go doesn't have.
So what it does, compared to C++, or even Java, is allows you to employ less experienced, less skilled programmers, and equally, to expect them to actually be productive, and not to produce morasses of unreadable gibberish.
Don't get me wrong - I like Go. But if C was the only language in town, there's no doubt you'd need more programmers, they'd have to be better trained, and their job security and compensation would be better.
That's a little unfair, if accurate. Even the best of us are mediocre programmers when fixing a bug in the middle of the night or diving into a new code base.
You might as well say (and some do) that Haskell is for mediocre programmers because good programmers don't make type mistakes.
> a compiler that tells them off for not properly commenting their code
Are you still talking about go and if so would you mind sending a link because as someone who has written it professionally since pre-go1.0 and contributed multiple changes to the go repo I haven't the faintest idea what you are talking about.
Are you thinking about the right language?
Machine learning only (partly) addresses one of those categories. There’s still plenty of work to do even if AI decision making is less buggy than human code.
One of the arguments for John Backus to create Fortran was to allow non-programmers (of Assembly language) to program. In some sense he succeeded, it allowed a lot of scientists unwilling to understand registers, stack and heaps to program computers. Then Grace Hopper did the same with Cobol for business people. In the end they didn't extinguish the job of a programmer, they just enabled people that thought in higher levels of abstraction to program computers.
This is what Wordpress/Joomla did for HTML coders, what super-optimized C and C++ compilers did for machine-level coding, what Sharepoint is doing for intranet builders, etc. We are constantly moving to higher levels of abstraction and solving more problems but it only increases the need for people skilled with basic notions of programming.