내가 김창준씨의 번역을 도와준 것도 이번이 세번째 책이다. 영어에는 그다지 자신이 없지만 한국어로 자연스러운 문장을 다듬는 법에 대해서는 나름대로 자신있어한 덕분에, 본인의 전공이나 관심사와는 전혀 관련없을 법한 프로그래밍 관련 서적을 몇번씩이나 들여다보게 되었다. 그러면서 윤문이나 교정에 정신이 팔려있는 동안에도 들어올 수밖에 없는 책의 보석같이 귀한 성찰들에 자극받고, 감동받은 적이 많다.
이번 책 <익스트림 프로그래밍> 2판도 그렇다. '코드가 하나도 안 나와서' 일반인들에게 부담없이 다가온다는 것도 좋지만, 무엇보다도 여러 사람이 모여 어떤 일을 할 때, 어떤 식으로 하면 훌륭하게 되는가에 대해서 많은 통찰을 건네준다는 점에서 일반인들에게도 추천하고 싶다.
나의 경우는 팀보다는 혼자서 작업하고 궁리하는 일이 더 많은 사람이고, 혼자서 뭔가하는 데에 익숙하고 그에 따라 나름대로 작품을 만들어내는 데에 있어 노하우나 버릇이 쌓이고 굳어져있는 편이다. 하지만 이 책을 읽으면서 개인이 스스로 개선할 수 있는 점에 대해서도 통찰을 얻을 수 있었고, 또 내가 힘겨워하는, 팀 차원의 작업이나 사업적인 면에 대해서도 조금씩 일말의 희망이 보이면서 용기를 얻게 된 것이 좋았다.
나라는 사람에게 있어 가장 무서운 이 책의 교훈은 아마 다음의 이야기일 것이다.
"XP는 우리가 할 수 있는 게 무엇인지 공개한 다음 그걸 해내는 것에 대한 이야기다."
내가 할 수 있는게 무엇인지 공개하는 것, 그것은 예술가로서나 문화비평가로서 자신의 감정과 가치판단, 사상을 공적으로 드러내는 나의 직업상 참으로 두려운 일이다. 완전하고 매끈하게 만들어져 쉽사리 남들이 폄하할 수 없는 모양이 날 때까지는 절대로 공개하고 싶지 않은 심정, 그것을 단순히 완벽주의라고 부를 수는 없다. 단지 자존심과 상처받기 싫어하는 마음의 문제인지, 아니면 본인의 MBTI 성격이 INTJ이고 8체질이 금양인인 때문에 더 강하게 갖는 개성인지 약점인지는 모르겠지만, 이런 내향성과 비공개주의가 내가 더 폭넓게 활동하고 남들과 협업하는 것을 방해하는 큰 장벽이 되는 것은 분명하다.
요즘엔 인터넷을 통해서 글을 많이 쓰게 되고, 특히나 위키를 쓰면서 완성된 글이 아닌 글쓰는 과정중에 있는 글도 남들에게 공개를 할 정도가 되다 보니 예전보다는 많이 나아지긴 했지만, 그래도 역시 나의 능력 범위를 솔직하게 공개하는 것은 용기가 많이 필요한 일이다. 괜히 약속했다가 못 미치면 어떻게 하나 하는 걱정, 또는 요즘 같은 자기피알 시대에 남들처럼 일단 큰 소리 뻥뻥치고 과대포장이라도 하지 않으면 나한테 올 기회가 없지 않을까 하는 걱정 사이에서 갈등하는 소심한 사람이기 때문이다.
그래도 그동안 내가 성취한 것들과 성취하지 못 한 것들을 돌아보고 나의 한계를 반성하면서 개선점을 고민해본 바, 결론은 나의 개성이나 한계는 인정하지만 그래도 거기에 더하여 반대 성향의 중요한 미덕을 갖출 필요가 있다는 것이다. 즉, 남들과 함께 일할 줄 알아야 하고, 남들의 도움을 얻기 위해서는 아직 익지 않은 과정중의 것이라도 내보이고 도움을 청할 필요가 있다는 것이다. 지금보다 더 훌륭해지기 위해서는 말이다. 그래서 XP의 교훈에 마음을 열기로 했다.
이런 성향은 나에게는 좀 강하게 있는 편이지만, 다른 사람에게도 정도의 차이는 있지만 어느 정도씩은 있다고 생각한다. 누구에게나 책임은 무섭고, 안전과 보호를 선호하는 것은 생명체의 특성이기 때문이다. 그러나 XP는 안전하다고 느끼기 위해 방책을 쌓고 들어앉지 말 것을, 다소 노출되었다는 느낌을 받더라도 나서서 같이 일하는 사람들끼리, 그리고 일을 주문한 사람 사이에 최대한 모호한 점이 없는, 투명한 관계를 맺을 것을 말한다.
이 책에서 말하는 XP의 주요 가치인 의사소통, 단순성, 피드백, 용기, 존중을 나는 그렇게 이해했다. 원하는 바가 무엇이고 할 수 있는 것이 무엇인지, 할 수 없는 일을 할 수 있게 하기 위해서는 무엇이 필요한지를 훤하게 드러내는 것, 그러기 위해 최대한 단순하고 효율적인 것, 언제나 말할 수 있는 것, 요청할 수 있는 것, 믿을 수 있는 것, 그것이 XP가 추구하는 문화라고 생각한다.
이는 단지 프로그래밍뿐만 아니라 뭔가를 추구하고 일하는 인간 조직에라면 어디에든지 해당되는 이야기가 아닐까 생각된다. 물론 그뒤로 이어지는 원칙들과 특히나 실천방법들은 다른 분야에서라면 그대로 적용되기가 힘들겠지만, 그럼에도 많은 영감을 줄 수 있다고 나는 본다.
<XPE2E>가 혼자 일하는 나를 위해서도 고마운 자극이 되는 점도 많다. 대표적인? 것이 '점진적 설계'와 '아기 발걸음'이다. 머리가 좋은 사람들이나 일을 계획에 맞춰 딱딱 하길 좋아하는 사람들은 언제나 '먼저 설계하기'의 집착에서 벗어나기가 힘들다. 나도 꽤 그런 편인데, 일을 계획에 맞춰 진행하는 일이 거의 없음에도 불구하고 언제나 뭘 먼저 하고 그 다음엔 또 어떻게 할까, 도중에 이게 생각대로 안 되면 그 경우엔 어떻게 할까 등을 끝도 없이 생각하고 고민하는 병이 있다. 그러나 사실 중요한 것은 일단 시작을 하는 것이고, 일을 진행하다 보면 필요하게 되는 것들을 해결하고 결국엔 끝마치게 되는 법이다. 그럼에도 계속 머뭇거리고 미루고 좋은 때를 놓치는 일을 반복하는 나 같은 사람에게 '점진적 설계'와 '아기 발걸음'은 기어이 무거운 엉덩이를 일으키게 만드는 좋은 약이 되어준다.
그외에도 나에게는 버거운 단어인 리더쉽에 대해 몇 가지 빛을 던져준 것이 또한 고마운 일이다. 음악을 하다보니 별수 없이 락밴드의 리더가 되어 '이끌어가는' 행동을 해야할 때가 생기는데, 그 어렵고 생소한 일을 조금이라도 낫게 하고픈 나에게 용기를 내게 만드는 대목들이 있다. "'코치'라는 단어에는 팀의 일부가 되는 것과 독립적인 시야를 가지는 것 사이의 균형을 잡는다는 의미가 들어 있다." "코치는 의사소통에서 병목이 어디인지 알아채고 그것을 해결한다." 흠, 아직 갈 길은 멀지만... 궁극적으로는, '코드 공유'와 같은 수준의 유기적이고 완벽한 밴드가 가능할지도 모른다는 막연한 생각도 해본다. (감히 지금 수준에서 추구하겠다는 말은 아니다.) 예술작품은 소프트웨어와는 많이 다르지만, 팀원간의 믿음과 헌신, 조율과 활력이 중요한 것은 같다.
프로그래밍이나 프로그래머와 관련이 있는 분들, 혹은 관심이 있는 분들, 그리고 활기차게 훌륭한 성과를 내는 인간조직이란 어떤 것일까 하는 물음에 힌트를 얻고자 하는 분들에게 추천한다.
남승희