블로그는 바닐라 자바스크립트로 만듭니다

블로그의 본질은 글쓰기

이 글은 블로그를 직접 개발하고 운영할 때 겪는 어려움을 정리한 것입니다. 플랫폼에서 블로그를 개설해 글을 쓰는 분들에게는 해당하지 않는 이야기입니다.

저는 처음 블로그를 만들 때 당시 가장 많이 쓰이던 최신 기술인 Jekyll, Gatsby 등을 써서 블로그를 운영했습니다.

그런데 시간이 지나면서 본래 목적인 "글쓰기"에서 벗어나 블로그 자체를 유지보수하는 데 시간을 쏟고 있는 제 모습을 발견했습니다. 사용하는 라이브러리와 프레임워크를 익히고, 새 버전의 breaking change에 대응하느라 바빴죠. 전 블로그를 잘 만들고 싶었던 게 아니라 그저 글 쓸 공간이 필요했을 뿐인데 말입니다. 게다가 마음에 들지 않아 프레임워크를 두 번이나 바꾸면서 오히려 배보다 배꼽이 커지고 말았습니다.

누군가는 이 과정 자체를 즐기며 블로그에서 기술 역량을 뽐내고 싶을 수도 있겠지만, 저는 그런 건 블로그가 아닌 별도의 사이드 프로젝트로 풀어야겠다는 생각이 들었습니다.

블로그를 만들면서 깨달은 건 블로그란 결국 글쓰기를 위한 도구라는 점입니다. 글쓰기를 위한 것이라면 글 쓰는 데 집중할 수 있어야 하고, 그러려면 집중할 수 있는 환경이 갖춰져야 합니다.

그래서 앞으로 블로그는 Vanilla JS로 개발하기로 마음먹었습니다. 순수한 HTML/CSS/JS만 쓰면 기술 트렌드에 휘둘리지 않고, 유지보수 부담도 크게 줄어들 거라 생각합니다.

글쓰기에 필요한 의존성

그래도 아래 의존성은 남겨두었습니다.

  1. Code highlight: Prisim
  2. Hosting: GitHub pages
  3. Comment: Utterances

글 본문에 코드 블럭을 넣을 일이 있어서 Prism 라이브러리를 추가했고, GitHub Pages는 무료 호스팅인 데다 github.io 도메인이 멋져서 쓰고 있습니다. 댓글은 GitHub 저장소의 이슈 기능을 활용하는 utterances를 쓰니 복잡한 설정도 필요 없습니다.

이제 외부 의존성은 "글쓰기"에 꼭 필요한 게 아니라면 최대한 추가하지 않으려 합니다. 당장 프레임워크를 쓰면 멋져 보이고 편해 보이지만, 시간이 지나면 의존성 업데이트가 숙제가 됩니다. 저는 10년이 지나도 손대지 않아도 되는 기술 스택을 택했습니다. 여러분은 어떻게 하시나요?

요약

  1. 블로그는 글쓰기를 위한 것이다.
  2. 1번에 집중하려고 직접 운영하는 블로그는 바닐라 자바스크립트로 만든다.

이 블로그를 구성하는 코드는 doong-jo/doong-jo.github.io에서 보실 수 있습니다.