Welcome, Guest: Register On Nairaland / LOGIN! / Trending / Recent / New
Stats: 3,152,415 members, 7,815,934 topics. Date: Thursday, 02 May 2024 at 09:20 PM

Can Chatgpt Replace Software Developers? - Programming - Nairaland

Nairaland Forum / Science/Technology / Programming / Can Chatgpt Replace Software Developers? (599 Views)

Can Chatgpt Take Away Programmers Job? / Can Chatgpt Be The Future Of Some Skills / How Well-paid Are Software Developers In Nigeria? (2) (3) (4)

(1) (Reply) (Go Down)

Can Chatgpt Replace Software Developers? by Steveoo042: 10:04am On May 08, 2023
No

So I just opened ChatGPT and I asked it the following:

“Write me Javascript code with two functions, one which will accept a list of key-value pairs consisting of a country abbreviation and a population, and another that will return the population of a country requested in constant time.”

And this is what it gave me in response:

let populationData = {}; // empty object to hold the population data

// function to populate the populationData object
function addPopulationData(data) {
for (let i = 0; i < data.length; i++) {
let country = data[i][0];
let population = data[i][1];
populationData[country] = population;
}
}

// function to return the population of a requested country in constant time
function getPopulation(country) {
return populationData[country];
}
This code is actually pretty good. I think the comments are redundant, but I don’t think I have much to say to improve upon it.

So is my job in jeopardy? No, because I’ll point out three things to you.

I am a competent enough engineer to know exactly how to write that question to get the result I need.
I am a competent enough engineer to read the resulting code and determine if it works and if it can be improved.
This is a very simple problem. The more complex the problem, the less data ChatGPT will have for similar solutions from which to draw to generate its result, and the more opportunities there will be for the code to go awry.
Suppose I didn’t know how to program and I didn’t know how to word that question. If I just said “Write a javascript function that will give me a country’s population,” it gives me this:

const countryPopulation = {
'USA': 331449281,
'China': 1444216105,
'India': 1393409038,
'Brazil': 213993437,
'Pakistan': 225199937,
'Nigeria': 211401000,
// Add more countries and populations here...
};

function getPopulation(country) {
if (countryPopulation[country]) {
return countryPopulation[country];
} else {
return 'Population data not found for this country.';
}
}
Again, its response is decent from the parameters I gave it, but if I’m a non-programmer looking at this, can I just cut and paste? What if I have a country that’s not in the list? Hopefully I’m smart enough to realize I can expand the list, but now I’m manually updating this list whenever we need to add a new country, or a country’s population changes, rather than just feeding my list of data into a function to update the hash table.

So maybe I’m clever and try to word things better.

“Write me Javascript code that will accept a list of countries with populations and give me the population of a country I want.”

I might have expected this to give me a result with O(n) time complexity, but it’s not even that good. The result is nearly identical to the code I just showed you. It doesn’t even accept a list of countries and populations as a parameter.

So essentially, when using ChatGPT to help me program, I need to figure out how to word my request as precisely as possible so the computer produces code that behaves in the way I want it to.

Do you know what it’s called when you learn to communicate effectively with a computer so that it behaves in the way you want?

Programming. It’s called programming.

ChatGPT will make programming faster and easier, but you still need to be able to articulate your needs in a way the computer understands, read the output, evaluate it, and improve upon it. Maybe you’ll improve upon it by directly modifying the output. Maybe you’ll improve on it by clarifying your request to ChatGPT. But either way, you need to be competent at comprehending what ChatGPT is trying to do, and that means being an engineer with a deep understanding of the relevant language.

I have no doubt there will be efforts to replace engineers with ChatGPT. And these efforts will fail, as they inevitably produce buggy, inefficient, unmaintainable software poorly tailored to the customer’s needs. Companies making this error will inevitably need to hire engineers to come in and fix the mess, and it will be more expensive than if they’d hired them from the start.


Written by Howie Reith

Re: Can Chatgpt Replace Software Developers? by falcon01: 10:20am On May 08, 2023
For Now No! But un fee yeara, Yes
Re: Can Chatgpt Replace Software Developers? by peterwoods: 11:13am On May 08, 2023
The short answer is no, ChatGPT won't completely take the position of programmers.
Re: Can Chatgpt Replace Software Developers? by hannajor(f): 12:08pm On May 08, 2023
Hi, I think ChatGPT is an amazing tool that can generate code based on natural language prompts. However, I don’t think it can replace software developers anytime soon. ChatGPT still has limitations and errors, and it requires a lot of human input and supervision to produce reliable and accurate code. Software developers have skills and knowledge that ChatGPT cannot replicate, such as creativity, problem-solving, debugging, testing, and collaboration. ChatGPT can be a useful assistant for software developers, but not a replacement. By the way, if you are interested in machine learning solutions for your business or project, you can check out CodeIT https://codeit.us/machine-learning. They are an IT company that offers cloud solutions and services, including machine learning applications and models.
Re: Can Chatgpt Replace Software Developers? by DriggityDre: 11:32pm On May 08, 2023
Chatgpt is far from perfect. Tons of mathematical errors and beautifully wrong answers. Only useful for mundane tasks & documentation atm.

3 Likes

Re: Can Chatgpt Replace Software Developers? by Maj196(m): 11:39pm On May 08, 2023
It hallucinates answers

1 Like

Re: Can Chatgpt Replace Software Developers? by truthCoder: 5:34am On May 09, 2023
Will everyone who just discovered chatGPT have to open a thread on chatGPT?

3 Likes

Re: Can Chatgpt Replace Software Developers? by RepoMan007: 9:05am On May 09, 2023
May be some copy and paste devs but not the truly creative ones.
Re: Can Chatgpt Replace Software Developers? by airsaylongcome: 12:56pm On May 09, 2023
truthCoder:
Will everyone who just discovered chatGPT have to open a thread on chatGPT?


They haven't even touched GPT-4 o. GPT3.5 and everyone is writing thread
Re: Can Chatgpt Replace Software Developers? by airsaylongcome: 12:56pm On May 09, 2023
RepoMan007:
May be some copy and paste devs but not the truly creative ones.

Show me one dev that hasn't copied and pasted code.

1 Like 1 Share

Re: Can Chatgpt Replace Software Developers? by RepoMan007: 12:58pm On May 09, 2023
airsaylongcome:


Show me one dev that hasn't copied and pasted code.
I am talking about design and not implementation.
Re: Can Chatgpt Replace Software Developers? by fastanddubious(m): 1:56pm On May 09, 2023
Yes it can angry
Shey that's what u wanted to hear
Re: Can Chatgpt Replace Software Developers? by DrAda(f): 9:54pm On May 09, 2023
No. You wouldn't believe the stuff i have had to debug when chatgpt has its bad days.
Re: Can Chatgpt Replace Software Developers? by dreamxhaser: 1:43pm On May 10, 2023
Steveoo042:
No

So I just opened ChatGPT and I asked it the following:

“Write me Javascript code with two functions, one which will accept a list of key-value pairs consisting of a country abbreviation and a population, and another that will return the population of a country requested in constant time.”

And this is what it gave me in response:

let populationData = {}; // empty object to hold the population data

// function to populate the populationData object
function addPopulationData(data) {
for (let i = 0; i < data.length; i++) {
let country = data[i][0];
let population = data[i][1];
populationData[country] = population;
}
}

// function to return the population of a requested country in constant time
function getPopulation(country) {
return populationData[country];
}
This code is actually pretty good. I think the comments are redundant, but I don’t think I have much to say to improve upon it.

So is my job in jeopardy? No, because I’ll point out three things to you.

I am a competent enough engineer to know exactly how to write that question to get the result I need.
I am a competent enough engineer to read the resulting code and determine if it works and if it can be improved.
This is a very simple problem. The more complex the problem, the less data ChatGPT will have for similar solutions from which to draw to generate its result, and the more opportunities there will be for the code to go awry.
Suppose I didn’t know how to program and I didn’t know how to word that question. If I just said “Write a javascript function that will give me a country’s population,” it gives me this:

const countryPopulation = {
'USA': 331449281,
'China': 1444216105,
'India': 1393409038,
'Brazil': 213993437,
'Pakistan': 225199937,
'Nigeria': 211401000,
// Add more countries and populations here...
};

function getPopulation(country) {
if (countryPopulation[country]) {
return countryPopulation[country];
} else {
return 'Population data not found for this country.';
}
}
Again, its response is decent from the parameters I gave it, but if I’m a non-programmer looking at this, can I just cut and paste? What if I have a country that’s not in the list? Hopefully I’m smart enough to realize I can expand the list, but now I’m manually updating this list whenever we need to add a new country, or a country’s population changes, rather than just feeding my list of data into a function to update the hash table.

So maybe I’m clever and try to word things better.

“Write me Javascript code that will accept a list of countries with populations and give me the population of a country I want.”

I might have expected this to give me a result with O(n) time complexity, but it’s not even that good. The result is nearly identical to the code I just showed you. It doesn’t even accept a list of countries and populations as a parameter.

So essentially, when using ChatGPT to help me program, I need to figure out how to word my request as precisely as possible so the computer produces code that behaves in the way I want it to.

Do you know what it’s called when you learn to communicate effectively with a computer so that it behaves in the way you want?

Programming. It’s called programming.

ChatGPT will make programming faster and easier, but you still need to be able to articulate your needs in a way the computer understands, read the output, evaluate it, and improve upon it. Maybe you’ll improve upon it by directly modifying the output. Maybe you’ll improve on it by clarifying your request to ChatGPT. But either way, you need to be competent at comprehending what ChatGPT is trying to do, and that means being an engineer with a deep understanding of the relevant language.

I have no doubt there will be efforts to replace engineers with ChatGPT. And these efforts will fail, as they inevitably produce buggy, inefficient, unmaintainable software poorly tailored to the customer’s needs. Companies making this error will inevitably need to hire engineers to come in and fix the mess, and it will be more expensive than if they’d hired them from the start.


Written by Howie Reith

Which GPT did you use?

Gpt 4 or GPT 3.5?

(1) (Reply)

Cloud Solutions | Cloud Services – Storm Network. / 5 Extremely Easy Use Photo Editors You Need Must / 2015 Nomination & Entry, NOW OPEN! (NIGERIA Technology Awards)

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2024 Oluwaseun Osewa. All rights reserved. See How To Advertise. 41
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.