People ask what the future of programming (and other IT tasks) looks like with tools like Chat-GPT and Github Copilot. My take: AI is basically a summer intern.
Horse Whips and Buggy Factories
The trajectory of technology is always
Manual effort -> Partial automation -> Full automation -> New careers built babysitting the automation.
Information was remembered and only communicated orally. Then we developed writing, where words had to be carved into stone by hand. Then we developed ink and paper where words could be written. Then the printing press. Then automated printers.
People had to walk everywhere. Then we developed horseback riding. Then wagons and carts. Then buggies. Then cars. Now self-driving cars.
Math was done by hand. Then by abacus. Then by mechanical calculators. Then computers.
The printing press killed off demand for hand-written books, but created new jobs building, operating, and repairing printers. Cars killed off demand for horse whips and buggy factories, but created whole new jobs in auto manufacturing and repair and sales and aftermarket modifications. Electronic computers killed off any demand for mechanical or human computers, but created new jobs programming, building, and repairing those computers.
And all of these industries had a knock-on effect with other industries. Cars created the need for paved roads which created demand for specialized equipment to make those roads. It created demand for more logistics like semi-trucks, freight trains, cargo planes (and airports for them to land at). Cars created the need for stop lights, for traffic police, for car washes. Sure we lost jobs in whip manufacturing but we gained a lot of new jobs and created a lot of brand new industries.
Selling Pickaxes to Gold Miners
AI like Chat-GPT is on trajectory to radically change the IT world, with programming being (I believe) the first field to feel the impacts. But it’s not a cataclysm, it’s more horse whips.
Right now LLMs can spit out the code for an entire computer program, code that looks legit and might even run. That’s scary to people whose livelihoods depend on writing code! But the code it generates isn’t perfect. It might not even run. And it will definitely need some tweaking to suit your business case before it’s put into production.
So much like how previous technological leaps destroyed some industries but created brand new ones, I see the hottest career path of 2025 being “AI babysitter”. Someone with the skills to review the code, write or run the test suite, and make minor tweaks to enable the code to run and solve the business need. Much like how many factory jobs these days involve supervising the robots and doing upstream tasks that robots can’t do. The entry level “code monkey” type jobs will likely disappear over time, but that’s not a bad thing.
Instead, the entry point to programming will be prompt engineering and minor tweaks. Intermediate level will be reviewing the code from the AI and junior programmers. Senior level might be writing/training the AI as well as making major changes to the code (likely assisted by the AI again). In the meantime, brand new industries have popped up with tooling to make these AI systems run better, faster, more accurate, less expensive, tailored to different use cases, etc. Maybe even brand new languages/frameworks/ecosystems that come with the AI built in. Someone has to build, sell, and maintain that.
The 80/20 Rule
The future of programming is having 80% of the working code written by AI and a human fixing the other 20% that the AI got wrong. GPT as basically a summer intern.
AI writes 80% of the code (login page, home page, CSS, admin portal). A junior programmer fixes the mistakes so the test suite can pass. The intermediate programmer writes the 20% of the code that actually matters to the company (business logic, database access, security controls). Senior level might not change much at all: someone still needs to define the architecture, meet with stakeholders, gather requirements, and write (or at least review) documentation. Someone will still need to support that code in production.
I don’t actually foresee the amount of time we spend working on applications will change. But what we do with that time definitely will. When you can get the basic functionality of your app done in minutes, it frees up a lot of time for code review, documentation, and more importantly: writing cool features! Like business logic. Like tricky edge cases. You know, the fun and challenging stuff.
Software will be quicker to write which means we can devote more time and resources to doing cooler stuff which means tech advances quicker which means more cool stuff.
And When The Day Comes…
I will not pretend that I don’t see a day when AI is good enough to completely replace a LOT of workers, with no obvious new industry to absorb those jobs. We’re likely several decades away from that, but we may actually get there. That should be the happiest day in the history of humanity! Obviously we have a LONG way to go, socially and politically speaking, before we can gracefully handle this possibility.
It should be the happiest day because that’s the day when the majority of humanity no longer needs to work. If robots and AIs are doing all of our work for us, at that point there is no reason why universal basic income and single-payer healthcare aren’t ubiquitous. Everyone would be free to work on whatever they want (or nothing, why not?) because there would no longer be any need for almost anyone to work just so they can survive.
And if we get to that point with technology without reaching that point socially and politically… well, I think the world will catch up.
If This Idea Upsets You
On a last note, if this idea upsets you, ask yourself why you’re upset. Do you really want to spend the rest of your life writing a login page over and over again? Is building CRUD backends really that fulfilling? Or would you rather work on fun/exciting/interesting/challenging things?
Let the boring stuff be done by an entity that is actually incapable of being bored. Seek out roles higher up the chain. Your particular job may go away but your career is not threatened until everyone’s career is threatened.