-
AI 보조를 활용한 소프트웨어 작성 과정을 ‘자동 프로그래밍’이라 정의하며, 이는 곧 일반적인 개발 방식으로 자리 잡을 것이라는 관점
- 동일한 LLM(대형 언어 모델) 을 사용하더라도, 인간의 직관·설계·지속적 개입에 따라 결과가 크게 달라짐
- 단순히 AI가 전적으로 코드를 생성하는 ‘바이브 코딩(vibe coding)’ 은 이해 없이 결과를 얻는 과정으로, 자동 프로그래밍과 구분됨
- 자동 프로그래밍은 개발자의 비전과 품질 기준을 중심으로 AI를 도구로 활용해 코드를 생산하는 형태
- 인간의 아이디어와 통제력이 여전히 핵심이며, “프로그래밍은 자동화되었지만 비전은 아직 자동화되지 않았다” 는 결론
자동 프로그래밍의 개념
-
AI 보조를 통한 소프트웨어 작성을 ‘자동 프로그래밍’이라 명명
- 이는 단순한 실험이 아니라, 앞으로 일반적인 소프트웨어 개발 과정으로 자리 잡을 것으로 언급
- 같은 LLM을 사용하더라도, 인간의 직관·설계·지속적 조정이 결과에 큰 영향을 미침
- 인간이 주도적으로 방향을 제시할 때와 그렇지 않을 때의 결과가 현저히 다름
바이브 코딩(vibe coding)과의 차이
-
바이브 코딩은 사용자가 단순히 원하는 기능을 대략적으로 설명하고, AI가 자율적으로 코드를 생성하는 방식
- 사용자는 결과가 기대와 다를 때만 피드백을 제공
- 반면 자동 프로그래밍은 개발자가 무슨 일이 일어나는지 이해하고 통제하며, AI를 협력 도구로 활용
코드 소유권과 인간의 역할
- LLM의 사전 학습 데이터는 인간이 만든 것으로, AI가 생성한 코드도 인간의 집단적 지식에 기반함
- 따라서 개발자는 AI가 생성한 코드를 자신의 산출물로 간주할 권리가 있음
- 이러한 데이터는 집단적 선물(collective gift) 로, 개인이 새로운 것을 창조할 수 있게 하는 기반 역할
자동 프로그래밍의 목표와 가치
- 자동 프로그래밍은 고품질 소프트웨어를 개발자의 비전과 설계 원칙에 따라 구현하는 과정
- 세부 함수 수준부터 전체 구조까지, 개발자가 AI의 출력을 세밀히 조정
- 핵심은 무엇을 만들지 결정하는 인간의 판단이며, AI는 이를 보조하는 역할
결론: 비전의 중요성
- Redis 사례를 들어, 기술적 요소보다 아이디어와 비전이 소프트웨어의 가치를 결정한다고 강조
- Redis 초기에는 특별한 기술 혁신이 없었지만, 명확한 설계 철학이 성공의 요인이 되었음
-
프로그래밍은 자동화되었지만, 비전은 아직 자동화되지 않았다는 문장으로 글을 마무리