
블로그 하나 만드는 게 왜 이렇게 무거워졌을까요
개인 블로그를 만들어 본 분이라면 한 번쯤 겪어봤을 거예요. Jekyll, Hugo, Gatsby, Eleventy… 정적 사이트 생성기(글을 미리 HTML로 구워두는 도구)를 골랐는데, 시작하기도 전에 Ruby를 깔고, Node.js 버전을 맞추고, 수백 개의 의존성 패키지를 받고… 정작 글은 한 줄도 안 썼는데 환경 설정에 반나절을 쓰는 경우요.
Bashblog는 이 피로감에 대한 정반대의 대답이에요. "블로그 엔진? 그거 그냥 bash 스크립트 파일 하나면 돼"라는 거죠. 별도 런타임도, npm install도, 복잡한 설정 파일 더미도 없어요. .sh 파일 하나를 다운받아서 실행하면 끝이에요.
어떻게 동작하는 걸까요
원리는 생각보다 단순하고, 그래서 더 아름다워요. bash라는 건 여러분이 터미널에서 명령어 칠 때 쓰는 그 셸(shell)이에요. macOS나 리눅스라면 이미 깔려 있죠. Bashblog는 이 셸의 기능과, 유닉스에 기본으로 있는 작은 도구들(sed, grep, cat, date 같은 것들)만 조합해서 블로그 발행 과정을 자동화해요.
흐름을 풀어보면 이래요. 여러분이 ./bb.sh post 하고 명령을 치면, 스크립트가 평소 쓰는 텍스트 에디터(Vim이든 nano든)를 열어줘요. 거기에 글을 마크다운으로 쓰고 저장하면, 스크립트가 그 마크다운을 HTML로 변환하고(마크다운 변환기를 함께 쓰거나 자체 처리), 미리 정해둔 헤더·푸터를 위아래로 붙여서 완성된 HTML 페이지를 만들어요. 그러고는 메인 인덱스 페이지를 새로 갱신하고, RSS 피드(구독용 파일)까지 자동으로 다시 생성해 주죠.
결과물은 그냥 평범한 HTML 파일 묶음이에요. 이게 왜 좋냐면, 어떤 웹 호스팅에 올려도 돌아가거든요. GitHub Pages든, Netlify든, 옛날 방식의 정적 호스팅이든 상관없어요. 데이터베이스도 필요 없고, 서버에서 뭔가 실행될 필요도 없으니까 해킹당할 구석도 거의 없고, 10년 뒤에 봐도 그대로 열려요.
'의존성 제로'라는 철학
요즘 웹 개발 생태계를 보면 작은 기능 하나에도 수백 MB짜리 node_modules 폴더가 따라붙잖아요. 그 안에 뭐가 들었는지 아무도 다 모르고, 1~2년만 지나도 버전이 안 맞아서 빌드가 깨지기 일쑤예요. 이걸 '의존성 지옥'이라고 부르죠.
Bashblog가 던지는 메시지는 "꼭 그래야 할까?"예요. Hugo는 Go로 짜여서 엄청 빠르고 기능이 풍부하지만 그만큼 학습할 게 많고, Jekyll은 Ruby 환경을 요구하죠. 반면 Bashblog는 운영체제에 이미 있는 것들만 써요. 의존성이 사실상 0에 가깝다는 건, 곧 "미래에 망가질 일이 거의 없다"는 뜻이기도 해요.
물론 단점도 분명해요. 화려한 테마 생태계나 플러그인, 복잡한 기능 확장 같은 건 기대하기 어려워요. 대규모 사이트나 팀 협업용으론 부적합하죠. 하지만 "내 생각을 가볍게 기록하고 싶다"는 1인 블로거에겐 이만한 게 또 없어요.
한국 개발자에게는
실용적으로는, 군더더기 없는 개인 기술 블로그를 빠르게 띄우고 싶을 때 정말 좋은 선택지예요. 글쓰기에만 집중하고 싶은데 도구 관리에 지치신 분께 추천해요.
그런데 저는 이걸 bash 공부 교재로 보는 걸 더 추천하고 싶어요. 많은 분들이 셸 스크립트를 '명령어 몇 개 이어 붙이는 것' 정도로만 알고 계신데, Bashblog 소스를 한 줄씩 읽어보면 변수 처리, 문자열 가공, 파일 입출력, 함수 구조까지 실전 bash의 정수가 다 들어 있어요. 평소 막연하게 느껴지던 sed나 awk 활용법도 살아 있는 예제로 익힐 수 있고요. CI/CD 스크립트나 자동화 작업을 다룰 일이 많은 백엔드·인프라 개발자라면 분명 도움이 될 거예요.
정리하며
도구가 복잡해질수록 우리는 본질(글쓰기)에서 멀어져요. Bashblog는 '필요한 만큼만'의 미학을 스크립트 한 개로 증명해요.
여러분은 어떠세요? 기능 풍부한 도구가 좋으세요, 아니면 단순하고 오래가는 도구가 좋으세요? 혹시 "이건 그냥 bash로 충분한데 굳이 무거운 프레임워크 썼다" 싶은 경험 있으셨다면 들려주세요.
🔗 출처: Hacker News