독서 - 인간다운 Git
『인간다운 Git』은 잘못된 번역으로 오해받을만한 제목이다. “인간(사용자)을 위한 Git”이 바른 번역일텐데, 왜 “인간다운 Git”일까? 그 이유는 번역서의 출판사인 웹액츄얼리의 신간 공유 이벤트에서 홍보 문구이자, 책의 서문에 저자가 쓴 한 문장에서 유추해볼 수 있다.
문제는 사용자가 아니다. Git이다.
Git이 갖고 있는 허술함에 주목하여 번역서의 이름을 “인간다운 Git”으로 한 것이 아닐까 생각한다. 책의 서문에 조엘 스폴스키Joel Spolsky가 이야기했던 Git의 허술한 추상화leaky abstraction에 대한 이야기가 나온다. 이러한 특징을 종종 예측과 다른 행동을 하는 인간의 면모에 빗대어 “인간다운”이라는 이름을 붙인게 아닐까? 만약 그렇다면 이 제목은 책의 큰 주제에서 벗어났다고 볼 수 있다.
내가 이 책을 추천할만한 좋은 책이라고 여긴 가장 큰 이유는 “인간(사용자)의 관점에서for Humans” 쓴 책이기 때문이다. 약간의 스포일러를 해보자면, 책의 마무리 챕터에는 이런 이야기가 나온다.
지금까지 언급하지 않았던 용어 하나가 있는데, 바로 방향성 비순환 그래프DAG, directed acyclic praph다. DAG는 데이터 구조의 한 종류다. (중략)
이런 종류의 그래프는 Git 브랜치를 시각화하는 데 자주 사용되며 브랜치 다이어그램을 포함하는 대부분의 Git 튜토리얼에선 시각적인 목적으로 DAG를 사용함에도 불구하고 핵심을 벗어나지 않기 위해 이름 정도만 언급할 뿐이다.
여기서 DAG에 대해 얘기하는 이유는 마무리하는 시점에서 이 책의 철학을 강조하기 위해서다. Git을 설명할 때, 보통은 큰 그림에 초점을 맞춘다. (중략)
그러나 나는 시스템으로서의 Git을 볼 때 Git의 가장 훌륭한 점을 놓칠 수 있음을 알았다.
인용이 너무 길면 책의 결말을 모두 알아버릴 수 있으니 인용은 여기까지만 하겠다. 저자인 데이비드 디마리의 말처럼, 일반적으로 Git을 처음 접하면 “방향성 비순환 그래프”를 통해 Git의 작동 원리부터 배운다. 이미지를 포함하는 Git에 대한 소개글을 한 번이라도 본 사람이라면, 나처럼 DAG라는 용어를 처음 들었다 해도 어떤 모양의 그래프를 의미하는지 바로 감이 올 것이다.
처음부터 방향성 비순환 그래프를 그려가며 Git의 원리를 알려주려 하지 않는 게 이 책의 강점이다. 저자는 Git이라는 시스템이 어떻게 작동하는지에 초점을 둔 것이 아니라, Git의 사용자가 이 도구를 사용해 나가는 “이야기”에 집중하여 Git에 대해 설명하고 있다(책의 결말을 이야기해버렸다). 저자는 Git이라는 시스템의 허술한 추상화로 인해 사용자들이 어려움을 겪게 된다고 말한다. 하지만 그렇다고 해서 Git이 “인간다운” 것은 아니다. 결국 번역서의 제목을 “인간다운 Git”으로 정하는 바람에 오해를 만들어 내는 셈이다. 직역이라 다소 딱딱하지만 책의 제목을 “인간을 위한 Git”으로 번역하거나, Git이 하나의 도구라는 점에서 착안해 “사용자의 관점에서 살펴보는 Git”이라고 했다면 저자가 강조하는 핵심을 벗어나지 않았을 것이라는 아쉬움이 남는다.
하지만 번역상의 실수로 “인간다운 Git”이라는 제목이 나온 건 절대 아닐 것이다. 사용자가 Git을 쓰면서 생기는 “이야기”에 초점을 둔 저자의 관점처럼, Git을 하나의 시스템으로만 바라보지 않고, 사용자와 상호작용하는, 더 오버하자면 사용자와 대화할 수 있는 “인간다운” 도구로 여겨 이런 제목을 짓지 않았을까? 실제로 이 책은 마치 재밌는 이야기를 읽듯이, 다른 Git 학습서에 비해 훨씬 편안하게 읽어 내려갈 수 있는 책이다. 내용도 좋고, 번역도 마음에 들고, 책의 디자인도 좋다(웹액츄얼리의 아름다운 웹사이트 만들기 시리즈는 디자인이 마음에 든다). “인간다운 Git”이라는 제목은 이 책을 한번쯤 읽어보고 싶게 만드는 매력이 있다. 그럼에도 끝내 아쉬운 점은 번역서의 제목에 앞서 인용한 데이비드 드마리의 철학이 잘 드러나지 않는다는 점이다.
제목이 왜 “인간다운 Git”일까를 너무 오래 생각한 탓에 리뷰에 그에 대한 이야기가 대부분을 차지했다. 책 제목이라는 건 그만큼 중요한 거니까 그랬다고 치고 넘어가기로 한다. 요약하자면, 『인간다운 Git』은 Git을 사용자 관점에서 잘 설명해 주는 책이다. 그 덕분에 이 책을 부담없이 읽어내려가면서 재밌게 Git의 사용법을 익힐 수 있다. 신간 공유 이벤트를 통해 좋은 Git 서적을 일찍 접할 수 있게 해준 웹액츄얼리북스에게 고맙다는 말을 전하며, 『인간다운 Git』 추천!