One year later: How has ChatGPT impacted software development?

Updated 5 months ago on June 06, 2024

It's been a little over a year since ChatGPT, which debuted in November 2022, exploded onto the scene.

This begs the question: How much influence have ChatGPT and other generative AI tools had on software development practices? Can they replace developers? Can you still be an effective programmer without using generative AI? Or does the hype around GenAI not match the reality in software development?

To answer these questions, let's take a look at how generative AI has and hasn't changed software development over the last year or so.

A brief history of generative AI in software development

First of all, it should be noted that ChatGPT was not the first generative AI tool available to programmers. GitHub Copilot, which runs on the same AI engine as ChatGPT, has been around since 2021.

Going back in time, AI-based coding tools like Visual Studio IntelliCode have been around for years, though in many ways they are far less powerful than Copilot and ChatGPT.

Nevertheless, it's important to recognize that at least some developers have long been using AI to help write and test code. The release of ChatGPT is not an entirely new development in this regard.

What ChatGPT has done and not done for coders

So the big question is, have ChatGPT and other next-generation AI tools ushered in a new era in software development? Or are they just improved versions of AI-assisted coding tools that are not so new?

What ChatGPT created

Decent arguments can be made in favor of both points of view. On the one hand, one could argue that ChatGPT and Copilot are so adept at generating code, and at evaluating code to identify problems, that it's now hard to imagine coding without the help of AI. In some senses, it's like building a house with a hand saw instead of power tools: It's still possible, but it's so much less efficient than the more modern approach that you'll fall behind if you stick with the old methods.

In addition, generative AI tools are not only capable of writing application code. They are also capable of creating code for automated software testing, helping developers more effectively identify bugs in their applications. In addition, they can make suggestions for application architecture. They also serve as research tools, helping developers find information faster than if they were to search documentation databases manually.

Persistent ChatGPT Limitations

On the other hand, the fact remains that no one, to my knowledge, is building complex applications using only ChatGPT or other AI-enabled tools. You may be able to build relatively basic applications using only AI, and you may be able to generate most or all of your boilerplate code with it. But there is no reason to believe that ChatGPT and similar tools have made coders irrelevant.

This is all the more true because you will need a certain level of programming knowledge to write anything resembling maintainable code using AI. You should be able to describe to ChatGPT how you want to build your application, what languages or frameworks to use, and perhaps even what coding conventions to follow. All of these considerations are very important to building a real application, and ChatGPT cannot know how to address them unless you have the programming knowledge necessary to explain in detail what you want.

Will AI continue to get better at programming?

There is also reason to believe that while ChatGPT has not yet revolutionized software development, it may do so in the future, based on the premise that generative AI will get better and better.

However, I tend to think that while GenAI is likely to evolve gradually, like most technologies, it will not improve by leaps and bounds. What it can do today is basically what it will always do - and the shortcomings and limitations that affect GenAI today, such as the risk of rapid insertion and the ever-uncaring problem of hallucinations, are unlikely to disappear, although they will gradually become easier to solve.

Conclusion: AI is good at coding, but not omnipotent

In short, it would be wrong to deny that AI has had a significant impact on software development, but it would also be wrong to claim that it can replace human developers. The extreme positions that some people hold about AI in software development - either that it is too imperfect to be usable or that it is an unrivaled tool that threatens the work of programmers around the world - have not been borne out by events that have occurred in the year since ChatGPT was released.

Let's get in touch!

Please feel free to send us a message through the contact form.

Drop us a line at mailrequest@nosota.com / Give us a call over skypenosota.skype