Jekyll로 옮기다


소고록
4 minute read

블로깅 환경을 Wordpress에서 Jekyll로 옮기게 되었습니다.

오랫동안 고민하다가 내린 결정입니다.

이 글에서는 의사결정 과정을 밝혀 두려고 합니다.

왜 Wordpress를 떠나는가

여전히 Wordpress는 제가 좋아하는 CMS입니다. 이유를 콕 집자면, 처음부터 에디터에 반했어요. 구조화된 글쓰기에 최적화된 잘 동작하는 위지윅 에디터를 갖고 있었지요. 최근에 Gutenberg 에디터로 업그레이드되면서 이 장점은 더욱 도드라졌습니다. 긴 글을 문단 따위의 작은 단위로 쪼개서 자유롭게 콜라주할 수 있게 되었지요. 이는 제가 좋아하는 또 다른 훌륭한 글쓰기 도구인 Scrivener를 닮았습니다. 한편 이 에디팅 경험이 모바일에서도 이어지는 것도 마음에 든 부분입니다. 혼을 쏙 빼 놓는 유혹이 너무 많은 데스크탑보다는 단조로운 모바일이 글쓰기에는 더 집중하기 좋아요. 적어도 페이스북을 한 화면에 같이 띄우진 못하잖아요?

하지만 동적으로 렌더링되어야 한다는 점은 항상 유지 보수의 고민을 떠올리게 했지요. 첫째는 해킹의 위협입니다. 매번 외부의 입력을 받아 실행되는 프로그램인 이상, 크래커의 위협에 잠재적으로 노출되어 있는 셈이지요. 그럼 업데이트를 자주 해 주면 될까요?

업데이트는 또 다른 골칫거리입니다. 앞서 언급하였듯이, 보안 때문에라도 Wordpress는 주기적으로 업데이트를 적용해 주어야 합니다. Jetpack을 연결해 두면 자동으로 업그레이드가 진행되기는 합니다만, 이게 생각만큼 우아하게 동작하지는 못합니다. 테마와 플러그인은 수동으로 업데이트 버튼을 눌러 줘야 합니다. 그리고 결정적으로, 가끔씩 Wordpress가 유지 보수 모드로 들어가서는 복귀가 안 되는 일이 생깁니다. 그럴 때는 잊혀졌던 암호를 기억 속에서 끄집어 내어 FTP에 가까스로 접속한 다음, .maintenance 파일을 지워 주어야 합니다(kinsta.com).

다른 하나는 호스팅 비용입니다. 고맙게도 지난 10년이 넘는 기간 동안 무상으로 개인 서버 호스팅을 제공해 주신 Platanus옹 왈, Wordpress는 몹시 무거운 프로그램이라고 합니다. 실제로 어드민 페이지에서 이것 저것 바삐 건드리면 이 말을 체감하게 됩니다. 페이지를 전환할 때마다 굼뜹니다. 이런 무거운 프로그램을 사용하려면 호스팅하는 서버의 성능도 어느 정도 받쳐 줘야 하겠지요. 즉, 적지 않은 돈을 투자해야 합니다. 운이 좋게도 저는 돈이 드는 일이 없었습니다만, 결국 Platanus옹께서 개인 서버 운영을 접으시기로 합니다. 제 웹사이트 호스팅은 유지해 주셨지만, 언제까지고 호의에 기대는 것도 실례이지요.

글쓰기에 고민하는 시간보다 트러블슈팅에 고민하는 시간이 더 길어지는 것 같았습니다. 뭐어, 그만큼 글쓰기를 게을리 했다는 반증이기도 하겠지만요.

수많은 대안들, 그 중에서도 왜 Jekyll이었나?

그렇게 ‘Wordpress가 최선인가?’ 하는 의문이 머리를 내밀기 시작했습니다. 곧 대안을 찾아보게 됩니다.

Wordpress.com은 Wordpress 환경을 벗어나고 싶지 않은 사람이라면 가장 먼저 떠올릴 대안일지도 모르겠습니다. 하지만 저에게 이 선택은 곧바로 아웃이었습니다. 저의 블로깅 빈도에 비해 유지 비용이 너무 비싸다고 생각했거든요. 커스텀 도메인을 적용하려고만 해도 1년에 10만원을 바쳐야 합니다.

여기서 한 가지 필요조건이 드러나는군요.

요건 1: 유지 비용이 적게 들어야 한다.

세상에 Wordpress만 있는 건 아니지요. 제가 Wordpress를 쓰기 시작한 이후로 굉장한 시간이 흘렀고, 인터넷 세상은 많이 바뀌어 있었습니다. 네이버 블로그 같은 후줄근한 블로깅 서비스에서 탈피해서, 아주 팬시한 블로그 서비스가 참 많아졌더라고요. Medium과 브런치가 대표적이겠군요.

Medium은…

글쓰기 환경만 놓고 보면 Medium이 Wordpress보다 본질에 더 다가가 있습니다. 에디터를 펼치면 오로지 커서만 깜빡이는 그 느낌이란! 매우매우 채우고 싶게 만들지요. 하지만 이 또한 포기했는데, 바로 수식 입력이 안 된다는 점 때문입니다. 학술적 주제의 글을 쓰는 데 장벽이 될 게 뻔했습니다. 다른 사람들은 어떻게 이 문제를 넘겼는가 찾아 봤는데, LaTeX를 pdf로 렌더한 다음에 이미지로 바꿔서 첨부하는, 그야말로 불편하기 짝이 없는 방식으로 버티고 있었습니다. 그리고 이런 방식이라면 모바일에서의 작성도 안 되겠지요.

요건 2: 수식 입력이 되어야 한다.

요건 3: PC에서도 모바일에서도 어디든지 동등하게 포스트 작성이 가능해야 한다.

브런치는…

제 인상 속에서 브런치는 Medium의 한국형 카피입니다. 그것도 아직 사업이 궤도에 오르지 않아서 미래가 불명확한 서비스로만 보였습니다. Medium은 독자에게 읽을 수 있는 게시물 수를 제한하고 유료 구독자(?) 제도 처럼 운영하는 수익 모델을 가지고 있습니다. 브런치는, 글쎄요? 처음에는 글빨 좀 날리는 저자들을 초대해서 서비스 홍보에 나서긴 했는데, 그 이후로 뭔가 잊혀지는 분위기 같아요.

브런치에 딱히 수식 입력 기능이 있어 보이진 않습니다. 수식을 적어 놓은 저자를 못 찾겠더군요. 수요도 없는 기능을 베타 딱지도 떼지 못한 서비스가 제공하고 있진 않겠지요. 코드 조각은 작성할 수 있을까요? Medium에는 유저 도움말에도 적혀 있지 않은 숨겨진 기능으로 코드 블록 입력이 가능합니다. 브런치는 이런 것도 없겠죠. 나중에 소설이라도 쓰게 된다면 그 때나 써 볼게요.

요건 4: 코드 입력이 가능해야 한다.

Jekyll은…

처음에 Jekyll은 사용하지 않으려고 했습니다. 모바일 작업이 안 될 거라고 생각했거든요. Jekyll은 정적 웹사이트를 렌더하는 SW이고, 따라서 필연적으로 컴파일 과정을 요구합니다. 그렇다면 컴파일 때문에라도 PC는 필수겠군. 그렇게 생각했습니다.

그런데 알고 보니, GitHub가 소스 수준의 Jekyll 파일을 올려 두면 자동으로 컴파일을 해 주고 있었습니다. 아아, 그래서 다들 Jekyll 웹사이트 얘기만 나오면 죄다 GitHub를 통하는구나 싶더군요.

또 다른 진입장벽은 위지윅이 안 된다는 점이었습니다. 제가 아무리 코딩을 좋아하더라도, 글을 쓰는 그 순간만큼은 위지윅 환경에서 작업하고 싶었습니다.

요건 5: 위지윅이 필요하다.

그런데 이 문제는 모바일 편집 기능과 동시에 해결이 됐습니다. 모바일 편집은 Jekyll과 연동되는 웹앱 서비스를 활용하면 가능해집니다. 이 방면으로는 prose.io와 forestry.io가 유명해 보였습니다. 그런데 prose.io는 웹으로 열어 놓은 메모장 수준의 원시적인 기능만 제공했습니다. GitHub에 직접 들어가서 문서를 작성하는 것과 편의성은 거기서 거기더라고요. forestry.io는 수익을 추구하는 상업 서비스인데, 돈을 벌어야 하는 입장이라선지 이미 완성도 있는 서비스를 만들어 두었더군요. 에디터가 Wordpress 구버전 에디터 느낌이 납니다. 제 수준에서는 무료 티어로 충분했습니다.

이제 Jekyll이 괜찮은 선택이 되었습니다. 그래서 넘어오게 되었습니다.

블로그, Jekyll, Wordpress, Medium, 카카오 브런치