Pito Salas talks about one of the less obvious pitfalls of using AI in your development work:
The problem is that while it an almost correct piece of code it is often the totally wrong solution to your problem. In other words, it often sets you on the wrong path. A dead end. The trap is that you spend your time debugging an approach that is totally wrong.
When does this happen? I find that it happens when I am tackling something I don’t really understand and want a shortcut to my sugar high. Upon reflection I have found more than once that I spent hours debugging an approach which, once working, I realized was all wrong and I had to start over.
Which reminds me a lot of myself when trying to solve some technical issue by gleaning possible solutions from Stackoverflow. Not being a developer I still run into coding or other IT issues in my job as software tester, or even in real life and what do I do when I can’t fix it on my own? I google it, or rather look at Reddit or Stackoverflow for possible solutions. The number of times I found something that loos like it might work for my own situation, but turned out not to apply… So easy to get stuck on a particular solution when you actually lack the insight to understand why it’s the wrong one. At least with Reddit or Stackoverflow, there’s still the possibility of asking for help when you don’t understand something…
But there are worse things than AI generating bad or unsuitable code. The true danger lies in what happens when AI generated code is good enough to take into production. AI generated code may solve your immediate problem, but how maintainable is it? How understandable?
Let me explain. In my professional life as a software tester I often end up working on projects using code that can be years or even decades old; it’s not unusual that all of the original programmers have left the team. Given developers usual loathing of commenting, let alone documenting, what you end up with, even in the best of circumstances is code that nobody present understands completely anymore, nor understands why certain design decisions were made.
AI generated code turbocharges this situation. You’re now using code where nobody understands the design decisions made because AI cannot make decisions, with code generated in ways humans could never come up with. That’s a recipe for disaster a couple of iterations down the line.
No Comments