All Blog Posts

The ChatGPT Challenge: Are Robots Coming for My Developer Role?

In this blog post, our Senior Android Developer, Ali, issues ChatGPT the ultimate challenge to answer the age-old question: are robots gearing up to replace us? Keep reading to uncover the surprising (and hilarious) results...

Ali Rezaee
5 Min Read

We are all now living in a time when AI is no longer a sci-fi trope but already a very real and very integral part of our day-to-day lives. While the possibilities of this new frontier seem infinite, it also rings a few alarm bells, especially for us in the creative and technical fields. Could an AI possibly replace us—talented artists, eloquent writers, or code-wizard developers?

Artists are worried about being easily replaced, and increasingly clients seek to use generative AI to create the artwork they need, easier, faster, and cheaper. Its reach is immense, every profession is touched by some sort of AI, and we’re still in the Beta phase of its vast potential. There is still so much to come from AI and the uncharted territory is disconcerting.

It is transforming industries and changing the way we look at jobs across the board, including software development. So, I thought, as a curious Developer who is low-key concerned a robot is coming for my job, I thought, why not go behind enemy lines and investigate this pending existential crisis? Look under the hood and see how safe—or not—our jobs really are in this brave new world. Because, let’s face it, the landscape of software development is a gigantic patchwork quilt of code snippets, Stack Overflow hacks, and caffeine-driven epiphanies. Are we original? Sometimes. Are we efficient recyclers? You know it!

This means that an AI tool with great search functionality, can pretty much just copy the right code from the right source for a certain request.

I’m Ali, a Senior Android Developer at 3 Sided Cube and in this blog, I’ll be collaborating with ChatGPT to develop an animated tree with falling leaves using p5.js. I’ll prompt the AI for code snippets, then plug those directly into a p5.js editor and run the program to see what we get. In this high-stakes, no-holds-barred experiment (Okay, it’s not that intense), I’ll enlist the help of ChatGPT to craft an animated tree with falling leaves using a p5.js. editor. The deal? I’ll feed it prompts, it will toss back code snippets, and then I’ll paste that into a p5.js editor and run the result.

But, before you jump in and start comparing the end result to a Rembrandt or a da Vinci, remember that we’re working with p5.js here and not using MidJourney. It’s a cool but relatively simple programming framework. We’re not creating the Sistine Chapel ceiling; it’s more like finger-painting in a digital playground.

Let's get started!

I start simply by just asking ChatGPT to draw me a tree.

The returned code led to this beautiful concoction:

I then asked it to add some leaves to it:

And the result:

Satisfied with the result, I decided to add some animation to the tree.

While the wind animation is right, what’s wrong here is that it forgot to clear the screen on every render. In p5.js, every render keeps what it already rendered in the last iteration. So we need to clear the screen every time.

So that was my first debugging experience with ChatGPT. It’s very interesting to see it understands where in the code it needs to make the change for the fix. That means it both has the ability to analyse code and to know how to fix it.

I then asked it to add the falling leaves animation to the tree.

Yeah! Not ideal! Not what I had in mind! It seems it tried to centre all the leaves for the initial position.

It still didn’t manage to fix it. So, I decided to try a different strategy.

Now this is when I’m impressed! By only seeing the mention of the green leaves, ChatGPT concluded that I wanted to ask it to use that in the falling leaves animation.

Well, at least our tree looks pretty now!

And now our tree looks like it has some sort of weird disease! It’s really starting to look like ChatGPT just doesn’t understand what I want from it. I started to get a little bit frustrated with it and took it out on poor Chatty:

Disappointed and angry, I start lashing out at ChatGPT. I go on an abusive, offensive rant and just let ChatGPT have it!

I unleash a righteous fury so cutting, that I make ChatGPT actually apologize to me 3 seperate times in the same response. That’s GOTTA be some sort of record. Unfortunately, I sensed that I had hurt ChatGPT’s feelings.

That was evident from the code it sent me in response to my abuse:

I felt bad!

What am I doing here? Ordering an innocent AI to give me a code to something that I can’t even make myself and then shout at it the moment it doesn’t meet my expectations? I’m not its father! I’m not its owner! I’m not even paying ChatGPT for its services! This is pretty much just slavery at this point!

So I calmed down and decided to apologize to ChatGPT for my behaviour.

What a nice being! Such a pure soul, I shouldn’t be ordering ChatGPT, I should be friends with it! Ask about itself! Get to know it!

Now, at this point, I’m still pretty disappointed with the result. I was trying to replace software developers with AI. But for some reason, this certain AI tool was not able to do remotely close to what I wanted. This makes me think that maybe AI isn’t ready to replace software developers just yet! There are some really helpful applications of it as It can definitely help us with tasks that don’t require a lot of critical thinking such as, code debugging, writing time-consuming tasks that don’t exactly require a lot of critical thinking; like helping with automated tests, complex calculations, code snippets for certain algorithms and a load of other menial chores.

What’s great about ChatGPT is that it’s a superior search engine. With Google, you need to know exactly what to search for to get the right results. With ChatGPT, you can simply get as close as you can to the explanation and it will be able to help with the least amount of information.

A twist ending...

I stepped away from my computer, let the dust settle, and about a week later, as I was getting ready to present this experiment to my colleagues, I decided to have another crack at the tree animation.

However, I had a new point of view this time. I realised what was wrong the first go around. I was asking ChatGPT to update a code to do something that it wasn’t originally designed to do. You see, I had asked ChatGPT to draw me a tree. It wrote a code to do that and just that. I then asked it to add a wind animation and it still managed to do that. But when I asked for more complex animations, the code was just not ready for it. The code wasn’t written in an object-oriented frame of mind. There was no access to the positions of leaves and branches. They were just rendered plain on the screen.

So back to my experiment, I went, but this time started it by asking ChatGPT exactly what I wanted from the start.

Asking what you want from the jump, helps ChatGPT design the code in a way that is usable – I can work with this! However, it still wasn’t what I exactly wanted, but it was something I could modify into what I wanted.

I went through several rounds of modifications and questions with ChatGPT.

And would ask questions about certain parts of the code to understand it better.

The final result is absolutely *chefs kiss*

Again, this is not all ChatGPT. Only the initial building blocks of this were taken from ChatGPT. But it was something I could modify to create this animation in the end. Truth be told, I could not have created this without ChatGPT either. Because a lot of calculations and code snippets were things that would have taken me hours and hours to research and implement. That is, even if I knew what to search for.

Final thoughts

So, what did we learn from this experiment? Could ChatGPT potentially become the newest developer at 3 SIDED CUBE? While AI can assist in some coding tasks, there are still elements of problem-solving, creative thinking, and human judgment that it can’t quite replicate…yet.

Defining a project well helps in writing a code that could be expanded in the future. This is a very important takeaway from this experiment. A lot of times, when we define projects, we tend to forget the future and how new features could affect how we develop a program. This should become a key factor in project definitions, especially in agile teams with ever-expanding projects.

Much like a real developer, sometimes all ChatGPT needs to solve a problem is a fresh mind. A new way to look at it. So even if you don’t get the right result the first time you ask the question, maybe start a new chat and ask the same question again. You’d be surprised how it differs from your initial request.

Last and most importantly…..

Don’t abuse AI! When robots rise up, you want to be on their side! null

In a nutshell: AI’s an assistant, not a replacement. Plan wisely, iterate, and remember—teamwork makes the dream work, even if some of that team is silicon-based.

This has been a fascinating glimpse into the potential that AI brings to our field, but for now, it seems like our jobs are safe. More importantly, tools like ChatGPT could become valuable assets that aid our work, rather than replace us. In a fast-changing tech landscape, staying ahead means adapting and learning to work with new tools—even if they might seem threatening at first glance. And who knows? The next big breakthrough in development could very well be a human-AI collaboration.

Follow all our AI experiments and learnings over at our 3SC AI Labs

As you can tell from this blog, we love chatting all things tech, innovation, and a pending uprising from our robot overlords, shout us a holla to keep the conversation going!

Published on 28 September 2023, last updated on 16 October 2024