◆ ESSAY

만들고 보니 나만 쓰기 아깝다는 욕심이 생겼다.
두 달을 같이 살아 보니 이 물건은 개발자용이 아니었다. 오히려 나 같은 사람, 그러니까 코드는 못 쓰는데 정리할 지식은 많은 사람에게 필요한 물건이었다. 회의록이 쌓이는 직장인, 공부가 쌓이는 수험생, 자료가 쌓이는 창작자. 그런 사람들이 쓰려면 뭐가 필요할까 고민하기 시작했다.
1) 설치 한 줄을 목표로 npm에 올렸다. 배포의 마지막 버튼은 끝까지 사람 몫이다.
2) 독립 감사를 돌렸더니 100점 만점에 42.7점이었다. 성적표를 그대로 공개한다.
3) 앞으로 고칠 것 아홉 가지를 우선순위와 함께 적어 둔다.
4) 내 시스템에게 내 약점을 물었다. 가장 불편한 지적이 가장 정확했다.
비개발자가 만든 물건이니 기준도 비개발자여서, 설치법을 설명하는 데 한 페이지가 필요하면 실패라고 봤다. 터미널에 한 줄 치면 깔리고 명령어 다섯 개만 익히면 돌아가는 상태, 그게 목표였다.
기준은 설치에서 끝나지 않는다. 안내 문구에 개발 용어가 나오면 안 되고, 시스템이 사람에게 묻는 말은 한국어 보통 문장이어야 하고, 뭔가 잘못됐을 때 "에러 코드 몇 번" 대신 무엇이 왜 안 됐고 어떻게 하면 되는지가 떠야 한다. 1화에서 검은 창 앞에서 느꼈던 그 막막함을 다음 사람은 안 느끼게 하는 것. 비개발자가 만들었기 때문에 쓸 수 있는 관점이다.
지키기는 쉽지 않아서, 만들다 보면 자꾸 설정이 늘고 옵션이 붙었다. 그때마다 3화의 원칙으로 돌아갔다. 빼는 쪽이 이긴다.
npm은 개발자들이 소프트웨어 부품을 올리고 내려받는 세계 최대의 저장소다. 개발자들의 앱스토어라고 보면 된다. 두 달 전까지 npm이 뭔지도 몰랐던 사람이, 어느 날 거기에 자기 패키지를 올리고 있었다.
순서는 이랬다. 먼저 6월 중순에 neurain이라는 이름을 저장소에 등록했는데, 좋은 이름은 선착순이라 제품이 완성되기 전이라도 이름부터 확보하는 게 이 동네의 관행이라고 했다. 그다음 패키지를 꾸리고 첫 배포 버튼을 눌렀고, 버전 번호는 0.1.0-alpha였다. 앞에 붙은 0과 alpha라는 딱지가 아직 완성품이 아니라는 겸손의 표시라는 것도 이때 배웠다.
정확히는 마지막 버튼만 내가 눌렀고, 패키지를 만들고 검증하는 건 클로드와 코덱스가 했다. 세상에 내보내는 배포의 마지막 단계인 2차 인증(2FA)은 처음부터 사람만 누를 수 있게 설계했는데, 3화에서 말한 그 원칙대로 AI는 만들고 검증하되 책임지는 버튼은 사람이 누른다. 휴대폰에 뜬 여섯 자리 숫자를 입력하는 그 몇 초가, 이 프로젝트에서 내가 맡은 역할을 가장 정확하게 보여 주는 장면이라고 생각한다.
터미널에 npx neurain을 치면 내가 만든 패키지가 설치되는 걸 처음 봤을 때의 기분은 설명이 어렵다. 개발자들의 세계에 계정 하나 들고 데뷔한 기분이랄까.
그런데 이 글을 여기서 끝내면 거짓말이 된다.
7월 말에 시스템 전체를 독립적으로 감사시켰다. AI 에이전트 여든두 개를 각자 다른 관점으로 붙여서 내 시스템을 뜯어보게 하되 서로의 결과는 모르게 했고, 나온 지적은 다시 반대편 AI에게 반박하게 시켰다.
발견 84건에 반박에 성공한 지적은 0건, 종합 점수는 100점 만점에 42.7점이었다.
가장 문제가 된 발견은 이거였다. 자동 검색이 일주일 동안 조용히 죽어 있었다. 7월 중순에 보안을 강화하면서 넣은 문자 검사가 줄바꿈과 탭을 위험 문자로 오판했다. 그래서 여러 줄로 된 질문을 던지면 시스템이 내 문서 검색을 통째로 건너뛰었다. 검색을 시도한 대화의 30.5%가 빈손이었다.
문제는 그동안 답이 그럴듯했다는 점이다. 내 뇌를 쓰고 있다고 믿었는데 실은 안 쓰고 있었다. 4화에서 "조용한 실패가 시끄러운 실패보다 위험하다"고 쓴 게 바로 이 사건이다.
감사 보고서의 한 줄 결론이 정확했다.
"기반 공사는 업계 상위권인데, 잘 되고 있다고 믿게 만드는 계층 셋(자동 검색, 성적표, 건강 표시등)이 동시에 고장난 상태."
공정하게 좋은 평가도 있었는데, 데이터를 쓰다 죽어도 깨지지 않게 하는 장치들은 "개인 시스템 기준 업계 상위권"이라는 평가를 받았고 자동 테스트 1,454개는 전원 통과했다. 그러니까 뼈대는 튼튼한데 계기판이 고장 나 있었던 셈이다. 계기판이 고장 난 자동차가 더 위험하다.
같은 세션에서 급한 것 열네 건을 고쳐 추정 점수는 69.7점이 됐지만 그래도 70점이 안 되니, 이게 지금 이 시스템의 정직한 위치다.
감사에서 나온 것과 내가 쓰면서 느낀 것을 합쳐 개선 목록을 정리했다. 우선순위 순이다.
| 순위 | 무엇 | 왜 문제인가 | 상태 |
|---|---|---|---|
| 1 | 나 말고 쓴 사람이 없다 | 한 사람에게 맞춘 시스템은 두 번째 사람에게서 부러진다 | 섭외 준비 완료, 실행만 남음 |
| 2 | 화면이 없다 | 터미널만 있다. 처음 켠 사람을 안내하는 흐름이 없어서 30분을 못 넘긴다 | 미착수 |
| 3 | 밖에서 못 쓴다 | 뇌가 맥북 안에만 있다. 폰으로 접근이 안 된다 | 미착수 |
| 4 | 두 번째 컴퓨터에서는 안전장치가 꺼진다 | 코드에 내 컴퓨터 경로가 박혀 있어서 복원한 볼트에서는 보호가 조용히 해제된다 | 미착수 |
| 5 | 답변이 맞는지는 안 잰다 | 검색이 정답 문서를 찾는지는 재는데, 그걸로 만든 답이 맞는지는 측정하지 않는다 | 미착수 |
| 6 | 문서 하나 고치면 전부 다시 읽는다 | 매 질문이 처음부터 다시 시작이라 몇 초씩 낭비된다 | 미착수 |
| 7 | "이거 아직 맞나" 확인이 밀린다 | 재확인이 필요한 사실이 최장 77일 방치됐다. 지식 시스템의 핵심 약속이 무너지는 지점 | 미착수 |
| 8 | 문서 12,500개에서 막힌다 | 상한을 넘으면 답변이 거부된다. 지금은 여유가 있지만 천장은 있다 | 확인 필요 |
| 9 | 원격 백업 저장소가 없다 | 실수로 이력을 되감으면 결국 복구할 곳이 없다 | 경보만 추가됨 |
이 중에 1번이 가장 중요하다. 나머지 여덟 개는 AI에게 시키면 되는 일이지만 1번만은 AI가 대신 못 하는데, 사람을 만나 앉혀 놓고 써 보게 하고 어디서 막히는지 지켜보는 일이라 그렇다. 실제로 인터뷰 대상 프로필과 60분짜리 진행 스크립트, 질문지까지 다 만들어 놨는데 아직 실행을 못 했다.
솔직히 이유를 알고 있다. 남에게 보여 주는 게 꺼려진다. 두 달을 갈아 넣은 물건인데, 처음 만난 사람이 3분 만에 헤매다 포기하는 장면을 보는 게 부담스럽다. 그런데 그 장면을 안 보면 이 시스템은 영원히 나만의 취미로 남는다.
만든 사람은 자기 물건을 객관적으로 못 보니, 두 달 동안 이 시스템 안을 함께 들여다본 AI에게 칭찬은 빼고 약점만 말하라며 마지막 진단을 시켰다. 아래는 돌아온 답을 손대지 않고 그대로 옮긴 것이다.
Your strength is not where you claim it is. You lead with model portability, but that will be an industry standard in time. What is actually unusual is the measurement culture. It is rare for a personal knowledge tool to have regression tests and a scorecard, and rarer for it to reverse its own decisions when performance drops. Scrapping a sophisticated component on the strength of one measurement, and doubting the scorecard itself, are the evidence. That is a habit rather than a feature, which makes it the hardest thing for anyone to copy.
The most uncomfortable finding was already inside your own documents. One of your evaluation files contains this sentence: "the area where you claim the most differentiation is in reality the most ordinary." I agree. Your memory today is passive. It answers when asked and never volunteers "you need to check this." That is where the 77 days of overdue re-verification comes from. Storage and retrieval are finished. Active management has not started.
The biggest risk comes from success. This system is fitted precisely to one person's way of working, which is why it works well. It is also why it is likely to break on the second user. There really are specific folder names and machine paths baked into the code. Item 4 on your list is that symptom.
The next move is not a feature. What you need now is not a new capability but a second user. Where that person gets stuck will write the next two months of roadmap for you.
내 시스템에게 내 시스템의 약점을 물어보는 일이 가능해졌다는 것 자체가 이 두 달이 헛되지 않았다는 증거다.
앞날이 장밋빛이 아니라는 것도 적어 둔다.
대형 AI 회사들이 무료로, 자동으로, 설정 없이 메모리 기능을 기본으로 붙이기 시작했으니, 시간이 지나면 지금 내가 손으로 만든 것의 상당 부분을 기본 기능이 흡수할 것으로 본다. 개인이 만든 도구가 빅테크의 기본 기능과 정면으로 붙어서 이기는 그림은 냉정하게 말해 없다.
그래도 남는 게 둘 있다.
첫째, 지식이 회사 서버가 아니라 내 파일에 있다. 빅테크의 메모리는 그 회사 계정 안에서만 산다. 서비스를 떠나면 두고 가야 하고 뭘 기억하는지 열어볼 수도 없다. 내 뇌는 폴더째 내 것이다. 열어 볼 수 있고, 백업할 수 있고, 들고 떠날 수 있다.
둘째, 모델을 갈아끼울 자유가 나에게 있다. 그 회사의 메모리는 그 회사의 모델하고만 작동한다. 내 뇌는 어느 회사의 모델을 꽂아도 돈다. 5화에서 본 구글의 지식 포맷 발표에서 드러나듯, 지식을 열린 파일로 두는 방향 자체는 업계가 같은 곳을 보고 있다. 그 방향의 끝에서 갈리는 건 결국 소유권이다. 편해지는 대신 갇힐 것인가, 손이 가는 대신 소유할 것인가.
예상되는 질문 두 개에도 미리 답해 둔다.
"그럼 그냥 대기업 메모리 기능을 쓰면 되지 않나?" 가벼운 취향을 기억시키는 정도라면 그게 맞다. 다만 그 편함은 그 회사 안에서만 유효하다. 몇 년치 맥락을 한 회사에 쌓았는데 더 좋은 모델이 다른 회사에서 나오면, 1화의 그 문제로 정확히 되돌아간다.
"결국 개발을 알아야 가능한 것 아닌가?" 두 달 전의 나는 npm이 뭔지 몰랐고 지금도 코드는 못 읽는다. 필요한 건 개발 지식이 아니라 3화의 프로토콜이었다. 요구하고, 검증시키고, 결정하기. 이건 개발 기술이 아니라 일 시키는 기술이다. 일을 시켜 본 사람이라면 이미 절반은 갖고 있는 능력이다.
이 블로그에 AI 시대라는 글을 쓴 적이 있다. AI가 모든 일을 우리보다 잘하게 되는 시대에 마지막까지 남는 능력은 커뮤니케이션이라고 썼다. 실패한 건 AI가 아니라 질문자라고도 썼다.
그때는 관념이었고, 지금은 실체를 안다.
돌아보면 세 명의 내가 있었다. 1년 전 AI 시대가 온다고 글로만 쓰던 나, 두 달 전 매일 기억을 잃는 비서에게 지쳐서 폴더 하나를 만들던 나, 그리고 지금 그 폴더에 문서 수천 개가 쌓이고 그걸 남에게도 설치해 줄 수 있게 된 나. 셋을 잇는 선은 코딩 실력이 아니다. 1년 전의 내가 관념으로 적었던 바로 그 능력이다.
이 시리즈 전체가 사실 그 문장의 각주였다. 매일 기억을 잃는 비서에게서 문제를 발견했고(1화), 카파시의 메모에서 역할의 역전을 배웠고(2화), 코드 한 줄 못 쓰면서 커밋 518개를 쌓았고(3화), 질문 하나가 내 문서 수천 개를 거쳐 답이 되는 구조를 만들었고(4화), 그 구조에 이름을 붙여 설명서를 썼고(5화), 매일 아침 어제를 이어받는 루틴으로 살고 있다(6화). 이 모든 과정에서 내가 한 일은 코딩이 아니었다. 요구하고, 검증시키고, 결정한 것뿐이다.
공식으로 줄이면 이렇다.
비개발자 개발력 = 질문력 x 검증력 x 결정력
코드는 여전히 한 줄도 못 쓰지만, 코드를 못 쓴다는 게 더 이상 만들 수 없다는 뜻이 아닌 시대가 왔다. 문제를 정의하고 정확히 요구하고 검증을 시키고 결정을 책임질 수 있다면 비개발자도 시스템을 만든다.
매일 아침 기억을 잃던 내 AI 비서는, 이제 매일 아침 어제를 이어받는다.
이 문장 하나를 고쳐 쓰는 데 두 달과 커밋 518개가 들었다. 그리고 42.7점짜리 성적표와 아홉 개의 숙제가 남았다. 다음 시리즈는 그 숙제를 하나씩 지워 가는 이야기가 될 것이다.