洪民憙 (홍민희) 블로그

이하의 글은 2010년에 쓴 것입니다. 오래된 글인 만큼, 현재의 생각과 전혀 다른 내용도 많이 포함되어 있고, 당시와는 상황이 많이 달라진 점도 있습니다. 또한, 그 당시에 잘못 알려졌던 정보도 포함되어 있을 수 있습니다. 어찌됐든 저는 제 오래된 글이 회자되는 것을 저어합니다. 읽기에 앞서 양해를 부탁드립니다.

요즘 느끼는 건데 상업적인 프로젝트에서 개발자들이 문서라고 남겨둔 것들은 대체로 불친절하고 누가 시켜서 억지로 했다는 느낌이 강하다. 불친절하다는 것을 어떻게 알 수 있냐면: 일단 상업적인 프로젝트의 문서에서 튜토리얼이 나오는 경우는 절대 없다. 왜냐면 튜토리얼은 꼭 있어야 하는 문서는 아니지만 이해를 더 쉽게 하기 위한 것이고, 나처럼 문서화를 좋아라하는 개발자들은 원래 적기 때문이다. 그걸 감안하더라도 오픈 소스 프로젝트에 비해 상업적인 프로젝트의 문서들이 더 형편없는 경우가 많은데, 오픈 소스 프로젝트의 경우 문서화를 잘 해야 프로젝트 홍보가 잘 되고 날개돋힌듯 널리 알려지고 쓰이며 발전하기 때문에 문서화를 중요하게 생각하기 때문이다.

오픈 소스 프로젝트에게 있어서는 문서와 프로젝트 홈페이지가 프로덕트 패키지의 역할을 담당하는데다 오픈 소스 프로그램은 대부분 유형적인 패키지가 존재하지 않는 프로덕트이므로 문서화는 사용자를 유혹하는 가장 직접적인 수단이다. 예를 들어 인기있는 웹 프레임워크인 Django를 써본 사람들은 처음 Django를 쓰게 된 이유가 홈페이지 디자인이 좋고 Sphinx로 문서화된 매뉴얼이 훌륭해서라는 사실을 무시하지 못할 것이다. 이런저런 이유 때문에 인기 있는 오픈 소스 프로젝트는 대부분 훌륭한 매뉴얼이 존재하고, 튜토리얼도 꼭 함께 있다. 요즘엔 아예 동영상으로 찍어서 스크린캐스트를 제공하기도 할 정도니.

어쨌거나 소스는 물론 API조차 외부에 알려지지 않더라도 Sphinx로 꼼꼼하게 문서화를 하는 편인 나에게 있어서는 상업적인 프로젝트에서의 전혀 이해에 도움을 주지 않는 구실뿐인 문서들은 괴롭기만 하다. 없는 것보단 낫다라고들 하지만 나한테 그건 아예 고려 대상도 아니고.