There are 3.5 million truck drivers in the US. They will all be gradually replaced by robots in the next few years, and then we will have a massive bloodbath caused by 3.5 million (no offense) low-skilled, unemployed people hunting for food.
From their perspective, this may look unrealistic – heavy driving seems like a really taxing and complex activity: it demands lots of attention, it has many special cases, it often requires reading social cues from other humans that only humans can understand. Yet, the switch to robots (and the ensuing social cataclysm) look inevitable in short few years.
In my line of work, I’ve been long puzzled by a similar issue. Why in the field of computer science and engineering, which is ultimately governed by the physics of the circuits, switches, math and formal logic that stems from that, why so much of the routine daily work programming those soul-less machines involves so much of: human judgement, uncertainty, doubt, debates/flame wars over “patterns”, and straight up insane (for any other engineering line of work) rates of errors, crashes and bugs?
I mean, it’s hard to imagine a modern-built physical bridge that just crashes “because bugs”. Or take air travel: in the US, 0.2 deaths per 10 billion passenger-miles for the first decade of this century. For the whole second decade – 0 deaths (almost).
Modern planes are heavily computerized, is that software written by some kind of a different breed of humans than, say, web software? Because my online banking from Citi goes down every week, and it’s a freaking banking service with the same use cases since the 14th century, repeated many times daily by 7000 banks in the US, nowhere near as complicated as the software that’s automatically, near-flawlessly flying and landing the jets in this country.
But wait, the higher are the regular software stakes, the bigger seems the reliance on human judgement. “Our web service is facing unique performance challenges and only the team XYZ has enough experience to scale it to that level.” Mind you, human programmers still haven’t sorted out if something as long-used as OOP is even a viable concept – some say that it is an unmaintainable disaster, a non-starter, others have been building stable systems with it for decades. With stubborn opinions so polarized, mutually exclusive in a field, again, governed by the laws of physics, it seems kind of very wrong that so much of the programming and design is still performed manually by fickle, biased mortals.
I don’t see any replacement yet. But maybe I’m just a truck driver.
I don’t know how I arrived here. It is over four years after you wrote this. I’m trying to think of an answer to your question. I have an engineering degree although I only worked as an engineer (electric power systems then IBM, hardware not software) for five years. Two answers… maybe.
1. The growth start-up hackers of today were the electrical, mechanical, and civil engineers of the past. Some, in the 1970s and 80s, became COBOL or Fortran IV programmers. They built the banking, aircraft, military, and other legacy codebases upon which a lot rests today. That’s the REAL backend. It is falling apart though, as all code needs maintenance. The creators are retired or dead now. Software as a Service is flimsy. It is good enough for banner advertising, department store websites, Etsy, and Amazon. Will Amazon Web Services endure? I don’t know.
2. It is easy to program poorly. The bar to entry is low. (15 years ago, Russian programmers wrote very high quality code compared to Westerners, because processor resources were scarce and developer errors were expensive.) Being a self-didact is rare, contrary to the dominant narrative. StackOverflow isn’t the answer. “Democratizing” education with MOOCs failed. Intelligent, life-long learners loved MOOCs and had high rates of graduation but no one else did. The former could have learned from a beat up old text book. Good coders were rare then AND now.
ChatGPT will weed out the mediocre coders, lawyers, finance/business world drones, and writers of marketing content. Designing reliable self-driving road vehicles is a hard problem. There hasn’t been much progress since you wrote this blog post. Coronavirus got in the way but wasn’t the root cause. Those 3.5 million truckers with their CDL A’s will go hungry later rather than sooner. I’m more worried about the masses of other people whose jobs will be AI / robotically automated out of existence long before the truckers.