AI 시대에도 프로그래머가 되어야 할까? "Yes, and..."
Montana State University의 컴퓨터 과학 교수인 Carson Gross는 AI 시대에 프로그래머가 되는 것에 대한 질문에 "Yes, and..."라고 답한다. 그는 AI가 주니어 프로그래머에게 위험할 수 있다고 경고하며, 코드를 직접 작성해야만 읽을 수 있는 능력이 생긴다고 강조한다. AI를 코드 생성기가 아닌 훌륭한 조교로 활용하면 학습에 큰 도움이 된다고 조언한다.
AI가 이 과제의 코드를 생성할 수 있다. 하지만 그렇게 하지 마라. 너는 코드를 직접 작성해야 한다.
HN 토론
36- layer8
> 코딩 → 프롬프트가 어셈블리 → 고수준 코딩과 같은가? […] 나는 이 비유에 동의하지 않는다. 컴파일러는 대체로 결정적이라서 현재 AI 도구와는 다르다.
결정성에 관한 문제가 아니다. 소스 코드와 컴파일된 프로그램 사이의 관계를 형식적 정밀도로 추론할 수 있는지의 문제다. 소스 코드의 어떤 변경이 컴파일된 프로그램의 동작에 어떤 정확한 변경을 가져올지 예측할 수 있다. LLM 프롬프트의 변경과 LLM의 출력에 대해서는 그렇지 않다.
무작위성의 원천을 고정함으로써 AI를 결정적으로 만들 수 있다. 그래도 (예를 들어) 프롬프트에서 단어를 추가하거나 제거할 때 출력이 어떻게 변할지 추론할 수는 없다. 알아내는 유일한 방법은 LLM을 실행하는 것(= 프롬프트를 모델에 통과시켜 무엇이 나오는지 관찰하는 것)이다.
이것이 근본적인 차이다. 소스 코드의 변경은 예측 가능하고 추론 가능한 결과를 낳는다. 일반적으로 프로그래밍 언어의 의미론에 따라 그 변경이 컴파일된 프로그램의 동작에 얼마나 정확히 영향을 미칠지 알기 위해 코드를 컴파일하고 테스트할 필요가 없다. 컴파일러가 코드 생성에서 트레이드오프를 위해 확률적 휴리스틱을 사용해서 기계어 수준에서 결정적이지 않더라도 마찬가지다.
다시 말하지만, 차이는 컴파일러의 동작과 LLM의 동작을 어떻게 추론할 수 있는가에 있다. 프로그래밍 언어는 추론할 수 있도록 설계되었다. LLM은 […]
- tengbretson
> 나는 그들에게 코드를 작성하지 않으면 코드를 효과적으로 읽을 수 없을 것이라고 설명한다. 코드를 읽는 능력은 분명 가치 있을 것이고, 어쩌면 AI 기반 코딩 미래에서는 더 가치 있을 것이다.
나는 이 점이 확실하지 않다. 졸업 후 처음 커리어를 시작했을 때를 돌아보면, 학교에 있는 동안 코드 작성 능력이 크게 향상되었다고 느꼈던 기억이 난다. 반면 코드 읽기 능력은 거의 향상되지 않은 것 같았다. 지금도 업계에서 10년 넘게 일한 후에도 두 기술 모두 엄청나게 향상되었지만, 내 경험의 결과만으로 코드를 읽고 내면화하는 능력이 내가 원하거나 가정하는 수준에 있다고 느끼지 않는다.
읽기와 쓰기는 별개의 (비록 관련은 있지만) 기술이며 각자 의도적인 연습과 갈고닦음이 필요할 가능성이 크다. 모든 사람을 대변할 수는 없지만, 나에게 코드 읽기 기술은 그것이 요구되는 직장을 가진 후에야 비로소 발전하기 시작했다.
코드를 쓰는 법을 배우지 않고도 읽는 법을 배우는 것이 가능할지도 모른다. 코드를 읽는 법을 배우지 않고도 쓰는 법을 배우는 것은 확실히 가능해 보인다.
- johsole
나는 저자에게 동의하지 않는다. LLM이 코딩을 더 잘하게 될수록 시스템을 유지하고 발전시키는 데 필요한 개발자가 줄어들 가능성이 더 크다고 생각한다. 우리 회사에서 병목은 이미 새로운 수익 창출 아이디어다. 우리는 새로운 기능의 속도가 대략 30% 증가하는 것을 보았다. 그래서 같은 수의 개발자가 훨씬 더 빠르게 만들고 있다. 이 추세가 계속 증가할 것으로 예상한다. 또한 많은 개발자가 코드가 올바르다고 단순히 믿고 있으며, 코드와의 접점을 잃어가고 있는 것을 본다.
나는 내 아이들에게 프로그래밍에 관여하라고 권하지 않을 것 같다. 대신 코딩을 어느 정도 활용할 수 있는 기업가가 되라고 권할 것이다.
- ivanjermakov
프로그래머는 컴퓨터 프로그램을 만든다. LLM은 컴퓨터 프로그램을 만드는 일을 더 저렴하고 효율적으로 만들어, 더 많은 컴퓨터 프로그램과 프로그래머에 대한 더 높은 수요를 낳는다. 10년 후 프로그래밍이 어떨지는 모르지만, 잘 작동하는 컴퓨터에 대한 수요가 왜 줄어들겠는가?
- samstress
아니오, 하지만...이 내 마음속에는 더 나은 답이다. 코딩을 배우는 것은 상당한 헌신이다. 전문가 수준의 소프트웨어를 만들 만큼 능숙해지려면 수년이 걸린다. 지난 12개월 동안 코딩 AI에서 본 개선을 외삽해보면, 이것은 단지 시간 배분을 잘못한 것이다.
대신, 기사에서 지적하듯이, 현실 세계와 AI 코드 생성 사이의 번역가가 되는 법을 배워라. 기술로 상대적으로 소외된 산업에 대해 배워라. 개발자나 엔지니어를 위한 도구를 만들지 마라. 건설, 광업, 폐기물 관리, 석유 및 가스, 제조, 물류, 정부...에 대해 배우고, 그 산업과 AI의 가치 창출 능력 사이의 연결고리가 되어라.
(상대적으로 소외된 것에 중점을 두라 — 이 모든 산업은 일부 지역에서 첨단 기술 버전이 있지만, 미래는 고르게 분배되지 않는다.)