EP2. 검토하지 않은 산출물의 무가치론
📢 선언: 성찰하지 않는 생성, 멈춰야 합니다
지난 에피소드에서 우리는 아주 중요한 사실을 확인했습니다. 같은 AI를 쓰더라도 결과가 천차만별인 이유는 모델의 성능이 아니라 사용자의 태도 때문이라는 것을요.
그렇다면 AI를 제대로 지휘하는 '디렉터 B님'의 태도를 딱 한 문장으로 압축하면 무엇일까요? 이번 에피소드는 이 시리즈의 심장이자, 앞으로 여러분의 개발 인생을 바꿔줄 강력한 선언 하나로 시작합니다.
이 시리즈를 관통하는 단 하나의 뼈 때리는 문장이 있습니다.
"The unexamined code is not worth generating."
철학 시간에 졸지 않으셨다면 눈치채셨을 겁니다. 소크라테스의 유명한 명언인 *"The unexamined life is not worth living."*에서 영감을 받은 문장입니다. 끊임없는 질문과 성찰이 없는 삶은 진정한 의미가 없다고 했던 것처럼, 내가 이해하고 검토하지 않은 AI의 결과물 역시 아무런 가치가 없다는 뜻입니다.
💡 잠깐, 여기서 'Code'는 소스 코드만이 아닙니다!
'어? 난 개발자가 아니라 보고서나 슬라이드 쓰려고 AI 쓰는데?' 하시는 분들, 채널 고정해 주세요. Cocrates가 말하는 'Code'는 훨씬 더 넓은 개념입니다.
Cocrates의 세계에서 **'Code'**란, AI를 사용해서 만들고자 하는 모든 최종 산출물을 의미합니다.
- 💻 소스 코드 (당연히 포함됩니다)
- 📝 보고서와 문서
- 📊 발표 자료와 슬라이드
- 📚 블로그 시리즈 (지금 여러분이 읽고 계신 이 글처럼요!)
- 🧠 학습 노트와 요약본
즉, 여러분이 AI에게 궁극적으로 만들어 달라고 요청해서 얻은 모든 결과물이 바로 'Code'입니다.
AI가 뱉어낸 산출물은 언제나 '누구나 쓸 수 있는 평균치'에 가깝습니다. 당신의 구체적인 상황과 맥락을 100% 반영하지 못하죠. 이 평균치를 검토 없이 복사·붙여넣기 하는 순간, 여러분은 산출물의 통제권을 AI에게 통째로 넘겨버리는 셈이 됩니다.
🛠️ 블로그를 예로 드는 뼈대(Architecture)의 중요성
우리는 최종 산출물('Code')을 처음부터 한 번에 찍어내지 않습니다. 먼저 구조를 단단하게 설계하고, 그것을 검토하고 승인한 뒤에야 비로소 알맹이를 채우기 시작하죠.
사실 지금 여러분이 읽고 계신 이 블로그 시리즈도 똑같은 과정을 거쳐 태어났습니다.
[1단계] 시리즈 전체의 큰 그림(overview.md) 설계 ➡️ 검토 및 승인 🔍
⬇️ (이 구조를 근거로 다음 단계 진행)
[2단계] 각 에피소드의 뼈대(outline.md) 설계 ➡️ 검토 및 승인 🔍
⬇️ (이 구조를 근거로 다음 단계 진행)
[3단계] 에피소드별 상세 설계서(episodes.md) 작성 ➡️ 검토 및 승인 🔍
⬇️ (이 구조를 근거로 다음 단계 진행)
[4단계] 드디어 독자가 읽을 에피소드 본문 생성 ➡️ 검토 및 승인 🔍
이것이 바로 Cocrates가 작동하는 방식입니다. 무작정 본문이나 코드부터 쏟아내지 않고, 매 단계마다 뼈대를 만들고, 사용자가 검토하고 승인하게 한 뒤 다음 단계의 확실한 근거로 삼는 것이죠.
🤔 '검토한다'는 것의 진짜 본질
우리는 보통 검토라고 하면 '대충 읽어보고 오타나 에러 없는지 확인하는 것'으로 생각합니다. 하지만 Cocrates가 요구하는 검토의 품격은 다릅니다.
검토(Examine) = 이해 + 판단 + 승인
- 1. 이해 (Understand): AI의 결과물을 보고 "아, 그렇구나" 하고 넘어가는 건 이해가 아닙니다. 다른 대안 대신 왜 이 구조를 선택했는지 파악하고, 내 말로 다시 설명할 수 있을 때 비로소 진짜 이해한 것입니다.
- 2. 판단 (Judge): 이해를 바탕으로 "이게 정말 최선인가?" 결정해야 합니다. 이 설계가 프로젝트의 성능이나 목적에 부합하는지 따져보는 것이죠. 판단 없는 동의는 영혼 없는 끄덕임에 불과합니다.
- 3. 승인 (Approve): 마지막으로 주도권을 쥐고 선언하는 것입니다. "좋아, 내가 확인했으니 이걸로 간다. 이 산출물의 책임자는 나야!" 이 선언이 있어야 비로소 AI가 만든 껍데기가 '내 산출물'이 됩니다.
그래서 검토의 궁극적인 목적은 바로 '무지의 제거(Harnessing Ignorance)'입니다. 내가 뭘 모르는지 명확히 인식하고 그것을 알아가는 과정이야말로 성장의 핵심이니까요.
🦉 Cocrates Harness가 대화를 이끄는 리듬
Cocrates 하네스는 여러분이 검토 없이 날림으로 넘어가는 순간을 절대 그냥 넘기지 않는 깐깐한(?) 페이스메이커입니다.
👤 유저: "귀찮아, 그냥 로그인 모듈 대충 만들어줘!" 🦉 Cocrates: "검토되지 않은 산출물은 생성할 가치가 없습니다. 어떤 방식으로 만들지 구조부터 함께 설계해 볼까요?"
처음에는 이 잔소리가 귀찮게 느껴질 수도 있습니다. "아니, 다른 AI들은 군말 없이 바로 코드 주던데 얘는 왜 이렇게 질문이 많아?" 하고 말이죠.
하지만 기억하세요. 뼈대를 검토하는 데 쓰는 한시간이, 나중에 일주일짜리 밤샘 버그 수정을 막아줍니다. Cocrates는 단순히 답을 주는 자판기가 아니라, 여러분이 주도권을 쥔 디렉터가 되도록 가드레일을 쳐주는 고마운 존재입니다.
📌 오늘의 핵심 요약
- 원칙 선언: "The unexamined code is not worth generating." 검토 없는 생성은 의미가 없습니다.
- Code의 확장: 소스 코드뿐만 아니라 보고서, 슬라이드 등 AI가 만드는 모든 것이 검토 대상입니다.
- 검토의 3단계: 대충 읽기가 아닌, 이해 → 판단 → 승인의 과정을 거쳐야 합니다.
- 무지의 제거: 검토를 통해 내가 모르는 부분을 발견하고 채워 넣는 것이 진짜 성장입니다.
🎬 다음 편 예고
원칙과 철학은 가슴 뜨겁게 이해했습니다. "좋아, 나도 이제 검토하는 개발자가 되겠어!"라는 의지가 불타오르시나요?
그렇다면 이제 행동으로 옮길 차례입니다. Cocrates Harness는 개발 환경에서 opencode plugin이라는 형태로 부드럽게 녹아들어 동작합니다. 설치는 생각보다 정말 간단해요.
다음 에피소드에서는 Cocrates Harness를 내 컴퓨터에 직접 설치하고 첫 대화를 시작하는 방법을 실습과 함께 알아보겠습니다. 진짜 여정의 첫걸음, 다음 편에서 함께 내딛어 보시죠! 🚀
이 시리즈는 Cocrates Harness 프레임워크를 소개합니다. Cocrates는 소크라테스식 대화로 사용자가 주도권을 잡고 성장하도록 설계된 에이전트 하네스입니다.