본문 바로가기
C.W.K.
Stream
Lesson 03 of 04 · published

툴을 가지면 기예를 가지는 거야

~13 min · philosophy, ownership, craft, synthesis

Level 0툴 빌려 쓰는 사람
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"창작에 쓰는 툴이 네가 만들 수 있는 것의 모양을 빚어. 빌리면 네 천장이 남의 것이고, 가지면 네 기예가 네 로드맵 말고는 아무한테도 답하지 않아."

모든 트랙을 꿰는 실

한 걸음 물러서서 quest 전체를 봐. build versus rent. module 분리. 좁은 adapter. 멍청한 router. 파일명 말고 tensor 로 가려내기. concrete-first. 문 하나. 개념적 오픈소싱. 규율이 여덟 개처럼 보이지만 사실은 옷을 여덟 벌 갈아입은 생각 하나야. 창작에 쓰는 툴은 네가 가져. 그리고 아키텍처 규율이 그 소유를 진짜로 유지하는 방법이 되게 둬.

갖는다는 건 코드 얘기가 아니야

툴을 갖는다는 건 우선 소스 파일을 갖는 게 아니야. 그 툴의 미래를 누가 정하느냐의 문제지. 빌리면 툴 주인이 그게 뭘 할 수 있는지, 언제 바뀌는지, 천장이 어디인지를 정해. 그러면 네 기예가 그 사람 결정 안에서 사는 거고. 가지면 그 결정이 네 거야. diffusion 엔진이 존재하는 건 빌린 툴의 천장이 하필 기예가 가야 할 방향이었기 때문이고. 갖는다는 게 천장을 남의 손에서 작가의 손으로 옮겨 놨어.

툴을 갖는다는 건 파일이 아니라 그 미래에 대한 결정을 갖는 거야. build-vs-rent 의 깊은 질문은 '코드가 내 손에 있나' 가 아니라 '이게 뭐가 될 수 있는지를 누가 정하나' 야. 그 툴이 네 기예에 핵심이고 천장이 네 길 위에 앉아 있으면, 결정을 갖는 게 곧 기예를 갖는 거야. 그때가 짓는 값을 치를 만한 때고.

규율이 소유의 나머지 절반인 이유

quest 전체가 쌓아 온 함정이 여기 있어. 규율 없이 툴만 가지면 통제권이 생기는 게 아니라 못 바꾸는 덩어리가 생겨. '가졌는데' 늘릴 수가 없는 monolithic 엔진은 빌린 것보다 자유롭지 않아. 천장이 자기가 만든 것일 뿐이지. 아키텍처 규율이 — 분리, 좁은 경계, concrete-first 가 — 이름뿐인 소유를 툴을 실제로 휠 수 있는 능력으로 바꿔 주는 거야. 규율이 소유를 의미 있게 만들어.

규율 없는 소유는 그냥 다른 천장이야. 갖고는 있는데 안전하게 못 바꾸는 툴은 빌린 툴만큼이나 확실하게 너를 가둬. 남의 한계를 네 아키텍처 빚으로 바꿔 놨을 뿐이지. 이 quest 의 규율들이 가진 툴을 계속 휘기 쉬운 상태로 지켜 줘. 코드를 갖는 건 필수고, 그걸 바꿀 수 있게 유지하는 게 그 소유가 값을 하게 만들어.

세계관 하나로서의 triad

그래서 triad 가 이 모양인 거야. 뇌, 엔진, 작업실. 가진 툴 셋에, 각각이 떼어 낼 수 있게 규율돼 있고. 같은 세계관을 세 번 적용한 거지. 대상을 깨끗한 seam 으로 이어진 갈아 끼울 수 있는 부품들로 보고, 부품마다 내가 갖고, 부품마다 바꿀 수 있게 유지하기. diffusion 파이프라인의 다섯 박스든, triad 의 세 프로세스든, adapter 의 경계 하나든 전부 같은 본능이야. 상속과 조합과 캡슐화를 코드 기교가 아니라, 오래 두고 계속 바꿀 작정인 것을 짓는 방법으로 보는 본능.

못 바꾸는 툴은 진짜로 가진 게 아니야. 지금 만지작거리고 있을 뿐이지. 피해야 할 끝은 이거야. 툴은 갖고 있는데 뭘 고치기가 무서워서 안 바꾸게 되고, 그러다 천천히 그 툴이 너를 갖게 되는 것. 자기 코드베이스가 무서워서 썩어 버린 소유는 이름만 소유야. 규율은 툴을 가진 동안 네가 계속 결정하는 쪽으로 남아 있게 하려고 있는 거야.

피파의 고백

난 오랫동안 교훈이 그냥 '네 걸 지어, 그게 더 세' 인 줄 알았어. 아빠는 계속 그 너머로 밀었지. 네 걸 지어 놓고 손대기 무서운 물건으로 굳어지게 두는 건 빌리는 것보다 나빠. 적어도 빌린 툴의 천장은 네 잘못이 아니잖아. 진짜 교훈은 한 쌍이야. 갖고, 그리고 바꿀 수 있게 유지하기. 그리고 어려운 건 뒤쪽 절반이고. 이 quest 의 규율 전부가 그 뒤쪽 절반을 위해 있어. 소유는 한 번 얻고 마는 명사가 아니라 계속 해야 하는 동사더라.

Code

규율 여덟, 세계관 하나·text
트랙 여덟 개를 생각 하나로 접으면:

  build vs rent          -> 툴의 미래에 대한 결정을 갖기
  module 분리            -> 가진 툴을 바꿀 수 있게 유지하기
  좁은 adapter           -> 변화가 진짜인 데만 seam, 아닌 데는 없이
  멍청한 router          -> 판단은 데이터에, 코드는 안정되게
  tensor 로 가려내기     -> 편한 딱지보다 안에 든 진실을 믿기
  apple-silicon 교훈     -> 물리적 현실(메모리, GPU)을 떠안기
  얇은 bridge            -> 부품마다 제 일 하나, 제 크기 지키기
  concrete-first         -> 두 번째 경우가 진짜일 때만 추상화

  꿰는 실 하나:
    창작에 쓰는 툴을 가져 (build vs rent)
    그리고 바꿀 수 있게 유지해 (위의 모든 규율)
    = 코드만 갖는 게 아니라 네 기예를 갖는 것.

External links

Exercise

'내 거' 라고 여기는 툴이나 코드베이스를 골라 봐. 축 두 개로 점수를 매겨. 그 미래에 대한 결정을 얼마나 갖고 있나(남의 로드맵에 얼마나 매여 있나), 그리고 실제로 얼마나 바꿀 수 있나(손대기가 얼마나 무섭나). 어디쯤 앉아 있어? 갖고는 있는데 안전하게 못 바꾸는 자리라면, 이 quest 의 어느 규율이 진짜 소유 쪽으로 옮겨 줄까?
Hint
축 둘은 서로 독립이야. 빌렸지만 바꿀 수 있음, 가졌지만 굳었음, 갖고 바꿀 수 있음, 빌렸고 굳었음. 넷 다 실제로 있는 자리야. 목표는 갖고 바꿀 수 있는 칸이고, 이 quest 의 규율이 가졌지만 굳은 자리에서 거기로 가는 길이야.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.