23장. 도반(道伴), 당신의 공동연구자를 지도하는 법

같은 길을 걷는 동반자로서. 도반(道伴)은 한국 불교 전통에서 유래한 말로, 같은 길을 함께 걷는 수행의 동반자를 뜻한다. 본래 영적인 맥락에서 쓰이지만 서로를 지지하고 배움을 나누며 더 높은 목표를 향해 나아가는 사람들을 가리키는 표현이기도 하다. 우리 연구실은 발견과 혁신, 지적 성장의 여정을 함께하는 과학적 동반자들이 모인 곳이다. 각자가 서로의 도반으로서 기여하고 함께 성장한다. 오후에 세 사람과 차례로 면담이 잡혀 있다고 하자. 첫 번째는 공개 데이터 재분석으로 방법을 익히는 학부 연구생 1년차이고 두 번째는 첫 주저자 원고를 준비하는 대학원 3년차이며 세 번째는 독립 과제를 준비하면서 후배도 지도하는 박사후연구원이다. 세 사람이 지금 붙들고 있는 문제는 서로 겹치지 않는다. 앞 면담에서 다음 면담으로 넘어가는 사이에 머릿속의 맥락을 통째로 갈아 끼워야 하고 갈아 끼우는 데 실패하면 면담의 앞부분은 지난번에 무엇을 합의했는지 되묻는 데 쓰이고 되묻는 시간이 길어질수록 오늘 내려야 할 결정은 다음으로 밀린다. 사람에 관한 기록을 한곳에 모으면 이 문제가 풀릴 것 같지만 실제 운영은 반대로 갔다. 학위와 행정 서류의 파일 위치와 처리 상태를 담는 작업 공간이 하나 있고 연구 주제와 담당과 역량과 멘토링 판단은 문헌 위키의 registry가 소유한다. 세 사람은 합성 사례다. 여러 연구실에서 반복해서 나타나는 상황을 합쳐 만들었고 이름 대신 마이클, 스테판, 오타니로 부른다. 사람에 관한 기록에서 실제 인물의 조합을 쓰면 식별 정보를 지워도 당사자는 알아본다. 시스템의 구조와 반복되는 원칙은 실제 운영에서 가져오되 사람과 기관에 관한 것은 합성한다는 규칙을 파트 3 전체에 적용한다.

지도교수는 토요일 아침이 두렵다

토요일 아침은 적막하다. 모처럼 쉬려고 의자에 앉으면 지난 한 주 동안 못다 한 생각들이 스멀스멀 올라온다.

“이 논문은 어떻게 진행되고 있지?”, “실험 결과는 잘 나왔나?”, “분명 랩미팅과 개인 미팅 때 전달받았는데, 왜 기억이 안 나지?”, “그때 스테판 학생이 보낸 자료는 어디에 있지?”

노화가 오는 것이 아니라 내가 노화에게 간다. 최근 들어 기억하지 못하는 일이 너무 많아졌다. 연구도 해야 하고 행정과 잡일도 쌓여 있는데, 아이들도 키워야 하고 빚도 갚아야 한다. 오만 생각을 하다 보면 논문 어느 문장에 무슨 내용을 썼는지도 도무지 기억이 나지 않는다. 논문만 쓰던 그 찬란했던 예전이 좋았다. 그래서 토요일 아침이 두렵다.

“학생에게 카톡을 할까 말까?” “카톡을 보내면 꼰대처럼 보이겠지.”

그러다가도 눈을 질끈 감고 카톡을 보낸다.

“지금 당장 읽어 달라는 것은 아니나… 생각난 김에 남겨 봐요….”

노화와 기억에 관한 핑계고의 한 장면

“내가 노화에게 간다.” 출처: YouTube 〈핑계고〉.

지도교수가 맥락을 잃는 일은 기억력과 노화의 문제이기도 하지만, 많은 부분은 저장 위치의 문제이기도 하다. 한 사람의 분석 진행 상황은 그 분석 과제를 소유한 작업 공간에 있고 그 사람이 쓰고 있는 원고의 최신본은 원고를 소유한 작업 공간에 있고 지난 면담에서 정한 다음 할 일은 이메일이나 메신저에 있고 지금 어느 과제에서 어떤 역할을 맡았는지는 사람에 관한 기록이 따로 소유한다. 네 조각을 모아야 다음 대화가 시작되는데 각 공간은 자기가 소유한 질문에만 답하므로 조립은 매번 사람의 머릿속에서 일어난다. 조립에 실패하면 지난번에 무엇을 합의했는지 다시 묻게 되고 상대는 이미 보고했다고 생각한 내용을 처음부터 다시 설명한다. 맡은 사람이 여럿이면 조립 실패의 빈도는 사람 수에 비례해 늘고 반복되는 실패는 세 가지 결과를 낳는다. 첫째는 같은 피드백의 반복이다. 지난 면담에서 지적한 것을 기억하지 못하면 이번에도 같은 지적을 하게 되고 받는 쪽에서는 고쳤는데도 같은 말을 듣는 상황이 된다. 둘째는 한 번의 관찰이 오래된 인상으로 굳는 일인데, 어느 시기에 진행이 늦었던 사람은 그 뒤로 얼마나 나아졌든 늦는 사람으로 남고 인상을 뒤집을 근거가 기록되어 있지 않으므로 뒤집힐 기회도 없다. 셋째는 관심의 편중이다. 자주 찾아오고 자주 보고하는 사람의 맥락은 저절로 복원되지만 조용히 일하는 사람의 맥락은 복원되지 않아 결국 지도의 밀도가 달라진다.

목표를 잘못 잡기도 쉽다. 맥락을 잃지 않으려면 더 많이 기록해야 한다고 생각하면 면담 녹취와 메일 사본이 쌓이고 쌓인 만큼 다시 읽지 않게 된다. 필요한 것은 다음 대화를 정확한 지점에서 다시 시작하게 하는 최소한의 상태다. 그 상태는 네 가지로 압축된다. 지금 무엇을 맡고 있는가, 최근에 실제로 만든 것은 무엇인가, 반복해서 필요한 도움은 무엇인가, 다음에 무엇을 보면 다음 단계로 넘어갈 수 있는가. 면담의 첫 문장이 지난번에 정한 확인 지점을 묻는 질문이면 정확한 지점에서 시작한 것이다. 지난 면담에서 실행 결과와 실패 원인 세 줄을 다음 확인 지점으로 정했다면 이번 면담은 그 세 줄을 앞에 놓고 시작한다. 세 줄이 없으면 왜 없는지가 첫 안건이 되고 있으면 그 내용이 첫 안건이 된다. 어느 쪽이든 면담은 결정할 것을 이미 앞에 두고 출발한다.

도반의 맥락을 읽고 관찰과 해석과 지도 행동을 나누는 흐름

면담 전에는 이메일, 원고, 분석 상황, 역할 기록을 모아 시작점을 복원한다. 면담에서 생긴 관찰, 해석, 지도 행동은 네 칸으로 나누고 각 정보는 owner 문서로 되돌린다.

학생별 기록의 여섯 층

어떤 사실에 대해 현재 값을 소유하는 문서를 하나로 정하고 나머지 문서는 그 문서를 가리키게 하는 규칙을 SSOT(single source of truth)라고 부른다. 우리말로는 정본에 해당한다. 그 사실을 소유한 문서를 그 사실의 owner라고 부른다. 규칙이 필요한 이유는 같은 사실이 두 곳에 적히는 순간 한쪽만 고쳐지기 때문이다. 어떤 사람의 현재 역할이 면담 노트와 과제 문서 양쪽에 적혀 있고 역할이 바뀌었을 때 한쪽만 고쳤다면 그 뒤로는 어느 쪽이 맞는지 아무도 모른다. SSOT와 owner의 정의는 이 장이 소유하고 이후 장에서는 각자의 맥락에 적용만 한다. 학생별 기록을 한 파일에 몰아넣으면 반대 방향의 문제가 생긴다. 연락처, 현재 역할, 합류 계획, 최근 산출물, 지도하면서 관찰한 것, 원고 이력이 한 문서에 섞여 있으면 그 문서는 사람에 관한 신상 자료가 되고 목적이 다른 정보가 한 자리에 모이면 보존 기간도 접근 권한도 정할 수 없다. 연락처는 오래 유지해야 하지만 지도하면서 세운 잠정적 해석은 근거가 바뀌면 지워야 하고 원고 이력은 과제가 끝나면 과제 쪽에 남아야 한다. 층을 나누는 기준은 그 정보를 언제 고치고 언제 지우는가이고 실제 운영의 registry는 여섯 층으로 갈라져 있다.

기록 층 담는 것 담지 않는 것
연락처와 식별 정보 검증된 연락처와 공식 소속 성격 평가와 과제에 대한 해석
현재 담당 지금 어느 과제에서 어떤 역할인지, 누가 owner이고 누가 지원인지 지난 역할을 현재 책임처럼 굳힌 정보
새 과제 인선 판단 후보가 맡을 연구 갈래, 필요한 지원, 확인한 근거 최근 산출물에서 확인되지 않은 인상
신규 합류 계획 처음 얼마간의 읽기, 환경 설정, 작은 산출물 모든 사람에게 똑같이 적용하는 획일적 일정
개인별 근거 기록 지금 읽는 것, 지금 하는 일, 익힌 방법, 날짜가 붙은 근거 확인되지 않은 소문과 사생활 추정
작업 습관과 멘토링 개입 반복 관찰, 배정할 때의 주의점, 시도한 개입 진단, 낙인, 고정된 인격 묘사

여섯 층이 문헌 위키 안에 있는 데는 이유가 있다. 사람에 관한 판단은 그 사람이 무엇을 읽고 무엇을 만들었는지에 붙어 있고 논문과 연구 주제는 이미 그 위키가 소유한다. 반면 학위 서류와 행정 서류는 파일이 어디 있고 처리가 어디까지 갔는지만 알면 되므로 별도의 작업 공간이 맡는다. 그 서류 작업 공간의 규칙 문서는 전체 작업 공간 가운데 가장 얇고 연구 지도에 관한 판단은 여기에 두지 않는다고 스스로 문서에 선언한다. 분석 작업 공간은 분석을, 원고 작업 공간은 원고를 정본으로 관리하고 학생 지도와 닿는 접점은 다음 사람이 이어받을 수 있게 넘기라는 인계 문서 규칙과 원고 로그에 남기는 확인 항목뿐이다. 사람에 관한 기록을 성격에 따라 갈라 두면 각 층이 서로 다른 속도로 갱신되고 서로 다른 규칙으로 지워진다. 갈라 두지 않으면 가장 민감한 층의 보존 규칙이 나머지 전부에 적용되거나 가장 느슨한 층의 접근 범위가 나머지 전부에 적용된다. 지도 중인 구성원 한 명을 골라 30분 안에 문서 하나를 만들어 보면 어느 층이 비어 있는지 드러나는데 실제 이름 대신 임의의 식별자를 쓰고 문서는 자기 작업 공간 안에 둔다.

  1. 지금 맡은 과제와 역할을 한 줄로 적고 그 사실의 owner가 어느 기록인지 함께 표시한다
  2. 확실하지 않으면 확실하지 않다고 적는다

이메일과 메신저와 면담 노트는 증거가 될 수 있지만 그 자체를 현재 상태로 삼지 않는다. 메일에 적힌 역할은 그 메일을 쓴 시점의 역할이고 그 뒤에 바뀌었는지는 메일이 알려 주지 않는다. 원자료는 무슨 일이 있었는지를 증명하고 owner 문서는 지금 무엇이 참인지를 말한다. 두 층을 섞으면 가장 최근에 읽은 메일이 현재 상태가 된다. 파트 3 전체가 반복하는 순환은 흩어진 원자료에서 출발해 owner를 식별하고 에이전트가 모으고 빠진 것을 찾고 사람이 판단하고 판단의 결과를 다시 owner 문서로 되돌리는 형태다. 여섯 단계 중에서 사람이 반드시 맡아야 하는 단계는 네 번째와 다섯 번째다. 앞의 세 단계는 규칙이 분명하고 양이 많아 에이전트가 하는 편이 정확하고 마지막 단계는 사람이 정한 결과를 받아 적는 일이므로 초안을 맡길 수 있다. 순환이 한 바퀴 돌 때마다 owner 문서가 갱신되고 갱신된 문서가 다음 바퀴의 출발점이 된다. 순환이 끊기는 자리는 대체로 마지막 단계인데, 결정은 났지만 어디에도 적히지 않아 다음 바퀴가 다시 첫 단계에서 시작한다.

개인별 기록에 남기는 것

개인별 기록의 형식도 고정되어 있다. 지금 읽고 있는 것, 지금 하는 일, 익힌 방법, 날짜가 붙은 근거 기록, 배정할 때의 주의점, 확인이 필요한 항목으로 이루어진다. 최근에 그 사람이 실제로 만든 산출물은 세 개까지 적고 각각 언제 확인했는지를 함께 남긴다. 근거로 삼는 것은 확인할 수 있는 산출물이어야 한다. 논문을 읽었다는 기록보다 그 논문의 핵심 질문을 자기 말로 설명한 한 장짜리 문서가 근거가 되고 방법을 배웠다는 기록보다 자기가 정한 조건에서 돌린 결과와 실패 원인이 근거가 된다. 마이클의 다음 확인 지점은 재분석 결과를 한 장짜리 질문 문서로 만드는 것이며, 문서가 나오면 재분석 결과를 연구 질문으로 바꾸는 과정을 확인할 수 있다. 확인할 산출물이 없으면 해당 항목을 비워 둔다. 협업이 원만하다거나 글쓰기가 아직 부족하다는 식의 문장은 어느 산출물에서 나왔는지 물으면 답할 수 없고 억지로 채운 그런 서술은 나중에 근거 없이 인용된다. 오래된 관찰을 현재 상태로 이어 쓰지 않으려고 기록에는 신선도 표시를 붙이고 일정 기간이 지나면 항목을 재검토 필요 상태로 바꾼다. 해당 항목은 다시 확인한 근거가 생겨야 현재 상태로 갱신한다. 반년 전에 확인된 것은 반년 전의 상태이고 그 뒤로 근거가 갱신되지 않았다면 지금은 모른다고 적는 편이 정확하다.

관찰과 해석과 지도 행동의 분리

묻는 것 마이클의 경우
관찰 언제 어떤 산출물이나 행동을 확인했는가 재분석 절차를 끝내고 자기 방식으로 그린 분석 흐름도를 가져왔다
해석 그것이 무엇을 시사할 수 있는가 절차의 이해는 진전됐지만 결과를 질문으로 되돌리는 경험은 아직 확인되지 않았다
지도 행동 어떤 발판을 놓을 것인가 재분석 결과에서 해석이 갈리는 지점을 하나 골라 질문 형태로 쓰게 한다
다음 확인 지점 무엇을 보면 넘어갈 수 있는가 한 장짜리 질문 문서와 그 질문을 구분할 분석 한 줄

지도 기록의 최소 단위는 네 칸이다. 무엇을 보았는가, 그것이 무엇을 시사할 수 있는가, 그래서 어떤 발판을 놓을 것인가, 무엇을 보면 다음 단계로 넘어갈 수 있는가. 네 칸을 한 문장에 붙여 쓰면 관찰과 해석이 섞이므로 칸을 나눈 채로 적는다. 나누는 데 드는 수고는 한 줄에 몇 초 정도이고 나누지 않아서 생기는 비용은 몇 달 뒤에 청구된다. 관찰과 해석을 붙여 쓰면 해석이 사실의 지위를 얻는다. 흐름도를 가져왔다는 관찰은 다시 확인할 수 있지만 이해가 진전됐다는 해석은 관찰자의 판단이고 틀릴 수 있다. 두 칸을 나누어 두면 나중에 해석만 교체할 수 있고 관찰은 그대로 남아 다음 해석의 재료가 된다. 붙여 쓴 기록은 해석이 틀렸을 때 관찰까지 함께 버리게 만든다. 사람에 관한 기록에서 그 손실은 특히 큰데, 관찰은 그 사람이 실제로 한 일이고 지워지면 그 사람의 이력에서 사라지기 때문이다.

해석에는 언제 버릴지를 함께 적는다. 절차 이해는 됐지만 실행 경험이 확인되지 않았다는 해석이라면 실행 결과와 실패 원인을 스스로 정리해 오면 이 해석을 버린다고 적어 둔다. 확인 항목에는 다섯 개의 상태 라벨 중 하나를 붙인다. 확인됨, 불일치, 미확인, 보류, 재실행 필요다. 라벨을 다섯 개로 벌려 둔 이유는 확인하지 못한 것을 이상 없음으로 적지 않기 위해서다. 시간이 없어 보지 못한 항목과 봤는데 어긋난 항목은 다음 면담에서 다르게 다뤄야 하는데 라벨이 둘뿐이면 두 상황이 미확인 하나로 뭉개진다. 네 칸에서 에이전트가 할 수 있는 일과 사람이 해야 하는 일도 갈린다. 흩어진 날짜와 산출물을 모아 관찰 칸의 후보를 만드는 일, 같은 기간에 서로 어긋나는 기록이 있으면 표시하는 일, 지도 행동은 적혀 있는데 확인 지점이 비어 있는 줄을 찾아내는 일은 에이전트가 한다. 해석이 타당한지, 개입을 얼마나 강하게 할지, 지금 어느 축의 발판이 필요한지는 사람이 정한다. 경계를 정하는 기준은 결과를 감당하는 쪽이 누구인가이고 해석이 틀렸을 때 곤란해지는 쪽은 기록된 사람과 지도하는 사람이다.

  1. 반복해서 필요했던 도움을 한 줄로 적고 그 줄이 관찰인지 해석인지 표시한다
  2. 해석으로 표시한 항목마다 무엇을 보면 그 해석을 버릴지 한 줄로 적는다
  3. 아직 닫히지 않은 확인 항목을 나열하고 각각에 확인됨, 불일치, 미확인, 보류, 재실행 필요 중 하나를 붙인다

미팅 전 현재 상태의 복원

면담 준비는 상태를 다시 조립하는 일이다. 조립에 필요한 조각은 네 개다. 지금 맡은 과제와 그 안에서의 역할, 직전 면담에서 내린 결정, 그 뒤로 실제로 만들어진 산출물, 아직 닫히지 않은 질문. 네 조각은 서로 다른 작업 공간에 있고 각각 다른 문서가 owner다. 어느 공간에 들어가든 읽는 순서는 같다. 얇은 지침 파일에서 강제 규칙과 어디로 갈지를 읽고 지도 문서에서 무엇이 어디에 있는지 확인하고 변경 이력에서 최근에 무엇이 바뀌었는지 보고, 마지막에 해당 owner 문서를 연다. 어느 공간에 들어갈지를 작업 문구나 날짜나 인접한 폴더 이름으로 추측하지 않는다. 확인한 뒤에도 모호하면 묻고 넘어가는데 사람에 관한 기록에서 잘못된 공간을 열면 다른 사람의 맥락을 그 사람의 것으로 읽게 된다. 여러 공간을 읽더라도 이번 작업의 주인은 하나다. 준비 문서를 만드는 일이면 그 문서를 소유한 공간이 파일명과 배치와 완료 기준을 정하고 나머지 공간은 근거와 원자료와 제약만 공급한다.

  1. 다음 면담의 목적을 한 문장으로 쓰고 확인 가능한 다음 지점을 하나 정한다
  2. 문서를 다시 읽으며 확인 시점이 오래된 항목에 재검토 필요 표시를 붙인다

조립한 다음에 할 일은 사실을 두 종류로 나누는 것이다. 기록만으로 확인되는 사실과 본인에게 물어야 확인되는 사실은 면담에서 다르게 다뤄야 한다. 기록에 있는 것을 면담에서 다시 물으면 시간이 낭비되고 기록에 없는 것을 있다고 가정하면 잘못된 전제 위에서 결정이 내려진다. 서로 어긋나는 기록이 나왔을 때 에이전트가 그럴듯한 쪽을 골라 하나로 합치게 두면 안 되고 충돌은 충돌인 채로 남겨 면담에서 확인할 질문으로 바꾼다. 면담의 목적도 하나로 좁혀 둔다. 진행 상황을 보고받는 것인지, 과학적 결정을 내리는 것인지, 막힌 문제를 푸는 것인지, 원고에 피드백을 주는 것인지에 따라 미리 읽을 것과 부를 사람과 걸리는 시간이 달라진다. 넷을 한 시간 안에 모두 다루려 하면 대체로 진행 보고만 남고 결정은 다음으로 밀린다. 조립한 준비 문서는 한 장을 넘기지 않는다. 들어가는 것은 지금 맡은 과제와 역할 한 줄, 직전 면담의 결정과 그 뒤에 확인된 산출물, 오늘 내려야 할 결정 한 줄, 확인이 필요한 질문 몇 줄이고 각 항목이 어느 owner에서 왔는지도 함께 표시한다. 변경 이력은 최근 결정을 복원하는 데 쓰고 현재 값을 정하는 데 쓰지 않는데 로그는 그때 무엇을 했는지를 말할 뿐 지금 무엇이 참인지를 말하지 않기 때문이다. 세션을 새로 열 때마다 지침과 registry를 다시 읽고 이전 세션의 요약을 이어 쓰지 않는 규칙도 같은 이유에서 나왔다. 준비 문서가 제 몫을 하는지는 새 세션을 시작한 에이전트에게 그 문서만 주었을 때 다음 면담에서 확인해야 할 질문 목록과 아직 근거가 없는 항목을 골라낼 수 있는가로 정해진다. 해석을 버릴 조건을 적는 줄이 비어 있으면 기준을 통과하지 못한다. 반증 조건이 없는 해석은 에이전트가 사실로 취급하고 사실로 취급된 해석은 다음 요약에서 더 단정적인 문장이 되어 돌아온다.

미팅 후에 남길 것과 남기지 않을 것

면담이 끝나면 그때 작업 폴더에 메모 파일을 하나 만들고 싶어진다. 실제 운영은 그것을 명시적으로 금지한다. 진행 메모, 변경 기록, 피드백 정리를 작업 폴더 루트에 만들지 않고 위키의 로그 문서에 덧붙인다. 금지하는 이유는 두 가지다. 작업 폴더는 지금 무엇을 제출하는지가 몇 초 안에 보여야 하는 자리인데 메모가 쌓이면 산출물이 그 사이에 묻히고 로그가 폴더마다 흩어지면 한 사람의 이력을 시간축으로 읽을 수 없게 된다. 로그 항목의 형식도 고정되어 있다. 무엇이 이 작업을 촉발했는지, 그때 원본이 어떤 상태였는지, 무엇을 실행했는지, 무엇을 확인했는지, 무엇을 발견했는지, 무엇을 결정했는지, 무엇이 남았는지, 어떤 산출물이 나왔는지를 적는다. 여덟 항목 가운데 면담 기록에서 가장 자주 빠지는 것은 무엇을 확인했는지와 무엇이 남았는지다. 두 항목이 빠진 기록은 결정만 남기고 결정만 남은 기록은 다음 면담에서 무엇을 물어야 할지 알려 주지 않는다.

나온 내용은 성격에 따라 다른 owner로 간다. 과제의 결정과 할 일은 과제를 소유한 공간의 로그로 가고 원고에 관한 결정은 원고 쪽으로 가며 사람에 관한 기록에는 장기적으로 다시 필요할 것만 남는다. 같은 내용을 세 곳에 적으면 세 곳이 서로 다른 속도로 낡는다. 사람에 관한 기록에 남길 것은 네 가지로 좁힌다. 바뀐 역할, 이번에 확인된 기술, 성장의 근거가 되는 산출물, 아직 닫히지 않은 확인 항목이다. 일회성 실수와 감정이 오간 대화는 남기지 않는데 남기면 그 사람의 특성처럼 읽히기 때문이다. 어떤 항목을 남길지 망설여질 때 던지는 질문은 하나다. 반년 뒤에 이 사람의 다음 발판을 정할 때 이 항목이 필요한가. 결정을 적을 때는 무엇을 근거로 그렇게 정했는지 한 줄을 붙이는데 근거가 없으면 몇 달 뒤에 같은 논의가 다시 열리고 대체로 처음과 같은 결론에 같은 시간을 들여 도달한다. 뒤집힌 결정도 지우지 않고 뒤집혔다고 표시한 채 남기고 할 일에는 누가 하는지와 무엇을 내놓는지와 언제까지인지와 무엇을 보면 끝난 것으로 볼 것인지를 함께 붙인다.

분석을 소유한 작업 공간은 이 규칙을 최상위 배치로 굳혀 두었다. 규칙 파일 하나와 위키 하나가 위에 있고 그 아래로 프로젝트 폴더가 작업 단위로 늘어선다.

Projects/
├── AGENTS.md                    강제 규칙과 위키 진입점
├── wiki/
│   ├── index.md                 지도와 현재 규칙 라우터
│   ├── conventions.md           폴더 레이아웃과 파일명
│   ├── references.md            공용 자료 registry와 중복 제거 규칙
│   ├── projects.md              프로젝트별 정체와 상태와 정본 데이터
│   ├── lint.md                  문서와 파일 시스템의 정합성 점검
│   ├── log.md                   위키 구조 변경 이력
│   ├── project-guides/          프로젝트별 세션 라우터
│   └── project-logs/            프로젝트별 대화와 작업 로그 (덧붙이기만)
└── {프로젝트}/                   작업 단위

폴더 이름은 실제 운영에서 쓰는 것을 옮긴 예시이고 독자는 자기 업무에 맞는 이름을 쓰면 된다. 이 배치가 다른 작업 공간과 갈라지는 자리는 마지막 두 줄이다. 프로젝트별 가이드는 그 프로젝트의 세션이 무엇부터 읽어야 하는지를 담고 프로젝트별 로그는 그 프로젝트에서 오간 대화와 작업을 덧붙이기만 한다. 이 작업 공간은 입력 자료와 스크립트와 결과와 원고에 더해 사용자와 나눈 대화를 원자료 층에 넣고 그 대화를 전량 로그로 남긴다. 대화를 원자료로 두면 그 안의 판단은 아직 검증되지 않은 상태로 남고 검증을 통과한 결론만 프로젝트 문서로 올라간다. 로그는 프로젝트에 속한 것과 프로젝트와 무관한 것으로 갈리고 어느 쪽도 이미 적힌 줄을 고치지 않으며 분석 폴더 루트에는 로그 파일을 만들지 않는다. 공용으로 쓰는 자료는 정본 한 곳에서 경로로 읽고 프로젝트로 복사하지 않는데 동기화 서비스가 symlink를 사본으로 평탄화하므로 중복을 막는 수단이 정본과 경로 참조밖에 남지 않기 때문이다. 위키가 담는 것은 무엇이 어디에 있고 어떻게 일하는지까지이고 분석의 결론은 각 프로젝트 문서가 소유한다. 프로젝트가 커지면 그 폴더가 자기 규칙 문서와 자기 위키를 갖고 프로젝트 안의 라우터가 오히려 혼란을 만드는 경우에는 중앙의 프로젝트별 가이드만 두고 로컬 문서를 두지 않는다.

따라해보기

아래 블록은 AI 도구의 채팅창에 그대로 붙여 넣는 프롬프트다. 분석 작업 공간을 처음 세울 때 쓰는 프롬프트다. 꺾쇠 안은 자기 경로와 이름으로 바꾼다.

<분석 작업 폴더 경로>에 분석 작업 공간의 골격을 만들어 줘.
- 최상위에 AGENTS.md 하나와 wiki/ 하나를 두고 나머지는 프로젝트 폴더로 둔다
- wiki/에 index.md, conventions.md, references.md, projects.md, log.md를 만든다
- wiki/project-guides/와 wiki/project-logs/를 빈 폴더로 만든다
- index.md에는 각 문서가 어떤 사실을 소유하는지 한 줄씩 적는 표만 넣는다
- AGENTS.md에는 다음 네 줄을 강제 규칙으로 적는다
  1. 공용 자료는 <공용 자료 정본 경로>에서 경로로 읽고 프로젝트로 복사하지 않는다
  2. 프로젝트 폴더 안에 진행 메모, 변경 기록, 피드백 파일을 만들지 않는다
  3. 작업 기록과 나와 나눈 대화는 wiki/project-logs/ 아래 해당 파일에 덧붙이기만 한다
  4. 세션을 시작하면 AGENTS.md, wiki/index.md, 해당 프로젝트 로그의 최근 항목을
     이 순서로 읽는다
- 만들 파일과 폴더의 목록을 먼저 보여주고 내 승인을 기다린 뒤에 만든다

원고를 함께 쓰는 순환

원고 지도는 되돌아가기 쉬운 작업이다. 같은 지적이 여러 번 나오고 고쳐졌는지 확인되지 않은 채 다음 판이 오고 구두로 합의한 것이 다음 판에 반영되지 않는다. 스테판은 첫 주저자 원고를 준비하는 단계이고 반복해서 필요한 도움은 결과를 나열하는 것과 주장을 구성하는 것의 구분이다. 결과가 많은 원고는 대체로 그림 순서가 결과를 얻은 순서를 따라가고 주장의 순서와 어긋난다. 지도가 문장 다듬기로 흘러가면 어긋남은 그대로 남는다. 한 판을 도는 순서는 여섯 단계다.

  1. 현재 원고 판본과 그림이 말하는 이야기를 확인한다.
  2. 이번 판에서 바꿀 주장, 그림, 분석의 범위를 먼저 고정한다.
  3. 문장 취향을 빼고 피드백을 근거, 논리, 담당, 기한으로 분류한다.
  4. 새 판본과 변경 요약을 함께 받는다.
  5. 지난 요구가 실제로 해결되었는지 두 판본을 나란히 놓고 비교한다.
  6. 같은 병목이 반복해서 확인될 때만 사람에 관한 기록의 멘토링 층을 갱신한다.

세 번째 단계가 지도의 질을 가른다. 원고가 부족하다는 말은 다음에 무엇을 해야 할지 정해 주지 않는다. 두 번째 그림의 결과가 서론의 중심 주장을 직접 지지하지 않으므로 주장을 좁히거나 분석을 하나 더한다는 말은 다음 행동을 정한다. 피드백을 근거와 논리로 나누면 어느 쪽이 부족한지가 드러나는데 근거가 부족하면 분석을 더하고 논리가 부족하면 주장을 고친다. 스테판의 다음 확인 지점은 주장과 증거를 대응시킨 지도의 초안인데, 19장에서 다룬 대응 관계를 원고 단위로 적어 두면 세 번째 단계가 훨씬 빨라진다. 두 번째 단계를 건너뛰면 한 판에서 모든 것을 고치려 하게 되고 주장과 그림과 분석을 한꺼번에 손대면 무엇 때문에 나아졌는지 알 수 없다. 고정된 범위 밖에서 발견한 문제는 그때 고치지 않고 열린 항목으로 적어 두는데 적어 두지 않으면 다음 판에서 새로 발견된 것처럼 다시 나온다. 같은 지적이 반복되는 원인 중 상당수가 여기에 있다.

원고를 소유한 작업 공간은 원고만 정본으로 관리한다. 그 공간이 학생 지도와 닿는 지점은 두 개뿐인데, 다음 사람이 이어받을 수 있는 형태로 넘기라는 인계 문서 규칙과 원고 로그에 남는 확인 항목이다. 대신 그 공간은 판본을 다루는 규칙을 촘촘하게 갖는다. 받은 원본은 작업 단위 폴더 안의 원본 폴더에 두고 덮어쓰지 않으며 파생본은 새 이름으로 만든다. 지금 제출하는 판본은 작업 폴더의 루트에 두고 초안 폴더 아래에 숨기지 않으며 새 판본이 나오면 직전 판본을 같은 레벨의 지난 판본 폴더로 밀어내고 중간 산출물은 그 아래나 작업 공간 밖의 임시 폴더로 보낸다. 규칙이 이렇게 촘촘한 이유는 되돌리기 수단이 동기화 서비스의 버전 기록뿐이기 때문이다. 이 전제가 규칙 전체를 지배해서 덮어쓰기 전에 먼저 읽고 무엇을 바꿀지 보이고 승인을 받는 순서가 모든 작업 공간에서 같다. 학생이 보낸 판본을 열어 그대로 고쳐 저장하는 습관은 이 순서를 통째로 건너뛴다.

학생마다 다른 순환의 설계

세 사람에게 같은 방식을 적용하면 셋 중 하나에게만 맞는다. 마이클에게 필요한 것은 무엇을 왜 하는지의 연결이고 스테판에게 필요한 것은 결과 나열과 주장 구성의 구분이며 오타니에게 필요한 것은 연구 범위를 스스로 정하고 시간을 배분하는 훈련이다. 세 가지는 지금 무엇이 병목인가라는 축에서 갈리고 같은 위키와 같은 에이전트를 쓰더라도 확인 지점의 모양이 달라져야 한다. 반복되는 병목의 모양에 따라 처방이 갈린다. 완성될 때까지 공유하지 않는 사람에게 완성본을 요구하면 공유 주기가 더 길어지므로 작은 중간 산출물과 짧은 기한을 둔다. 분석은 빠른데 해석이 약한 사람에게는 결과 표를 하나 더 요구하는 대신 그 결과를 설명할 수 있는 대안 세 가지와 그 셋을 구분할 분석을 요구한다. 읽기는 많은데 실행이 늦은 사람에게는 읽을 목록을 늘리지 않고 실제로 돌아가는 산출물을 다음 확인 지점으로 둔다. 세 처방의 공통점은 요구의 양을 바꾸지 않고 요구의 종류를 바꾼다는 데 있다.

오타니처럼 독립을 준비하는 단계에서는 병목의 성격이 달라진다. 할 수 있는 일이 여럿인데 무엇을 하지 않을지 정하지 못해 막힌다. 여기에 필요한 발판은 범위를 좁히는 기준을 함께 세우는 것이다. 확인 가능한 결과가 나올 수 있는 크기인지, 그 결과가 독립 과제의 첫 목표를 지지하는지, 지금의 자원으로 감당할 수 있는지 같은 질문을 두고 후보를 줄인다. 후배 지도에 쓰는 시간과 자기 과제에 쓰는 시간의 배분도 같은 방식으로 정하는데 감각에 맡기면 대체로 눈앞의 요청이 이긴다. 반복되는 침묵을 인격 특성으로 단정하지 않는다. 연락이 줄어드는 데에는 과제가 너무 큰 경우, 무엇이 맞는지 몰라 보고할 것이 없다고 느끼는 경우, 피드백 채널이 불편한 경우, 일정이 다른 일과 충돌하는 경우가 모두 포함된다. 네 가지를 먼저 점검하지 않고 성향으로 설명하면 개입이 엉뚱한 곳으로 간다. 점검은 과제 크기부터 시작하는 편이 나은데 크기를 줄이는 개입이 가장 빠르게 결과를 확인시켜 주고 결과가 확인되면 나머지 세 가지 중 무엇이 남았는지도 좁혀지기 때문이다.

합류에서 독립 연구자로

핵심 review를 읽고 분야 지도를 만든다
    ↓
대표 방법을 작은 데이터에서 재현한다
    ↓
자기 연구 질문과 설계를 낸다
    ↓
실제 결과와 실패 원인을 공유한다
    ↓
공동연구 자리에서 근거와 선택지를 설명한다
    ↓
그림과 주장을 스스로 제안한다
    ↓
후배에게 재현 가능한 인수인계를 넘긴다

세 카드를 한 사람의 시간축에 놓으면 하나의 경로가 된다. 실제로는 사람마다 순서가 다르고 건너뛰는 단계도 있지만 다음 단계를 정할 때 참고할 뼈대는 만들어진다. 앞의 두 단계는 15장과 17장이 다루는 분야 지도와 방법 문서가 그대로 산출물이 되고 가운데 세 단계는 설계 문서와 실행 결과와 미팅에서의 설명이 산출물이다. 마지막 두 단계에서 확인되는 것은 다른 사람이 이어받을 수 있는 형태로 넘겼는가다. 오타니가 독립 과제 준비와 후배 지도를 함께 맡고 있는 이유가 여기에 있는데 넘길 수 있게 정리하는 능력과 독립 과제를 운영하는 능력은 같은 뿌리에서 나온다. 과제가 커지면 그 과제는 자기 지침 파일과 자기 위키를 갖는 하나의 작업 공간이 된다. 실제 운영에는 그런 중첩이 여럿 있고 상위 규칙은 하위에 자체 규칙이 있으면 그 안에서 하위가 우선한다고 못 박는다. 독립을 준비하는 사람에게 자기 공간의 규칙을 직접 쓰게 하는 것이 그 자체로 훈련이 되는 이유가 여기에 있다.

마지막 단계의 인수인계는 별도의 산출물로 만든다. 넘기는 사람이 머릿속에 있는 것을 말로 설명하고 끝내면 받는 사람은 몇 달 뒤에 같은 질문을 다시 하게 되고 그때는 넘긴 사람이 이미 답할 수 없는 자리에 있다. 문서에 들어가야 하는 것은 과제의 목적, 정본 데이터의 위치, 어떤 대상을 어떤 기준으로 골랐는지, 분석 절차와 실행 방법, 지금까지의 결과와 그 해석, 아직 닫히지 않은 문제다. 인수인계 문서가 실제로 작동하는지 확인하는 방법은 하나인데, 받는 사람이 그 문서만 보고 마지막 분석을 다시 돌릴 수 있으면 된다. 성장의 기준을 지시를 덜 받는 것으로만 정의하면 잘못된 방향을 보상하게 된다. 묻지 않고 혼자 진행하는 것과 스스로 판단할 수 있는 것은 다르고 앞의 것은 대체로 확인 지점을 건너뛴 결과다. 기준에 넣어야 할 것은 근거를 제시하는가, 불확실한 부분을 불확실하다고 말하는가, 다른 사람이 이어받을 수 있게 넘기는가이고 세 가지는 모두 산출물로 확인되므로 인상에 의존하지 않는다. 독립성이 자라면 지도의 내용이 절차에서 판단으로 옮겨 가고 지도가 필요 없어지는 상태는 오지 않는다.

팀의 기억과 개인의 존엄

사람에 관한 기록은 만들기 전에 두 가지를 정한다. 누가 읽을 수 있는가와 언제 지우는가. 두 가지를 정하지 않은 기록은 시간이 지나면 지울 수 없게 되는데 왜 만들었는지 잊히면 지워도 되는지 판단할 근거도 함께 사라지기 때문이다. 기록의 목적은 성장 지원과 작업 연속성이고 목적에 필요하지 않은 정보는 처음부터 넣지 않는다. 건강, 가족, 심리 상태에 관한 정보는 연구 수행을 설명하는 근거로 쓰지 않는다. 진행이 늦은 이유를 개인적 사정으로 추정해 적으면 추정이 사실처럼 남고 당사자가 그 기록을 볼 수 없는 상태에서 계속 인용된다. 사정을 알게 되는 일 자체는 피할 수 없지만 알게 된 것을 지도 기록에 축적하는 일은 선택이다. 기록에는 합의된 일정 조정처럼 작업에 관한 사실만 남긴다. 심리 상태에 대한 판단은 지도교수의 전문 영역이 아니고 문서로 남기는 순간 전문가의 판단처럼 읽힌다. 넣지 않기로 정한 항목의 목록은 짧게 적어 작업 공간의 지침 파일에 넣는다.

내부 기록의 문장을 밖으로 나가는 글에 그대로 옮기지 않는다. 멘토링 층의 문장은 잠정적 해석을 적은 것이고 잠정적이라는 표시는 그 문서 안에서만 유효하고 밖으로 나가면 판정처럼 읽힌다. 외부로 전달하는 것은 구체적인 산출물과 기한과 다음 행동이고 해석은 대화에서 말로 전한다. 에이전트가 초안을 쓸 때 내부 기록을 참조하는 것과 내부 기록의 문장을 결과물에 그대로 넣는 것은 다른 일이므로 뒤의 것을 막는 규칙을 지침에 적어 둔다. 에이전트가 만든 인물 요약은 요약일 뿐이므로 원자료와 최근 상태를 다시 확인하지 않은 채 근거로 삼지 않고 채용과 평가와 징계의 판단에는 쓰지 않는다. 규칙을 명시적으로 적어 두어야 하는 이유는 요약이 잘 쓰여 있을수록 확인을 건너뛰게 되기 때문이다. 학생이 준비 중인 원고에도 같은 종류의 경계가 걸린다. 문헌 위키는 출판된 지식을 담는 층이므로 준비 중이거나 심사 중인 연구실 원고는 제목조차 들어가지 않고 코드명으로 붙인 태그나 위키링크 없는 서술형 언급도 함께 막힌다. 사람에 관한 registry가 그 위키 안에 있는 이상 경계는 registry에도 그대로 적용되고 진행 중인 원고에 관한 메모는 별도 문서에 적는다. Registry 문서에는 날짜가 붙은 사실만 적으며 지금 무엇을 읽고 있는지, 어떤 작업과 방법을 익혔는지, 배정할 때 주의할 점과 확인이 필요한 항목이 무엇인지 정해진 형식으로 기록한다. 오래된 관찰이 현재 상태로 읽히지 않도록 기록마다 신선도 표시를 붙이고 일정 기간이 지나면 자동으로 재검토 필요 상태로 바꾼다. 반년 전에 병목이라고 적어 둔 내용이 지금도 같은 상태라는 보장은 없으므로 표시가 없으면 그 문장은 계속 현재형으로 읽힌다.

권한도 한 덩어리로 두지 않고 여섯 층으로 갈랐다. 연락처와 식별 정보, 지금 무엇을 맡고 있는지, 새 과제에 누구를 넣을지에 대한 판단, 새로 합류하는 사람에 대한 계획, 개인별 근거 기록, 작업 습관과 멘토링 개입이 각각 다른 층이다. 층을 나눈 실익은 인용 경로가 갈린다는 데 있다. 메일 초안을 쓸 때 필요한 것은 첫 층이고 작업 습관을 적어 둔 층은 초안에 인용하지 않는다. 그 층의 문장을 학생에게 가는 글에 그대로 옮기지 않고 구체적이고 중립적인 행동 요청으로 바꿔 쓴다는 규칙을 지침에 따로 박아 두었다. 잠정적인 해석으로 적은 문장이 밖으로 나가면 판정처럼 읽히고 문서로 남은 판정은 취소하기 어렵다. 이 경계에서 가장 자주 흔들리는 것은 요약이다. 잘 쓰인 요약일수록 원자료를 다시 열지 않게 만들고 그래서 인물 요약을 채용과 평가와 징계의 판단에 쓰지 않는다는 문장을 규칙에 남겨 두었다.

여러 작업 공간의 연결

업무를 나눈 작업 공간 여덟 곳이 모두 같은 골격을 쓴다. 얇은 지침 파일이 강제 규칙과 라우팅 표만 담고 지도 문서가 무엇이 어디에 있고 현재 규칙이 무엇인지를 표로 보여 주며 변경 이력 문서가 구조와 규칙이 언제 왜 바뀌었는지를 담고 그 아래의 owner 문서들이 실제 절차와 실패 조건과 검증 방법을 소유한다. 골격은 같아도 규칙의 두께는 크게 다르다. 판단이 자주 필요한 업무일수록 규칙 문서가 두껍고 절차가 굳어 있는 업무는 얇게 끝난다. 규칙 문서를 아예 두지 않은 폴더도 있는데 파일을 넣고 꺼내기만 하면 되는 보관소가 그렇다. 모든 폴더에 위키를 만들면 유지할 것만 늘고 읽히지 않는 규칙이 쌓인다. 큰 분석 과제나 여러 해에 걸친 업무는 상위 공간 안에 자기 지침과 자기 위키를 갖는 중첩 공간이 되고 상위 규칙은 그 안에서 하위 규칙이 우선한다고 명시한다. 우선순위를 명시하지 않으면 두 층의 규칙이 충돌할 때마다 사람이 매번 판정해야 한다.

각 공간의 위키는 문헌 위키의 내용을 복제하지 않고 절대경로로 가리킨다. 라우팅 표에는 이 위키에 중복해 적지 않는다는 열이 따로 있고 참조는 양방향이라 문헌 위키 쪽의 문서도 작업 공간의 경로를 가리킨다. 파일 복사는 하지 않고 이 계층에 symlink도 만들지 않는데 모든 문서를 실제 파일로 두어야 어느 것이 원본인지 헷갈리지 않기 때문이다. 역할도 나뉘어 있다. 사람과 연락처, 문헌 근거, 저널 정보, 문체 참고는 문헌 위키가 소유하고 폴더와 파일명과 버전과 렌더링과 검증 절차는 각 작업 공간이 소유한다. 공간 사이의 링크는 실제 의존이나 공유 정본이 있을 때만 만들고 서로를 가리키는 완전 그래프를 만들지 않는다. 두 곳의 기록이 서로 다르게 말할 때는 어느 쪽이 더 최근인지로 정하지 않고 소유 관계를 따른다. 역할에 관한 충돌은 사람에 관한 기록을, 분석의 현재 상태는 그 과제를 소유한 공간을, 원고의 최신 판본은 원고를 소유한 공간을 따른다. Owner가 아닌 곳에 적힌 값은 낡은 사본으로 보고, 낡은 사본을 발견하면 값을 고치는 대신 owner를 가리키는 링크로 바꾼다.

면담에서 얻은 내용을 공통 규칙으로 기록하려면 조건이 필요하다. 같은 혼선이 두 번 이상 반복되었거나, 한 번이라도 비용이 크거나 되돌리기 어려웠거나, 사용자가 앞으로의 처리 방법을 직접 정했거나, 다음 에이전트가 같은 결정을 재현해야 할 때다. 한 사례에만 해당하는 파일명과 상태, 검증하지 않은 임시 회피책, 특정 도구에 관한 개인적 취향, 검증할 수 없는 감상은 공통 규칙에 넣지 않는다. 규칙 문장은 상황, 행동, 검증의 세 요소로 쓰고 특정 사람, 날짜, 세션은 넣지 않는다. 처음에는 규칙을 문서에 적는다. 반복해서 확인해야 할 항목은 위반을 찾는 검사 코드로 만들고, 실행할 때마다 적용해야 하는 항목은 예약 작업이나 실행 스크립트에 포함한다. 문서 규칙을 자동 검사로 바꾸려면 서로 다른 대상 두 건 이상과 로그 항목 세 건 이상에서 같은 위반이 재발하지 않았다는 기록이 필요하다. 자동 검사가 반복해서 잘못 작동하거나 실제 관례와 충돌하면 검사를 해제하고 재검토 목록에 올린다. 실패와 성공은 함께 기록한다. 반복해 지적된 실패 패턴을 모은 문서와 반복해 효과를 본 전략을 모은 문서를 함께 관리하며, 전략에는 적용 시점, 방법, 근거, 현재 사용 여부, 사람이 정했는지 에이전트가 제안했는지를 적는다. 같은 혼선이 반복되는지를 확인하는 이유는 한 사람에게 통한 개입이 다른 사람에게도 맞는다고 볼 수 없기 때문이다. 확인 없이 공통 규칙으로 적용하면 나머지 사람에게 맞지 않는 요구가 된다.