어떤 결정을 내릴 때는, 특히 중요한 결정을 내릴 때는, 보다 보편적이고 일반적이며 확실한 원칙과 근거에 기반해서 결정을 내려야 합니다. 글을 써야할지에 대한 결정도 크게 다르지 않습니다.
"글을 쓴다"라는 결정은 지극히 단순한 결정이지만, 지속적으로 글을 써야한다면 이야기가 달라집니다. 장기적인 여정에서 지치지 않기 위한 동기 부여가 필요하고, 만족스러운 수준의 글을 쓰기 위한 분명한 원칙이 필요합니다.
이 글에서는 글을 쓰는 이유에 대한 근거와 원칙을 정립합니다. 미래의 제 스스로를 위한 글이기도 하고, 글쓰기를 망설이거나 그만 두신 분들을 위한 독려이기도 합니다.
목적부터 분명히 해봅시다. 글을 쓰는 목적에는 여러 가지가 있을 수 있지만, 개발자는 일반적으로 두 가지 목적으로 글을 쓴다고 생각합니다. 이 기준들은 모두, 개발자의 성장에 초점이 맞추어져 있습니다.
개발자는 직업 특성상 끊임없이 새로운 지식을 습득해야 합니다. 그렇기 때문에 지식을 좀 더 잘 습득하는 방법 - 즉, 효율적인 공부 방법을 아는 개발자는, 개발자로서 좀 더 빠르게 성장할 수 있을겁니다.
글쓰기는 이런 면에서 꽤나 효율적인 공부 방법이면서, 다른 방법에 비해 상대적으로 간단하기도 합니다.
다만 글쓰기라는 행위 자체가 단순히 글을 읽거나 영상 자료를 시청해서 지식을 얻는 것에 비해 상당한 시간을 소요하는 만큼, 주제를 효과적으로 선택하는 것 역시 중요합니다. 이에 대한 내용은 아래, [어떤 글을 써야하나]에서 조금 더 자세히 다룹니다.
개발자로 커리어를 시작하고, 다른 개발자들을 만나다 보면 일명 "스타 개발자"라고 칭해지는, 유명한 개발자분들을 뵐 때가 있습니다. 이러한 명성은 단순히 개발 역량이 뛰어난 것으로 얻을 수 있는 성질의 것이 아닙니다. 명성은 다른 사람들의 인정으로부터 생기는 것이기 때문이죠.
양질의 글로 가득차 있는 블로그는 타인에게 개발자의 전문성과 근면성실함을 어필할 수 있는 효과적인 수단입니다. 자기 자신을 알리기 위한, 자기 PR의 도구로써 글쓰기가 좋은 이유는 다음과 같습니다.
글을 쓸 때에도 이미지나 영상 자료를 사용할 수 있지만, 이는 글을 구성하는 주 요소가 아니고 글의 질을 향상시키기 위한 일종의 보조제라고 생각합니다. 이러한 자료가 없이도 충분히 내용을 전달할 수 있는 글을 작성하는게 가장 좋겠지만, 추가적인 자료의 사용에 대해서는 제약이 없습니다.
개발자가 글을 써야하는 이유는 지식을 확실하게 습득하기 위해서, 그리고 자기 자신을 알리기 위해서 - 이 두 가지라고 볼 수 있습니다. 궁극적으로는 개발자 스스로 성장하기 위한 것이죠.
글을 쓰는데는 시간이 상당히 많이 듭니다. 인터넷 검색으로 몇 분이면 찾을 수 있는 것들도 블로그 포스팅으로 작성하려면 그의 몇 배, 몇 십배의 달하는 시간이 소요됩니다.
더불어 이 주제라는 것은 목적과도 밀접하게 연관이 되어서 어떤 글을 쓰는지에 따라서 목적을 달성할 수 있는가에 큰 영향을 주기 때문에 주제를 잘 선정하는 것은 글을 잘 쓰는 것 만큼이나 중요하다고 볼 수 있습니다.
만약 글쓰기를 통해서 지식을 습득하고자 한다면, 특수한 주제보다는 일반적인 주제가 좋습니다.
일반적인 주제는 나무의 뿌리나 사람의 척추처럼, 지식의 뿌리가 되는 것들입니다. 개발에 관련된 것들을 생각해보면 수학, 프로그래밍 패러다임, 아키텍처, 테스트 주도 개발 등이 있겠네요.
반면 특수한 주제는 나뭇가지나 말단 신경과 같은 지식의 응용이라고 볼 수 있습니다. 특수한 주제에 대한 글의 특징을 정리해보면 다음과 같습니다.
대표적인 예시로는 레퍼런스 문서가 있습니다. 레퍼런스는 이해하거나 논의할만한 대상이 아닙니다. 어떤 코드에 대한 설명과 사용법을 적어놓은 글이기 때문이죠.
글을 쓰다가 이러한 신호를 발견하면 다시 한 번 생각해보세요. 이 글이 정말 쓸만한 가치가 있을지. 저도 제가 쓰는 글이 "레퍼런스 문서의 간소화된 버전"에 지나지 않는다는 것을 깨닫고 낙담했던 적이 꽤 있습니다.
그렇다면 특수한 주제에 대한 글은 쓰지 말아야 할까요?
글쓰기를 통해서 자기 자신을 알리고 싶다면, 테마를 정해서 글을 작성하세요.
테마라는 건 개별 글을 포괄하는 큰 범주를 말합니다. 아키텍처 컴포넌트에 대한 글을 하나 작성한다면 글 하나로 끝이지만, 비슷한 글을 10개, 20개 작성한다면 시리즈가 됩니다. 이런 글들이 충분히 쌓이면, 그 분야에 대한 전문성을 가지고 있다고 할 수 있겠죠.
다만, 테마를 정할 때는 충분히 작은 범위로 잡으세요. 여러 분야에 대한 다양한 글을 쓰는 것보다 특정 분야에 대해 파고드는 것이 훨씬 더 인지도를 얻기 쉽습니다. 단순한 안드로이드 개발 블로그로 알려지는 것보다, "Compose에 대해서는 이 블로그를 보는게 제일 좋다"라고 알려지는게 좋다는거죠.
일반적인 주제의 글은 주제에 대한 포괄적인 이해를 하기 좋지만 작성하기도 어렵고, 읽기 어렵다보니 접근성이 높지는 않습니다. 글을 꾸준히 작성하기에는 적합하지 않죠.
때문에 이렇게 꾸준히 많은 글을 써야할 때는 특수한 주제로 글을 작성하는게 좋습니다. 다르게 이야기하면, 특수한 주제를 가지고 글을 쓸 때는 언제나 테마를 갖추어서, 독자가 해당 글을 통해 다른 글로 연결될 수 있도록 하는게 좋습니다.
지식 습득을 위해서 글을 작성하려고 한다면, 특정 영역에 국한된 주제보다는 좀 더 일반적인 주제를 다루는게 좋습니다. 자기 자신을 알리고 싶다면, 작은 주제를 테마로 잡고 꾸준히 글을 연재하는게 좋습니다.
글을 쓰다보면 대개 다음과 같은 고민을 마주치게 됩니다. 아래 리스트를 보면 글의 구성뿐만 아니라 글의 톤이나 색채, 외부적인 요소까지 고려할 것들이 정말 많습니다.
이는 굉장히 세부적인 부분이라서 일반적인 원칙을 도출해내기가 어렵습니다. 제 몇 가지 생각을 한 번 이야기해볼게요.
지금까지 글을 쓰는 이유와 전략에 대해 이야기를 했습니다.
글에서 언급하지 않은 것들이 많습니다. 그 중 하나는 용기, 혹은 동기입니다. 글을 쓰는 행위에는 상당한 용기와 동기가 필요합니다. 그렇지만 아이러니하게 글을 쓰고 나면 용기와 동기를 얻게 됩니다. 치밀하게 기획하고, 빈틈없는 논리로 구성된 글 하나를 작성하고 나면, 그 다음은 쉽습니다.
언급하지 않은 또 다른 요소는 지식의 공유입니다. 저는 인터넷에 올라오는 대부분의 글들은 스스로를 위한 글이라고 생각합니다. 하다 못해 스택오버플로우에 올라오는 답변도 Reputation이라는 사회적 자원을 얻기 위한 것으로 환원할 수 있다고 봅니다. 그런데 이렇게 자기 자신을 위해서 작성한 글을 보고, 누군가는 중요한 힌트를 얻어서 며칠동안 풀리지 않던 문제를 해결하기도 합니다.
이유가 뭐든, 글쓰기는 충분히 시간을 투자할만한 가치가 있습니다. 그동안 글쓰기를 이런저런 이유로 미루고 있었다면 이번 주말, 카페에 앉아서 키보드를 조금 두드려보는 건 어떠신가요?
멋진 글 써주셔서 감사합니다 :)