Enter Generative AI for software development. “Those who cannot remember the past are condemned to repeat it,” said George Santayana. It all feels quite similar, but with a compressed timeline. The roots of AI go back as far as the early days of open source (and software for that matter). However, there was very little adoption of GAI in software until 2023. GitHub Copilot showed up in Visual Studio just over a year ago to little fanfare. And then the debut of ChatGPT in November 2022 seemed to set the world on fire.
However, there are more similarities than differences in a comparison of the impact of GAI and open source on software development. First, the impetus: Faster, better, cheaper. Developers are always under pressure to get more done quicker. This was the attraction of open source: faster development by not reinventing the wheel. GAI purports to create a new wheel for you. This made corporate heads spin as much as had the news of developers leveraging millions of free, source downloadable software components.
Also like open source, adoption of GAI in software has been grassroots and under the radar. Upon hearing of this new technology and the potential of having machines write code, many board rooms realized they would have to consider its future impact on their software. Only then did they learn their developers had already been leveraging AI-generated code for months.
“No, stop,” was the reaction of many companies. And with good reason. In April, unwitting Samsung engineers lost sensitive data to ChatGPT. Around the same time as Samsung’s issues, a high-profile lawsuit piled on corporate concerns. The new case is a class action suit against several companies behind GitHub Copilot, alleging software piracy. There’s a question as to whether it is legally kosher to use these tools, at least in cases where they seem to cut/paste problematically licensed code verbatim.
So, as with open source, companies are caught between the demonstrated benefits of a new way to develop software and its demonstrated risks. The lesson of open source is that the answer lies in governance and management. Every organization needed strategy, policies, process, and tools to use open source safely, and they needed to invest in educating developers about the risks, lest they circumvent controls—developers are clever. GAI, a seemingly unstoppable component of future software development, requires similar treatment.
GAI’s adoption speed makes it particularly challenging. Putting these measures in place in the face of uncertainty, with pending lawsuits and such, suggests that companies need to monitor and adapt. What is clear now, though, is that software development organizations need to track GAI use and be mindful of the limitations of the technology. And they need to use the most modern tools to test and ensure the quality and security of generated code—and ensure they are not infringing other parties’ IP.