생성형 AI 코딩 툴과 에이전트가 나에게 효과 없는 이유

7 hours ago 1

  • 글쓴이는 AI 도구가 자신을 더 빠르게 만들어주지 못한다는 점을 가장 큰 이유로 들며 생성형 AI 코딩 도구를 사용하지 않음
  • AI가 생성한 코드를 검토하고 이해하는 데 드는 시간이 직접 작성하는 것보다 더 오래 걸릴 수 있다고 판단
  • 코드 품질과 책임은 여전히 개발자 본인에게 있으므로, 검토 없이 AI 코드를 사용하는 것은 위험
  • AI를 인턴처럼 보라는 주장에 대해, AI는 학습을 하지 못하므로 기억 상실이 있는 인턴 같다고 비판
  • 오픈 소스 기여와 AI 코드의 차이를 설명하며, 사람과의 상호작용은 새로운 아이디어를 제공한다는 점에서 가치가 있음

서론

  • 많은 사람들이 나에게 생성형 AI 코딩 도구를 사용하는지, 어떻게 생각하는지 묻곤 함
  • 본 글에서는 찬반 양쪽의 입장을 벗어나 개인적인 기술적 경험만을 정리함
  • AI가 나의 코딩에 도움이 되지 않는 이유를 기술적 관점으로 설명

AI는 더 빠르지 않음

  • 생성형 AI 코딩 툴을 사용해도 내 작업 속도가 빨라지지 않음
  • AI가 코드를 작성해줘도 코드의 책임은 나에게 있음, 코드 전체를 꼼꼼히 리뷰하고 완전히 이해해야만 프로젝트에 반영 가능함
  • 코드 리뷰는 코드 작성만큼 오랜 시간과 집중이 소요되며, "코드 읽기가 쓰기보다 어렵다"라는 업계의 격언도 있음
  • AI가 작성한 코드를 "블랙박스"처럼 신뢰하는 것은 매우 무책임한 선택임. 코드 결함 발생 시 법적, 금전적 책임도 프로그래머에게 있음
  • 품질 저하리스크 증가 없이 AI로 생산성 증가나 수익 증대는 불가능함

AI는 배가(레버리지) 도구가 아님

  • 어떤 사람들은 AI 코딩 툴이 효율을 배가시켜 준다고 주장하나, 이는 주관적 인상에 불과함
  • 일부 사용자는 AI가 생성한 코드를 검토 없이 사용하거나 부분 검토만 하여 시간을 아끼지만, 나는 이 과정을 건너뛸 수 없으므로 도움이 되지 않음
  • 새로운 언어나 기술 학습에서 AI를 사용하는 것이 효율적이라는 주장도 동의하지 않음. 새로운 것을 배우는 과정 자체가 프로그래밍의 즐거움임
  • 실제로 Rust, Go, TypeScript 등 다양한 언어를 직접 학습하며, 이런 경험을 AI에 위임하지 않음
  • 모든 코드의 책임감은 결국 내게 있기 때문임

AI 코드는 인간 코드와 다름

  • "오픈 소스 기여도 내가 작성하지 않은 코드인데, 왜 AI 코드와는 다르게 대하는가?"라는 질문에 자주 직면함
  • 사실 오픈 소스 PR도 시간을 투자해 철저히 리뷰함. 하지만 사용자와의 협업은 새로운 아이디어와 동기부여로 이어짐
  • AI 에이전트를 여러 개 돌려서 버그 이슈 해결 PR을 받는 게 게임 체인저라는 주장도 있지만, 결국 코드 리뷰의 병목은 사람이어서 오히려 느려짐
  • AI 도구가 보급되며 품질이 낮은 PR이 빈번히 생성됨. AI 코드에는 미묘한 이질감이 있고, PR의 제출자에게 질문을 하면 답변하지 않는 경우가 많음
  • 책임 있는 코드 기여 및 오픈 소스 커뮤니티 소통이 인간 코드의 중요한 차별점임

AI와 인턴의 차이

  • AI를 인턴에 비유하는 주장도 있지만 근본적으로 다름
  • 인턴의 초기 코드는 많은 리뷰와 시간이 들지만, 피드백을 통해 빠르게 성장
  • 인턴의 성장 투자로 결국 독립적으로 맡길 수 있는 중요한 동료가 됨
  • AI 도구는 매번 새로운 작업마다 지식을 잊고 다시 시작, 성장하거나 노하우를 축적할 수 없음
  • 이는 한 번도 발전하지 않는 인턴과 같으며, 생산성 향상에 기여할 수 없음

결론

  • 글을 통해 생성형 AI 코딩 툴을 적용할 때의 기술적 문제점을 분명히 전달하고자 함
  • AI 코딩에는 '공짜 점심'이라는 것은 존재하지 않음
  • AI로 인해 빨라지거나 생산성이 높아졌다는 주장은 품질 기준을 내려 추가 리스크를 감수하거나, AI 판매자의 이익에서 비롯됨
  • 프로그래머는 항상 최종 책임자임을 유념해야 함

Read Entire Article