ChatGPT for developers: beware of what you wish for
When measured by the number of LinkedIn posts, ChatGPT is the hottest topic right now. Day after day, the story is almost always the same: “I used it for this and that, and it is fantastic! I just can’t believe how great it is!”. The list of domains that will supposedly no longer be the same after ChatGPT’s introduction keeps growing: law, education, documentation, cooking recipes, math, and, yes, software development.
?
I can imagine that, short of returning to disconnected pencils and paper for tests, the education system could collapse by the corpus of knowledge that ChatGPT puts at the fingertips of every student. But what do I know? Education professionals may have better ideas than me on how to best cope with the disruption in their domain of expertise. I should better keep my opinion on this matter to myself.
?
But I can be more adventurous when it comes to software development. It is, after all, the only thing I have done consistently my entire adult life, the only area where I can make any serious claim of expertise.
?
All this to say that, despite the hype, I don’t think that ChatGPT is going to change software development as fundamentally as one may be tempted to believe. And if it does, it will definitely not be in this wonderful, amazing way that we are being led to expect. There is a dark side to this.
?
I don’t doubt the brilliance of the technology. I am pretty sure it does wonders, and that it works just fine in the vast majority of cases.?It does provide boilerplate code based on some textual description.
?
But this is not about how good it is: the problem is who will be held responsible for the (hopefully rare) cases where it will be wrong and produce something incorrect that ends up causing a software malfunction.
?
As a developer, don’t think for a second that “it’s not me, it’s ChatGPT” would be an acceptable excuse, ever. You’ll be crucified on the spot if you even try. Responsibility for delivering working software is the essence of our trade. Whether you wrote every line of the code you delivered, pasted it from Slashdot or ChatGPT, or reused it from an older project, it does not matter: the buck stops with you. Good developers are handsomely rewarded because of this responsibility they accept.
领英推荐
?
The CEOs who publish enthusiastic posts about enforcing ChatGPT as the standard tool for their software development teams are starting a worrying trend, putting us all on a slippery slope. Before long, one will wonder why a software project takes so long, since ChatGPT could have written so much of it. Less expert (and thus cheaper) developers will give the illusion of proficiency by producing code that they sometimes don’t even understand.
Human nature being what it is, it is only a matter of time before pieces of code produced by ChatGPT goes to production without even being read, reviewed, or validated. And then, sometimes, it will be wrong, something bad will happen (hopefully not too dramatic), and a developer will be blamed, even if she was instructed explicitly to rely on ChatGPT, even if she would have wanted time to review this code but was under too much pressure to deliver, even if everything and everybody around her pushed her into working in this way.
?
If this is more than a dystopian suggestion on what the future holds, if there is any predictive value to this, software developers will then serve as hostages, to be sacrificed when the software that they (literally) did not write does not work.
?
I’m not sure I’m going to like that.
?
Sr. Manager, Solution Architecture at Amazon Web Services (AWS)
1 年Although the fear of erosion of the profession of software development is correct, I view ChatGPT as a decision support system that hopefully (if put in the hands of intelligent humans/developers) will allow to speed up the art of software creation, especially the process of automatic testing.? An engine like chatGPT can do an amazing job and generating test cases based on existing code. For the rest of humanity, Muggles (as they referred in a book I read recently ;-) ), ChatGPT can amplify quality and speed of many tasks.? Personally I view ChatGPT has the most exciting application of the technology that I've seen in a very long time, especially if we consider the number of industries that this technology can impact not in 10 years but tomorrow morning.
Hopefully AI will be a tool and used as a tool for enhancing humans (with built in checks & balances) and not to replace humans ...?
I am not a fan of ChatGPT for Software development but I belive that one high risk to use it now is that there are no easily - free ... available comparable alternative on the market, which obviously will change not far from now once Microsoft will have integrated ChatGPT with Bing or even earlier... At this time why not ask Google for instance to quality check some software pieces written by ChatGPT, looking at the results of the exchanges (or battles) between robots ...
Owner & Manager PB e-Consulting
1 年Wise position, Darius. Totally agree with you.
High Integrity Executive | Helping People to be the Best Versions of Themselves | Leader Assisting Individuals to Find the Joy in the Work That They Do
1 年Seeing ChatCPT as part of A solution, rather than THE solution for software developers, is fundamental here Darius. The application of this sort of technology better serves software developers as intelligence augmentation. That addresses the 'who is ultimately responsible' whilst getting the benefits that the technology can provide. Let the machines do what they are good at, and let the humans do what they are good at -- just be very careful where you draw the line and how those roles interact.