How Chat GPT impacts software developers. An alternative narrative

Steve Froehlich
4 min readJan 22, 2023

--

A lot of emotionally charged articles and responses on this topic. But few take a thoughtful, measured approach. Which is what I’ve tried to do. This article is not about what AI could eventually be, it is concerned with the present and near future. Basically 0–5 years out, since I believe that time horizon is predictable enough to base career and business decisions on.

To present some arguments on either side of the extreme, here is one article that argues all developers will be replaced with AI. The tone is overly sensationalized, but there are some interesting points. For example if AI can regenerate all code, it does change how we maintain software since a lot of coding is making the code maintainable for humans. Here is a dismissive reddit post on the other end of the spectrum, that has an interesting take. If AI is just a compiler or code generator on steroids does that mean we start committing the AI prompts to git? And near the middle of the road, this article traces a developers experience using Chat GPT to help him write code.

Bret Victor explaining how the process of changing computing paradigms has historically gone.

Instead of viewing AI as a threat to programming or a just another tool, it seems to me that we should view it as another programming paradigm. The reason why is because I see a lot of similarities between the discourse around Chat GPT and the arguments around other changes in computing paradigms. For example when programmers switched from writing in binary to the higher level task of writing in assembly. There is a great talk (queued up to the relevant section) from Bret Victor on how changes in computing paradigms have initial resistance but ultimately lead to a better way to code. Based on this historical pattern and the current state of Chat GPT, it seems the impact on developers (in the near term) will be bumping developer tasks to the next higher level of abstraction. It will follow the same pattern Bret describes. Instead of developers firing up IDEs and writing code, they fire up the AI prompt and give instructions to the AI. So maybe we developers who dismiss, are the dinosaur binary programmers who can’t see a new more efficient way to program is being offered to us.

There is an interesting thought experiment that helped me understand this transition. Imagine you are a software engineer who has a few years of experience writing code. You have delivered some production software that helped your company and proved your technical prowess. As a reward you are promoted to senior or lead developer. Now your job description just changed. You may not be the one writing all the code. As a lead your job is more to design and guide junior engineers. You tell them what you want them to build and as they build it you tweak and correct their mistakes. This is a very similar work flow to working with Chat GPT. If you are in a remote organization and you slack junior engineers instructions, you are already using the same type of interaction you would for the AI. As AI’s improve and get integrated into more companies, instead of being a junior developer, new grads get to skip to senior developer duties. They are just senior to AI instead of to people.

In technological revolutions as well as shifts in computational paradigms, the lowest cognitive level tasks get replaced. For example in the past, assembly line workers were responsible for performing repetitive tasks such as attaching parts to a car or assembling electronic devices by hand. However, with the advent of robots and automation technology, many of these tasks are now performed by machines, freeing up human workers to focus on more complex tasks such as quality control, maintenance, and programming of the machines. So think about the lowest level tasks a developer does. Those will be what gets taken over by AI. As AIs improve the next level task is automated and humans focus on the next higher level up. This continues until Artificial General Intelligence (AGI) is reached, in which case I guess we get skynet. But that isn’t anticipated to happen soon. So keeping to the 0–5 year time frame, the most probable areas to become dominated by AI are:

  • code generators
  • documentation
  • build scripts
  • boiler plate code
  • CRUD web apps
  • Simple REST calls

And other relatively simple applications. The take away is to embrace the change, and start understanding the capabilities of this maturing technology. If done right, this shift could be really positive for developer productivity and for the career’s of the developers use it effectively.

--

--

Steve Froehlich

I like to speculate about the future and help engineering teams build great software in e-commerce and digital finance.