정적 사이트 생성기(SSG: Static Site Generator)

지킬(Jekyll)이라는 도구가 등장하면서 정적 사이트 생성기(SSG: Static Site Generator)가 각광받던 때가 있었다. 나도 지킬과 깃허브 페이지(GitHub Pages)를 이용하여 오래 전에 블로그를 구축했었다. 정적 사이트 생성기는 데이터베이스를 포함해 웹 페이지를 렌더링(Rendering) 하는 데 필요한 백엔드(Backend) 솔루션들을 구축하지 않아도, 잘 알지 못해도 훌륭한 사이트를 만들어 준다는 장점이 있다. 결과물인 정적 사이트는 오로지 HTML(Hyper-Text Markup Language), CSS(Cascading Style Sheet), JavaScript로만 구현되어 오로지 브라우저만 있으면 동작한다.

예를 들어, 카테고리(Category) 기능을 서버의 도움없이 어떻게 구현한다는 것일까? 이를 위해서 사전에 빌드(Build) 과정이 필요하다. 이 빌드 과정에서 지킬은 카테고리 기능을 위해 존재해야 하는 모든 페이지들을 사전에 생성하고 이들을 하이퍼링크(Hyper-link)로 엮는다.

개발자의 입장에서 처음 마주한 지킬은 빠른 속도와 마크다운(Markdown) 언어로 작성된 게시글 더미를 한 번에 웹 사이트로 포장해 준다는 점이 매우 매력적이었다. 그러나 내 블로그는 방치되었고 방치한 이유를 곰곰히 생각해보니 두 가지로 정리할 수 있었다.

하나, 어렵다.

지킬은 루비(Ruby)라는 다소 생소한 언어로 개발되었다. 지금은 지킬의 대안 기술이 많아 개중에는 익숙한 언어로 개발된 것도 있을 순 있겠다. 어쨋든 루비는 익숙하지 않고, 무엇보다 루비의 버전과 패키지 매니저에 관련된 문제를 몇 번 겪은 이후로는 손이 가지 않았다. 다른 대안 기술로 갈아탈까?라고도 생각해 봤지만 워낙 많아서 고르는 것도 귀찮고, 고른 이후에도 이리저리 만져보다 지쳐 방치될 것이 뻔했다.

둘, 번거롭다.

번거롭다? 지킬을 쓰면 별도의 백엔드를 구축할 필요가 없으니 편힌데? 그러나 이는 개발자의 관점이다. 작가의 관점에서는 한없이 불편했다. 앞서 말했듯이 작성한 게시물을 등록하기 위해서는 루비와 지킬이 설치된 별도의 PC에서 빌드하여야 한다. 나는 블로그를 깃허브페이지에서 운영했기 때문에 커밋(Commit)/푸시(Push)라는 별도의 과정을 거쳐야만 했다. 핸드폰으로 찍은 사진을 올릴라치면 이는 또 새로운 난관이다. 알겠지만 이 일련의 과정들은 핸드폰이나 태블릿에서 하기가 어려운 작업이다.

지킬은 안 좋은 도구?

지킬이 이렇게 안 좋은 도구니까 추천하지 않는다고 이야기 하고 싶은 것은 아니다. 정적 사이트는 그 특성 상 성능과 보안 측면에서 우수하다. 커뮤니티에는 고품질의 무료 테마도 많고 각종 플러그인과 디스커스(Disqus)를 활용하면 워드프레스(WordPress) 이상으로 훌륭한 사이트를 만들어 낼 수 있다. 다만, 나처럼 귀차니즘이 많거나, 핸드폰/태블릿을 이용해 수시로 메모나 정리를 남기고 싶은 목적이라면 초심을 잃기 쉽다는 것이 요지이다…

그래서 구글 블로거(Blogger)?

지킬/깃허브페이지에 회의를 느끼고 시선을 돌려보니 요즘은 미디엄(Medium), 브런치(Brunch)로 대표되는 1인 컨텐츠 플랫폼이 유행인 것 같았다. 오로지 글쓰기에만 집중하게 해주는 도구들인데 유행의 배경에는 아마 내가 느낀 회의감? 같은 것도 일부 있을 것으로 생각된다. 원조 격 플랫폼인 미디엄은 깔끔한 에디터를 제공하고 유용한 정보가 담긴 글은 구독자를 대상으로 수익을 창출할 수 있게끔 도와준다. 이 때문에 미디엄 자체에는 훌륭한 작가와 글들이 넘쳐나고 이는 큰 장점이다. 덕분에 나도 도움을 많이 받았고. 하지만 개인적으로 이런 식의 제한을 두고 싶진 않았고(물론 내가 훌륭한 글을 쓰진 않는다), 한글이나 마크다운에 대한 지원이 빈약하다는 지적에 패스. 유사 서비스인 브런치도 패스. 요즘 많이 보이는 벨로그(Velog)는 다 좋은데 서비스가 과연 계속 유지될 지? 의문이 들었고, 워드프레스(WordPress)는 너무 마음에 드는데 무료로 쓰기에는 저장공간 제한, 광고 게재와 같은 제한이 있는 게 마음에 걸렸다. 남은 건 티스토리(tistory)와 구글 블로거(blogger)인데 굳이 평하자면 단점이 없는 무난한 서비스랄까? 결국 구글 계정이 있는 김에 구글 블로거를 선택하였다.