I once landed a job by telling the CEO something like, "If you're doing it right, programming is all about replacing yourself with automation."
In Cybernetics there is a formal measure called Variety which is something like a limit or measure of complexity of a system. Programming can be considered the art of extracting the low-variety parts of a process into automation, leaving the high-variety parts to the (high-variety) humans. This process itself is low-variety. Therefore, from first principles, programming is automatable. Our programming environments will eventually look like automatic systems that we instruct with our intentions, and then they consult us as oracles to determine the high-variety parts of the necessary process, having automatically computed the low-variety parts.
In fact, this is already happening as fast as people can accept it. The limiting factor is not in the machines (they are already superbly fast) but in the psychology of the people involved. Most of the research and much of the technology already exists and is in many cases decades old. (Cf. "The Mother of All Demos" and Prolog.)
As time goes on, given the exponential nature of the meta-process, it will feel like a step function for many of us: one day relevant and employable, then the next day replaced by a machine and unemployable, and unable to learn the next thing fast enough to beat the masses of your peers competing against you in the same boat.
I realized all this years ago, and have been asking peers and coworkers, "If you could write a program that could replace yourself, would you?" However, to date, no one has taken the question seriously.
I find this article, appearing in a non-geek publication, to very heart-warming. Maybe people are finally catching on?
Anyhow, this is why e.g. Universal Basic Income is important: You're going to need it sooner rather than later.
Unless there is some essential economic activity that humans can perform that machines can't we are all on the "discard pile" of history.
I actually think we'll just mellow out and enter a Golden Age, but again, only as fast as we can accept it. Certainly the Universe is willing for us to live in peace and harmony, it's up to us to choose to, or not.
> "If you could write a program that could replace yourself, would you?"
I've done it a bunch of times, sometimes by accident.
In one case I was going to be assigned to do testing every evening. But I wanted to go home at 6 every day, so I automated the tests on my first day, then came back in the morning and started 'working on my next task'; never realizing that previously the testing job had been a full time position.
I ended up doing about 5 people's worth of work there that summer.
Of course, it's probably because the project wasn't particularly organized, and our team was explicitly given a free hand to find inefficiencies and fix them. Still, it's a nice story to tell people ;-)
It's great to do that, in the puzzles we're all trying to sort out in our daily jobs actually managing to entirely automate yourself out of a job is basically solving the equation.
Granted the value created by such tasks usually isn't fairly compensated so there are a lot of societal issues.
In Cybernetics there is a formal measure called Variety which is something like a limit or measure of complexity of a system. Programming can be considered the art of extracting the low-variety parts of a process into automation, leaving the high-variety parts to the (high-variety) humans. This process itself is low-variety. Therefore, from first principles, programming is automatable. Our programming environments will eventually look like automatic systems that we instruct with our intentions, and then they consult us as oracles to determine the high-variety parts of the necessary process, having automatically computed the low-variety parts.
In fact, this is already happening as fast as people can accept it. The limiting factor is not in the machines (they are already superbly fast) but in the psychology of the people involved. Most of the research and much of the technology already exists and is in many cases decades old. (Cf. "The Mother of All Demos" and Prolog.)
As time goes on, given the exponential nature of the meta-process, it will feel like a step function for many of us: one day relevant and employable, then the next day replaced by a machine and unemployable, and unable to learn the next thing fast enough to beat the masses of your peers competing against you in the same boat.
I realized all this years ago, and have been asking peers and coworkers, "If you could write a program that could replace yourself, would you?" However, to date, no one has taken the question seriously.
I find this article, appearing in a non-geek publication, to very heart-warming. Maybe people are finally catching on?
Anyhow, this is why e.g. Universal Basic Income is important: You're going to need it sooner rather than later.
Unless there is some essential economic activity that humans can perform that machines can't we are all on the "discard pile" of history.
I actually think we'll just mellow out and enter a Golden Age, but again, only as fast as we can accept it. Certainly the Universe is willing for us to live in peace and harmony, it's up to us to choose to, or not.