아니요
그래서 방금 ChatGPT를 열고 다음과 같이 질문했습니다.
"국가 약어와 인구로 구성된 키 - 값 쌍 목록을 받아들이는 함수와 일정한 시간에 요청 된 국가의 인구를 반환하는 함수의 두 가지 함수로 Javascript 코드를 작성하십시오."
그리고 이것이 응답으로 나에게 준 것입니다.
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];
}
이 코드는 실제로 꽤 좋습니다. 댓글이 중복되는 것 같지만 개선하기 위해 할 말이 많지 않은 것 같습니다.
그래서 내 직업이 위험에 처해 있습니까? 아니요, 세 가지를 지적 할 것이기 때문입니다.
- 나는 필요한 결과를 얻기 위해 그 질문을 작성하는 방법을 정확히 알고있는 유능한 엔지니어입니다.
- 저는 결과 코드를 읽고 작동 여부와 개선 할 수 있는지 판단 할 수있는 유능한 엔지니어입니다.
- 이것은 매우 간단한 문제입니다. 문제가 복잡할수록 ChatGPT는 결과를 생성하기 위해 끌어낼 유사한 솔루션에 대한 데이터가 줄어들고 코드가 잘못될 기회가 더 많아집니다.
내가 프로그래밍하는 방법을 모르고 그 질문을 어떻게 표현해야 할지 몰랐다고 가정해 봅시다. 내가 방금 "나에게 국가의 인구를 줄 자바 스크립트 함수를 작성하십시오"라고 말하면 다음과 같이 제공됩니다.
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.';
}
}
다시 말하지만, 그 응답은 내가 준 매개 변수에서 괜찮은 편이지만, 프로그래머가 아닌 사람이 이것을보고 있다면 잘라내어 붙여 넣을 수 있습니까? 목록에 없는 국가가 있으면 어떻게 해야 하나요? 바라건대 나는 목록을 확장 할 수 있다는 것을 깨달을만큼 똑똑하지만, 이제는 새로운 국가를 추가해야 할 때마다 또는 국가의 인구가 변경 될 때마다이 목록을 수동으로 업데이트하고 있습니다.
그래서 어쩌면 나는 영리하고 더 나은 말을 하려고 노력할 것입니다.
"인구가있는 국가 목록을 수락하고 원하는 국가의 인구를 알려주는 Javascript 코드를 작성하십시오."
나는 이것이 O (n) 시간 복잡성을 가진 결과를 줄 것으로 기대했을지 모르지만 그렇게 좋지는 않다. 결과는 방금 보여드린 코드와 거의 동일합니다. 국가 및 인구 목록도 매개 변수로 허용하지 않습니다.
따라서 기본적으로 ChatGPT를 사용하여 프로그래밍을 도울 때 컴퓨터가 내가 원하는 방식으로 작동하는 코드를 생성할 수 있도록 요청을 가능한 한 정확하게 표현하는 방법을 알아내야 합니다.
컴퓨터가 원하는 방식으로 작동하도록 컴퓨터와 효과적으로 통신하는 방법을 배울 때 이름이 무엇인지 아십니까?
프로그래밍. 프로그래밍이라고 합니다.
ChatGPT를 사용하면 프로그래밍을 더 빠르고 쉽게 만들 수 있지만 컴퓨터가 이해하는 방식으로 요구 사항을 명확히 하고, 출력을 읽고, 평가하고, 개선할 수 있어야 합니다. 출력을 직접 수정하여 개선할 수 있습니다. ChatGPT에 대한 요청을 명확히 하여 개선할 수 있습니다. 그러나 어느 쪽이든 ChatGPT가 하려는 일을 이해하는 데 능숙해야 하며, 이는 관련 언어에 대한 깊은 이해를 가진 엔지니어가 되는 것을 의미합니다.
엔지니어를 ChatGPT로 대체하려는 노력이 있을 것이라는 데 의심의 여지가 없습니다. 그리고 이러한 노력은 필연적으로 고객의 요구에 제대로 맞지 않는 버그가 많고 비효율적이며 유지 관리할 수 없는 소프트웨어를 생산하기 때문에 실패할 것입니다. 이 오류를 범하는 회사는 필연적으로 엔지니어를 고용하여 엉망진창을 수정해야 하며, 처음부터 고용했을 때보다 비용이 더 많이 듭니다.
'프로그래밍' 카테고리의 다른 글
프로그래밍 「 추천 편」웹 페이지에서 오디오 녹음을 생성하는 ChatGPT (0) | 2023.06.04 |
---|---|
프로그래밍 「 추천 편」Chat-GPT4가 소프트웨어 엔지니어를 대체합니까? (0) | 2023.06.04 |
프로그래밍 「 추천 편」GPT가 개발 중인 코더를 대체할 수 있습니까? (0) | 2023.06.04 |
프로그래밍 「 추천 편」Java 풀 스택 개발자에게 필요한 기술은 무엇입니까? (0) | 2023.06.04 |
프로그래밍 「 추천 편」온라인으로 컴퓨터 프로그래밍을 배울 수 있는 최고의 웹사이트 10곳 (0) | 2023.06.04 |