Generative AI and programming
In my last post, I wondered about when we would be able to have a conversation with AI that we could trust. While that’s an interesting question, I skipped over the more immediately arresting questions of what we can do today and in the near future with generative AI (which is the genre of AI of which ChatGPT is a part).
In this vein, I found How Might Generative AI Change Programming? a fascinating read. It discusses what aspects of programming feel amenable to this type of AI and how we might come to view it as a just another tool over the next decade or so. I found many insights.
I noted in my post that generative AIs appear not to be trustworthy. In the programing context, this means that if you ask them to write code, you have the problem of figuring out whether the code is correct. Worse, it’ll often look plausible but still contain major bugs. The article goes beyond this to present a convincing case for why generating more than trivial production code is currently fanciful. It then looks further into where we might find real utility. The thought that if we look beyond the obvious idea of the AI writing production code we can find deep utility engaged me, and I agree that generative AI feels well suited to fuzz and property testing.
Navel gazing a moment here, it is the piece I wish I’d written: taking a subject I know well and applying a novel, interesting and timely angle to it. But then I realised that the author has been involved deeply in programming languages for many years, and perhaps it’s not so awful that I wasn’t able to write anything in the same ballpark. I just have to keep writing, and thinking, and this practice may enable more original thoughts in the long term.