흔한 주니어 개발자의 VueJS 책 집필기

들어가기 전

이번에 처음 책을 집필하며 책 관련한 스터디를 여러 차례 진행하였습니다. 당시 스터디원을 모집하면서 간단하게나마 설문을 받았는데, 설문에 작성해준 내용에는 생각보다 많은 분들의 버킷리스트 혹은 목표가 책 집필인 경우가 많다는 것을 느꼈습니다. 그래서 이 글은 미래의 저자 분들을 위해 작성하였습니다. 이 글이 책을 집필하며 어려운 점이나 궁금한 점 혹은 조언이 필요한 분들에게 조금이나마 도움이 되었으면 좋겠고, 혹시라도 이외에도 도움이 필요하신 분은 언제든 이 글에 댓글 혹은 메일로 연락을 주시면 최대한 빨리 회신 드리도록 하겠습니다. 😁

감사 인사

일단 먼저 이 책을 쓰기까지 도움을 주신 김용기님, 백재연님, 이지만님, 김지영님, 김상열님, 박은정님, 윤경선님, 배수향님, 박지윤님, 이정재님, 박철현님, 허승님 모두에게 감사하며, 이 외에도 언급하진 않았지만 도와주신 모든 분들에게 이 기회를 빌어 감사하다는 말씀을 드립니다 :) (물론 이분들이 이 글을 볼지는 모르겠지만…😜) 무엇보다 공동 집필에 대한 제안을 흔쾌히 수락하고 10개월이 넘는 시간을 함께 고생해준 문동욱에게 고맙다는 인사 전합니다.

뜻밖의 기회

과거 2018년의 회고에도 썼지만, 나에게 생각치도 못한 기회가 찾아왔다. 2018년 8월 30일, 뜬금없이 스팸 메일이 의심되는 메일을 받았다. 🤔

책 집필 제안 메일

그럴 수 밖에 없는게 일단은 이미 유명한 수많은 개발자들도 많은데 굳이 하찮은 나에게 연락을 했을까라는 생각이 앞섰기 때문이다. 무엇보다 나를 어디서 보고 연락을 했을까라는 의심이 들어 회신을 보내니, 과거의 올린 블로그 글을 우연치 않게 보게 되어 연락을 했다고 회신이 왔다. 아마 지인 개발자들에게 블로그의 중요성을 전파하기 시작한 때가 이때 이후부터였던 것 같다. 😎

야너도?야나두!

(이미 많은 개발자들을 위한 자기계발서 책에서도 블로그에 대한 긍정적인 효과에 대해서 설명을 하고 있기 때문에 굳이 여기에서 다시 언급하진 않지만, 사실 나는 직접적으로 블로그의 긍정적인 효과를 경험했기 때문에 더더욱 블로깅에 대해 적극적으로 홍보하고 있다.)

일단은 주변의 지인 개발자 분들도 책 집필 문의에 대해서 메일로 받았다라는 이야기를 몇 번 듣고는 의심의 눈초리가 한풀 식은 것도 있었다. 여튼 메일에 대한 확신이 든 순간에 큰 고민 없이 제안을 수락하였다.

가즈아!!

일단 받은 책 진행 프로세스에 대해서 받은 제안은 다음과 같았다.

  • 👉 최소 6개월에서 한두달 정도 조율하여 집필을 진행했으면 좋겠다.
  • 👉 시작 전, 출판사쪽에서 보내주는 양식에 맞게 집필 계획서를 제출했으면 좋겠다.
  • 👉 인세는 원고 탈고 후 50만원, 출간이 된 후 50만원 총 100만원의 선인세를 지급하겠다.
  • 👉 초판은 1,500부에서 2,000부 정도 찍을 예정이며, 인세는 권당 책값의 10%를 지급하겠다.

주변에서 제일 많이 궁금해하는 것이 돈이었다. 🤑 다들 책을 쓰면 돈을 많이 번다고 생각을 하겠지만, 작업 기간 대비 금액은 거의 무보수라고 할 수준이다.

무보수 노동

하지만 책을 쓰는데 가장 큰 의의는 쉽게 경험해보지 못할 짜릿한 경험을 해볼수 있었다라는 점에서 돈보다 더한 가치를 느꼈다. 일단은 수락하고 나서 바로 함께 사이드 프로젝트를 하던 친구에게 공동 집필 제안을 했다. 지금도 아마 이 친구는 모르겠지만, 당시 제안을 하기 전에 의견을 물어보고 나서 제안을 수락하겠다라고 말을 했다. 하지만 사실은 미리 공동 집필에 대해 출판사쪽에 이야기를 한 상태였다. 이 친구 또한 항상 새로운 경험을 추구하며 도전하는 친구이기 때문에 거절할 것이라는 생각은 하지 않았다는 점이 가장 컸다. 😉

아마도 공동 집필을 하는 분들이 이 점이 가장 궁금할텐데, 공동 집필을 한다고 인세나 선인세가 2배가 되거나 하지 않는다. 혹시나 공동 집필을 준비하려는 분은 꼭 이점 염두해두길 바란다.

집필 계획서 작성하기

집필을 시작하기 마음 먹고 출판사 쪽에도 뜻을 전달한 후, 바로 집필 계획서를 제출하라는 회신을 받았다. 그리고 나서 바로 집필 계획서를 쓰기 시작하였다. 일단 집필 계획서에는 출판사마다 조금씩 다를 수 있지만 나 같은 경우는 다음과 같은 내용을 기재해서 제출해달라는 요청을 받았다.

  • 👉 도서명(또는 주제)
  • 👉 작성자와 작성일
  • 👉 연락처 및 이메일
  • 👉 제목(가제)
  • 👉 책의 핵심 컨셉
  • 👉 내용 요약 및 특징
  • 👉 이 책과 관련된 기술의 동향
  • 👉 타깃 독자층
  • 👉 경쟁 도서 및 경쟁 도서와의 차별성
  • 👉 원고의 탈고 날짜(3회에 걸쳐 탈고하며 1/3 분량씩 나눠서 제출하기 때문에 총 3번에 걸쳐 날짜를 기재해야한다.)

집필 계획서를 쓰기도 전에 마음 먹었던 컨셉은 VueJS를 이용하여 실제 애플리케이션을 만들어보기 였다. 나는 기술 서적 컬렉터여서 한달에 평균 10만원 어치의 기술 서적을 사모으는데, 사모은 책들을 보며 느꼈던 점은 많은 책들이 기술에 대한 API 등만 설명할 뿐 실제 응용해서 어떻게 써먹어야되는지에 대해서 다루는지 않는다는 점이 아쉬웠다.

도서관 짤

(10만원씩 꾸준히 언젠가는 도서관을 만들 예정이다🤤)

물론 그렇다고 그 책들을 보며 배울게 없다거나 혹은 그 안에 있는 내용을 모두 이해했다는 것은 아니다. 또한 모든 책들이 API에 대해서만 다루는 것이 아니라 응용하여 어떻게 내가 이 기술을 써먹어야지 좋은지에 대해서 설명해주는 좋은 책들 역시 많다. 하지만 이 책에서는 조금더 실무에 가까운 혹은 응용한다면 실무에서 바로 써먹을 수 있는 그러한 내용을 다루고 싶었다. 그래서 그때부터 열심히 집필 계획서를 작성하기 시작했다.

디자이너의 고통1

지금 이 글을 쓰며 오랫만에 집필 계획서를 살펴보았지만, 작명된 파일명을 보며 디자이너들의 고통을 조금이나마 이해할 수 있었다. 지금은 어떤 것이 최종본 집필 계획서인지 나조차도 알수가 없다… 거의 이정도면 디자이너의 흔한 최종 파일과 같은 느낌이랄까..

디자이너의 고통2

여튼 여차저차 대략적으로 한달 정도의 집필 계획서 끝에 출판사에서도 승인을 한 이후 본격적인 집필에 앞서 출판사의 담당자와의 미팅을 시작했다. 미팅에서는 주로 집필 계획서에 대한 내용과 계약서에 대한 대략적인 이야기 그리고 출판 계획 등에 대해서 이야기를 하였다. 그리고 몇일 뒤 출판사에서 최종 집필에 대한 승인이 떨어지고나서 계약서를 작성하였다. 10월 2일, 제안을 받고 나서 대략 2달 후 본격적으로 책 집필을 하기 시작하였다. 이때부터가 현기증 나는 책 집필이 시작될 것이라는 사실을 나는 몰랐다.

타이슨 명언

당시의 일정은 2018년 11월 30일 1차 탈고, 2019년 2월 28일 2차 탈고, 2019년 4월 30일 최종 탈고를 계획으로 시작되었다. 하지만 모두가 알듯 직장인에게 계획이란 큰 의미가 없었다.

원티드 짤

(한 취업 포털 회사에서 정말 계획에 대해서 잘 대변해주고 있는 것 같다.)

본격적인 집필 시작

본격적으로 집필을 시작하기에 앞서 먼저 시작했던 것은 포멧팅에 대한 규칙과 문체였다. 혼자 집필하면 아무 상관이 없었지만 공통 집필을 하게 되면 가장 큰 문제는 각자 쓰는 문체가 다르다는 것이었다. 그래서 대략적인 문체와 문서에 대한 포멧팅을 정하기 시작했다. 처음에 정한 규칙은 다음과 같았다.

  • 👉 “기본 형식은 이와 같다”를 기준으로 모든 문체는 평서형을 기준으로 작성한다.
  • 👉 이미지 내에 화살표나 박스를 추가한 경우 원본 이미지와 함께 “(line)” 폴더명을 함께 기재한다.
  • 👉 코드나 이미지 다음 문장에는 한 열씩 띄어쓴다.
  • 👉 제목과 단락에 대한 폰트 사이즈 규칙은 통일한다.

규칙을 정한 이후로는 구글 독스를 이용하며 하나씩 작성하기 시작했으며, 서로 작성한 글을 읽어보며 어색한 문제에 대해서는 구글 독스의 댓글 형태로 남기기로 하였다. 하지만 이러한 방식은 한 챕터 3개 정도 쓰다가 교체되었다. 구글 독스에다가 쓰는 것이 불편하다. README로 작성하게 해달라라는 공동 집필하는 친구의 의견 때문이었다. 찾아본 결과 pdf 혹은 docx 파일로 제너레이팅 해주는 모듈이 있고, 오히려 README 문법으로 글을 쓰면 더 나은 파포먼스를 낼수 있을거라고 판단해 나 역시 동의했다. 책을 집필하며 나중에 작성해야할 내용이나 놓치고 잇던 부분들은 이슈로 남겨두었고, 각자 쓴 글에 대해서는 서로에게 PR을 날려 서로의 글에 대해서 리뷰를 진행하였다. 하지만 이게 나중에는 엄청난 혹으로 돌아왔다. 😅 혹시나 책을 집필하려는 분들 중 README로 작성한 후 모듈을 통해 변환하려고 하신다면 나는 적극적으로 말리고 싶다. 우리가 하고자 하는 포멧을 세부적으로 조절할 수 없을 뿐만 아니라, 코드 역시 포멧팅이 다 깨져 결국에는 수작업으로 옮겨와야만 했다..

어이가 없네

책을 진행하며 총 2차례에 걸쳐 일정이 밀렸지만 가장 큰 이유는 포멧팅 문제도 문제였지만 직장은 다니면서 책을 쓴다는 것이 생각보다 쉽지 않았다. 책을 집필하기 이전에 한 회사의 개발자로서 회사 내에서의 역할 역시 무시못할 중요한 일이었다. 책을 집필하는 시기와 이직하는 시기가 겹쳐 이직한 후 새로운 조직에 적응하는 것도 일이었지만, 새로운 조직에서 담당하게 된 프로젝트의 일정 역시 책을 집필하는 시기와 맞물렸다. 회사의 프로젝트에 소홀할 순 없으니 결국에는 책을 집필하는 것에 소홀해질 수 밖에 없었다. 😒

베타 리딩 스터디 모집

처음 책을 쓰다보니 우리 책이 실제 대상 독자군들에게 어떻게 다가갈 수 있을지에 대해 명확하게 확신이 들지 않았기 때문이다. 아마 책을 처음 쓰는 분들이 공통적으로 고민하는 부분이 아닐까 싶다. 그래서 실제 우리 책에서 독자를 하는 분들을 모시고 스터디를 진행하기로 했다. 직접 옆에서 집필된 책을 보며 공부하며 어려움을 겪는 부분에 대해서 조언을 드리고, 우리는 그 부분에 대해서 조금더 쉬운 표현으로 바꾸거나 지나친 부분들에 대해서 내용을 추가하기 위해서 였다.

I Want to you

그렇게 2월 VueJS 커뮤니티와 하코사에 글을 올려 스터디원을 모집하기 시작했다. 대략 1주일 정도 모집을 하였지만, 이렇게 많은 분들이 지원해주실지는 상상도 못했다. 이 글을 읽고 계신 분들중 당시 스터디 신청한 분들도 계실지 모르겠지만 130명이 넘는 인원이 지원을 하였다.

저요저요

공간상의 이유로 모든 분들을 다 모시지 못하고, 그 중에서도 책에서 독자 타켓팅이 되는 분들에게 연락을 드렸다.(당시 이메일을 기재해주신 분들에게는 한분한분 죄송하다는 메일을 드렸지만, 혹시 그때 연락을 받지 못한 분들에게는 다시 한번 스터디에 관심을 가져주셔서 감사하고, 함께 하지 못해 죄송하다는 말씀을 드리고 싶다.) 그렇게 2달동안 스터디를 진행하였다. 당시 스터디를 진행하면서 책 뒷부분들은 계속해서 집필을 하고 잇었는데 집필 속도를 따라 잡는데는 얼마 걸리지 않아 오히려 책을 씀과 동시에 리뷰를 진행하기도 했다.😅 그렇게 2달동안 수많은 오타와 수정을 반복하여 6월 드디어 최종 탈고를 하였다. 처음 최종 탈고를 하기로 한 4월 30일에 비해 거진 두달이나 밀린 일정이었지만, 담당자분에게 들어보니 이정도면 양호하다는 이야기를 들었다. 실제 집필하시는 분들이 반년 이상 밀리는 경우도 많다고 한다

끝을 향한 마지막 여정

책을 다쓰고나서 이제 본격적으로 책 제목에 대해서 고민하게 된다. 책을 쓰기 전에는 책 제목을 확정 짓고 책을 써야하는지 알았지만, 막상 진행해보니 내용을 다쓰고 나서 정한다는 점이 의외였다. 책 제목을 정하면서 정말 재미있는 의견도 많이 나왔지만, 작명 센스가 없는 나로서는 책 제목을 정하는게 고역이 아닐수 없었다. 그래서 주변 지인들의 의견과 무엇보다 출판사 담당자 분의 의견이 책 제목을 짓는데 가장 큰 힘이 되어주었다. 그렇게 책 제목은 커피 한잔 마시며 끝내는 VueJS로 확정 지었다😊

책을 최종 탈고 및 책 제목도 확정짓게 되면 이제 출판사 쪽에서 책의 컨셉에 맞게 책 내부의 디자인과 책 표지를 디자인 하여 몇가지 시안을 보내준다. 내가 받은 시안은 아래와 같이 총 3가지 였다. 아무래도 책 제목을 반영한 디자인이지 않나 싶다.

저요저요

결국 이중에 주변 지인분들의 조언을 통해 2번 시안으로 최종 결정하였다.

이때까지만해도 책을 다썼다라는 실감이 되지는 않는다. 정말 책을 썼구나 라고 실감하던 때는 서문과 작가소개를 쓸때였던 것 같다. 그 동안 책을 사서 보면 서문을 그렇게 주의 깊게 읽지 않앗는데 서문에 책에 대한 저자의 생각이 가장 많이 들어간다라는 점을 서문을 작성하면서 느꼈다. 책을 쓰며 어떠한 생각을 가지고 썼는지, 어떠한 분들에게 어떠한 지식을 전달해드리고 싶었는지에 대해서 정말 많은 고민을 하게 되는 시간이었다. 그리고 무엇보다 서문을 작성하며 느낀 것이지만, 이 책을 쓰기까지 너무 많은 분들의 도움이 있었구나를 느꼈다.

그렇게 뒷표지 문구, 찾아보기, 저자 소개, 서문 그리고 전체 책에 대한 검토를 마치고나서야 드디어 7월 19일 책 집필에 대해 마무리를 하게 되었다.

책을 집필을 마치며

주변에서도 나와 같은 집필에 대한 제안을 받는 분들을 심심치않게 볼수 있다. 하지만 대부분의 분들이 내 지식에 대해 누가 궁금해할까 하는 부담감으로 인해 재안을 거절한다고 한다. 나 역시도 그러한 부담감을 갖지 않은 것은 아니였다. 혹여라도 누군가에게 잘못된 지식을 전달하면 어떻게 하지 혹은 한문장 한문장이 다른 누군가에게 불편하면 어떻게 하지 라는 걱정이 많이 들엇다. 하지만 반대로 그러면서 글을 쓰는 방법과 내 의도를 효과적으로 전달하려면 어떻게 해야하는지에 대해서도 고민을 하게 되엇고, 무엇보다 모르는 지식들을 나역시도 누군가에게 전달하기 위해 공부해나가기 시작했다. 오히려 책상에 앉아 혼자 공부하는 시간보다 책을 쓰며 보낸 시간이 더 많은 성장을 이루지 않았나라는 생각을 한다. 혹여하도 집필을 준비한다던가, 혹은 제안을 받은 분들이 이 글을 읽고나서 집필에 대한 결정을 하는데 도움이 되었으면 한다.

현재 이커머스회사에서 frontend 개발자로 업무를 진행하고 있는 Martin 입니다. 글을 읽으시고 궁금한 점은 댓글 혹은 메일(hoons0131@gmail.com)로 연락해주시면 빠른 회신 드리도록 하겠습니다. 이 외에도 네트워킹에 대해서는 언제나 환영입니다.:Martin(https://github.com/martinYounghoonKim
2019년 상반기의 회고
Javascript 라이브러리에 타이핑하기