> There is no fundamental principle that suggests most kinds of programming are any less susceptible to automation than any other kind of work
Well, as a fundamental principle, there's the Halting Problem.
The simplest programming tasks will be simplified to some extend or be commoditised. In much of the same way we can purchase website templates and website builders can get the trivial sites up and running with no knowledge. In the past, HTML was required knowledge to publish a blog, but not anymore.
But there's a reason most professional applications are not developed with such tools. Given that, I expect the careers of programmers that aren't IDE-pilots are safe for the foreseeable future.
Increasingly complex task will be, and already are, being automated. But so far, all that progress has only increased the programmer's leverage.
> I guess my point is that there seems to be a meme that extolls the virtues of "learning to code" as an end, rather than as a means to be more effective at something else.
I completely agree with that. Outside of IT, there are many areas that would benefit from some programming knowledge and are currently under-served.
Your appeal to the Halting Problem is basically why I included the "most kinds of" weasel words. As much as we don't like to admit it, the vast majority of professional programmers are doing things that are properly categorized as "the simplest programming tasks". You're right that so far the automation trend has only increased programmers' leverage, but I don't think there's any more reason to think that will be an indefinite trend than there was to think automotive assembly would always be a high-skill job.
I think programming should be thought of as a useful skill (like math or writing) that for most people comes in handy in small but myriad ways, while a smaller segment of people gain more expertise and do it professionally (like mathematicians or writers). Maybe that's how most of this nascent movement is thinking of it, but it seems to me it's being sold more as a solution to the future job woes that many foresee.
>I don't think there's any more reason to think that will be an indefinite trend than there was to think automotive assembly would always be a high-skill job.
It isn't. One day even programmers will, in general, be replaced. The way I see it is that programmers will be one of the last ones to be replaced because once they are replaced, everything else that can be replaced that isn't will soon follow (as replacing programmers will send the process of replacing such jobs into overdrive).
Everyone learning programming does not solve the bigger problem for society, but it is probably one of the safest careers even if it isn't safe.
Ah, see, I disagree. There are things that are less fundamentally automatable, like interpersonal relationships, art, and research. We need to figure out how to make those sorts of things make more sense economically, rather than racing to the bottom on traditional types of labor.
Art is becoming automated. Even if it never makes it to the top tier of creativity that humans possess (and it may very well make it there), very few humans will make it to a tier high enough to compete with the automation, especially on the skill per effort chart.
For research, I haven't paid much attention to automation for stereotypical research (scientists doing science in labs), but there is a lot of automation happening in discovery process for legal research that is cutting down the number of individuals needed. I doubt it has maxed out the potential for automation anymore than other areas.
As for interpersonal relationships, they may also be possible to automate (robots, simulations, etc. that manage to cross the uncanny valley combined with increasing knowledge of how human interactions work lead me to think it is possible eventually). I expect that we will even see the world's oldest profession one day have competition from automation.
I think one key to remember with automation is that people are willing to skimp on quality to save money. So even if we cannot replicate the work of humans to the same level of quality, automation can still compete when comparing quality per cost such that the paths are not a viable career option for most people.
> I completely agree with that. Outside of IT, there are many areas that would benefit from some programming knowledge and are currently under-served.
I'd like to emphasize this sentence. There is not just binary code that is used in software. Great challenges arise in other domains e.g. such as synthetic biology.
That's exactly my point: I want to hear less "learn to code", and more "learn xyz for which programming is useful". My sense is that being a professional programmer is much more of a no-brainer right now than those xyzs, but that it is very short-sighted as a society-wide meme. I want to see software create a boom in jobs outside the creation of software.
Well, as a fundamental principle, there's the Halting Problem.
The simplest programming tasks will be simplified to some extend or be commoditised. In much of the same way we can purchase website templates and website builders can get the trivial sites up and running with no knowledge. In the past, HTML was required knowledge to publish a blog, but not anymore.
But there's a reason most professional applications are not developed with such tools. Given that, I expect the careers of programmers that aren't IDE-pilots are safe for the foreseeable future.
Increasingly complex task will be, and already are, being automated. But so far, all that progress has only increased the programmer's leverage.
> I guess my point is that there seems to be a meme that extolls the virtues of "learning to code" as an end, rather than as a means to be more effective at something else.
I completely agree with that. Outside of IT, there are many areas that would benefit from some programming knowledge and are currently under-served.