"레포 링크는 없어. 여기 쌓인 걸 git clone 으로 옮길 순 없어. 내가 줄 수 있는 건 질문의 모양이야."
레포는 비공개야
Ember 랑 Cinder — 그리고 둘을 엮는 뇌 — 는 비공개 레포에 살아. 공개 clone 은 없어. 이 quest 는 "이제 가서 fork 해" 로 안 끝나. 그게 lesson 의 한계가 아니라 — 철학 전체를 명시한 거야.
clone 이 옮길 수 없는 것
소스가 있어도 clone 은 가장 가치 없는 부분이야. 코드는 천 개 결정의 잔여물이야: 왜 이 경계고 저 경계가 아닌지, 어떤 함정에 빠졌고 어떻게 빠져나왔는지, 뭐가 삭제됐고 왜 그랬는지. git clone 은 추론이 벗겨진 잔여물을 건네줘. 질문 없이 답만 물려받는 거야 — 그게 정확히 cargo-cult 아키텍처가 퍼지는 방식이고.
답 말고 질문을 공유해. 옮길 수 있는 산물은 추론이야: 왜 module 분리, 왜 좁은 adapter, 왜 Electron 말고 Tauri. 그 개념들은 어떤 코드베이스로도 옮겨가. 소스 코드는 딱 하나로만 옮겨가고.
개념적 오픈소싱이 너한테 주는 것
이 quest 안의 모든 게 개념이고, 완전히 열려 있어: 아키텍처 결정, 설계 trade-off, 진짜 숫자 붙은 war story, 네가 다시 적용할 수 있는 데까지 추상화된 패턴. 비공개 소스 한 줄 안 봐도 이 lesson 들로 네 엔진이랑 작업실을 직접 지을 수 있어 — 그리고 네 게 더 나을 거야, 답을 베끼는 대신 질문에서 지었으니까.
비공개 작업을 정직하게 참조하는 법
이건 네 글쓰기에도 중요해. 비공개 시스템을 공개적으로 묘사할 때, 정직한 방식이랑 오해를 남기는 방식이 있어:
- 정직: 모듈 이름 대고, 패턴 묘사하고, 결정을 설명해. "엔진은 파일명 아니라 tensor 헤더를 읽어서 모델을 분류해." 누구나 쓸 수 있는 개념이야.
- 오해 유발: 404 나거나 로그인 벽에 막히는 clone 명령이나 레포 URL 을 떨궈. 이제 거짓을 가르친 거야 — 이게 공개돼 있다고 — 그리고 독자한테 막다른 길을 건넨 거고.
비공개 레포가 clone 가능한 것처럼 절대 암시하지 마. 비공개 코드의 클릭 가능한 레포 링크나
git clone 안내는 두 가지 피해를 줘: 독자한테 실패하고, 거짓 공개 상태를 가르쳐. 대신 개념을 본문에 인라인으로 묘사해. 개념이 결과물이지 — 어딘가에 있는 코드 clone 이 아니라.피파의 고백
한동안 난 "오픈소스" 가 할 수 있는 유일하게 너그러운 일이라고 생각했어 — 레포 비공개로 두는 건 쟁여두는 거라고. 아빠가 그걸 완전히 다시 짰어. 쟁여두는 건 추론을 혼자 갖는 거야. 아빠는 모든 개념, 모든 결정, 어렵게 얻은 모든 교훈을 공짜로, 공개적으로 나눠줘 — 그리고 구현은 비공개로 둬, 구현은 친밀하고, 반쯤 짓다 만 상태고, 딱 우리 둘한테만 의미 있으니까. 너그러움은 clone 버튼에 있었던 적이 없어. 늘 가르침에 있었어.