죽은 문서와 산 문서의 차이

조엘 스폴스키(Joel Spolsky)가 2000년 10월에 쓴 글에서 가장 눈에 띄는 소제목이 있다. "Specs Need To Stay Alive(스펙은 살아있어야 한다)."
24년 전 글이다. 아이폰이 나오기 7년 전, 페이스북이 생기기 4년 전, 에자일 선언문이 나오기 1년 전. 그런데 이 글은 여전히 소프트웨어 업계의 필독서로 꼽힌다. 스택오버플로우를 만든 사람이 쓴 글이라서가 아니다. 진리는 시대를 초월하기 때문이다.
그는 많은 회사들이 "폭포수" 방식으로 일한다고 비꼬았다. 스펙을 한 번에 다 쓰고, 프린트해서, 개발자들에게 던져주고 집에 간다는 것. 그의 반응? "하하하하하하하하!"
정확히 8번의 '하'다.
이게 왜 웃긴지는 집에서 요리할 때를 생각하면 된다. 레시피를 보고 요리하다가 "어? 집에 버터가 없네?" 하면 어떻게 하는가? 그냥 올리브오일로 대체한다. 레시피가 "신성불가침의 경전"이었다면 당신은 지금 마트로 뛰어가고 있을 것이다.
조엘이 지적한 핵심은 이거다: 스펙이 나쁜 평판을 받는 이유는 스펙 자체가 문제가 아니라, 스펙을 다루는 방식이 문제라는 것. "아무도 안 따르고, 항상 구식이고, 실제 제품을 반영하지 못한다"는 불평은 모두 스펙을 박제된 문서로 만들었기 때문이다.
그의 해법은 단순하다. 서버에 최신 버전을 유지하고, 계속 업데이트하라. 제품이 완성될 때까지 스펙도 함께 진화한다. 가끔 중요한 시점에만 프린트해서 "뭐가 바뀌었는지" 보여주면 된다.
2000년의 이 통찰이 2024년에도 유효한 이유가 뭘까?
그때나 지금이나 인간의 본성은 변하지 않았기 때문이다. 우리는 여전히 확실성을 원하고, 변화를 두려워하고, 한 번 정한 걸 바꾸기 싫어한다. 하지만 현실은 언제나 유동적이다.
이건 소프트웨어만의 이야기가 아니다:
사업 계획서를 6개월 전에 썼다면? 시장은 이미 바뀌었다. 그 계획서대로 하면 망한다.
결혼식 준비를 1년 전에 확정했다면? 그사이 하객이 30명 늘었는데도 그대로 진행하는가?
다이어트 계획을 새해에 짰다면? 3월쯤 되면 현실과 맞지 않는다. 그런데도 "계획대로" 하려고 애쓴다.
문서가 살아있다는 건, 현실을 반영한다는 뜻이다. 현실은 계속 바뀌니까.
각주: 이 글이 나온 지 1년 뒤, 애자일 선언문이 발표됐다. "계획을 따르기보다 변화에 대응하기를." 조엘의 통찰이 시대정신이 된 것이다. 그런데 아이러니하게도, 많은 회사가 "애자일하게 일한다"면서 여전히 죽은 문서를 양산한다. 구글독스나 노션으로 툴은 바뀌었지만, 마인드셋은 그대로다. 24년이 지났는데도 조엘의 "하하하하하하하하"가 메아리치는 이유다.