소프트웨어 3.0 (Software 3.0)
별칭: Software 3.0 · 소프트웨어 3.0 · 자연어 프로그래밍 시대
요약
entity/karpathy 가 제시한 소프트웨어 진화 3단계의 마지막 층. 1.0 = 명시 코드 → 2.0 = 신경망/데이터 → 3.0 = 자연어 프롬프트. 핵심 전환: 개발자의 가장 강력한 레버리지가 타이핑 속도 에서 모델의 컨텍스트 윈도우를 통제하고 채우는 능력 으로 이동.
상세
| 세대 | 인간 역할 | 기계 역할 | 일차 산출물 |
|---|---|---|---|
| 1.0 명시 프로그래밍 | 모든 규칙·예외를 코드로 | 규칙 실행 | 소스 코드 |
| 2.0 신경망/딥러닝 | 데이터셋 큐레이션 + 훈련 | 패턴 학습 | 모델 가중치 |
| 3.0 자연어 위임 | 목표·제약을 자연어로 | 코드·시스템 구현 | 명세(Spec) + 테스트 |
일차 산출물의 역사적 이동: 1.0~2.0 = 소스 코드 자체 / 3.0 = 명세서 + 테스트. AI가 코드를 짜면 인간은 무엇을 만들지(Spec) 와 잘 만들어졌는지(Test) 에 집중.
민주화 효과: 자연어가 보편 인터페이스가 되며 비개발자(저널리스트·생물학자·프롭테크 전문가·교육자)가 직접 소프트웨어를 만든다. 단, 진입 장벽이 사라진 것 이지 설계 부담이 사라진 것 은 아니다.
입증 사례 — Elisa 프로젝트:
- 개발자 1명, 1주일
- TypeScript + Python + React, 코드 39,000줄
- 1,500개 테스트, 76회 커밋
- 인간이 한 일: 아키텍처 설계 + 명세 정의. AI가 한 일: 나머지 타이핑.
방법론
강의에서 이 개념의 활용:
- 01 INT lesson/int-software-evolution: 진화론 표를 띄우고 "여러분이 배운 타이핑이 핵심 역량인가?" 질문.
- 세대 간 연속성 강조: 3.0은 1.0/2.0을 대체 하지 않고 그 위에 쌓인 층 — 메모리 관리·데이터 파이프라인은 여전히 동작.
- 메시지 정착:
- 1.0: 설계 없이는 메모리가 무너진다
- 2.0: 설계 없이는 데이터 파이프라인이 무너진다
- 3.0: 설계 없이는 AI가 폭주한다 → "설계 없이는 코딩이 안된다"
주의사항
- "3.0 = 1.0/2.0 대체" 로 오해하면 위험. 층층이 누적 됐음을 강조.
- Elisa 39,000줄은 아키텍처 설계 선행 이 핵심이라는 점을 같이 말하지 않으면 "AI가 다 했다"는 잘못된 인상.
- "민주화" 단어가 진입 장벽 제거 로만 받아들여지면 안 된다 → concept/vibe-coding 실패 사례로 즉시 균형.