

Discover more from The Rambling of an old developer - by Fernando Doglio
chatGPT: The new must-have tool for developers, or is it?
Let's talk about our new digital rubber duck
Hi there subscribers!
I hope you're all doing well at this time when everyone is either prepping to stop working for the holidays, or to spend some time with their friends and loved ones because of the holidays.
Since the year is almost over, I wanted to first, welcome all the new members to this newsletter, we’ve recently seen an increase in subscribers and I appreciate your vote of confidence, I hope I can keep providing interesting and informative content.
And I also wanted to talk a little bit about the hottest topic in our industry lately: ChatGPT.
Before you close the email, I don’t want to tell you how it’s either going to replace your jobs or how it won’t. Instead, I wanted to make a simple recommendation: give it a chance (if you haven’t already).
ChatGPT has many shortcomings still, and is far from a production-ready app. They’re constantly tweaking it and making it more scalable due to the increasing number of users. So it would make very little sense to rely on it for an important task, however, there are other ways in which it can still be useful without you completely relinquishing control.
ChatGPT can be your new rubber duck
You know how we sometimes use an object or a person to describe how we can’t solve a particular problem, and simply by hearing ourselves describe the problem, we find a solution? Well, the rubber duck effect is real, and if you haven’t used it at least once, I’m sorry but what have you been doing all this time?
The point being, now we have a rubber duck that can talk back! (err, or rather, write back).
We can now bounce ideas off this digital rubber duck, tell it to generate a version of an algorithm that we’ve been trying to code, test it, find its problems and ask it to fix them. We can also ask questions or request for it to explain to us certain topics that we can’t yet grasp.
I’ve been using ChatGPT for a few weeks ( close to a month ) now, and I can assure you, the code it generates almost always will contain some kind of bug. Most of the time it’ll be a logical bug, not a missing semicolon. Those problems are hard to find, you need to either test the code or mentally parse it. But if you do find a problem and you mention it to the bot, it will give you a solution.
Essentially, you can use it to arrive at a working example based on some trial and error, but without you having to come up with the actual code. Let’s face it, during our working hours, we’re either thinking about a solution to a problem, or we’re coding the solution.
Now you can do all the thinking, and let the AI do the coding.
Is it a perfect workflow? I don’t think it can be yet, but it can be a timesaver in some situations. For example, I recently wrote an article about genetic algorithms. I have implemented them in the past, but it had been a while since then. I had two options, either do the whole thing myself, or ask for help. So I turned to ChatGPT and asked it to help me. It wrote a faulty version of the algorithm, but eventually, through some trial and error I managed to get the code working in under an hour.
After looking at the final code, I knew I would’ve never finished it in under an hour, and that let me continue my work on the article. BTW, you can read the details about that conversation here.
All of this to say that when I tell you that ChatGPT can be a tool to improve your dev time and overall workflow, is because I’ve experienced it myself.
Either ChatGPT or some alternative, we’re looking at the start of AI-assisted coding, and I don’t think we should go back.
Have you tried ChatGPT on your own? What are your thoughts about it? Will you be adding it to your daily workflow?
Share your ideas in the comments!