블로그를 만들고 싶은 주니어 개발자를 위한 안내문

블로그 만들기 === 主客顚倒(주객전도)

시작말을 몇번을 지웠다가 새로쓰길 반복했다. 글을 잘 쓰지도 못하고 문법도 엉망인 내가 “글을 꾸준히 작성하기”를 올해 목표로 세웠었다. 개발적인 성장도 생각해서 블로그 혹은 개인홈페이지를 직접사용 만들어 보기로 결심했고 작성하고싶은 글 주제와 필요한 기능들을 정리했다.

내가이 사용중인 OneNote

작년까지는 Github Page를 사용했었는데 테마($40), 도메인($20)를 구매도 하고직접 디자인해서 사용해봤지만 몇가지 문제들이 매우 거슬렸다. 첫번째 문제는 디자인, 직접 디자인하면 너무 못생겼고 구매가능(무료포함)한 테마들은 2%부족했으며 수정이 용의하지 않았다. 두번째, 글작성은 무조건 컴퓨터에 텍스트 에디터 혹은 IDE로 작성 하고 수동으로 동기화를 시켜줘야 했으며 이미지 추가도 불편하고 글이 20개쯤부터 빌드가 버벅이는 느낌이 들기 시작했고 디자인을 변경하는데 불편함을 느끼게 되었다.

년초에 개인적으로 준비하던 Spring Boot 2와 Kotlin를 이용한 블로그겸 홈페이지 개발을 시작했다. 기본적인 기능을 모두 완성 하였지만 이번에도 디자인(프론트)와 유지보수에 문제를 발견하게 되었다. 내 경험상 스프링 어플리케이션을 구동하기 위해서는 최소 1GB램 이상이 필요했다. 하지만 1GB이상에 램을 사용할 수 있는 가상서버 혹은 클라우드 서비스는 월간 만원 이상의 지출이 계산 되었고 섣불리 프로젝트를 중단하였다.

처음부터 시작해서 블로그/홈페이지를 운영하려는 목적을 정리해보았다. 수익(광고), 자기개발, 언어배우기?

“man holding his chin facing laptop computer” by bruce mars on Unsplash

내가 새롭게 배우거나 알게된 지식들을 정리하고 미래에 똑같거나 비슷한 문제에 부딪혔을 때 나에게 도움이 되며 문제를 겪고있는 다른 사람들에게도 도움을 줄 수 있고 수익까지 얻을 수 있겠네? 이런 생각에 빠져 몇달을 수익에 집중된 블로그 모델을 생각하고 개발하기 위해 여러 시도를 하였고 여러번의 실수를 통해 내가 글을 써야하는 이유를 명확하게 정리할 수 있었다.

나의 글의 가격은 얼마인가

2017년 4월부터 현재까지 수익

자기개발과 지식정보공유를 함으로서 얻는 광고수익이 얼마일까? Github page에 20개 정도의 글을 작성하고 Google Adsens를 적용할 수 있는 권한이 생겼다. 큰 수익을 기대하진 않았지만 결과는 솔직했다. 꾸준하지 못한 이유도 있겠지만 나의 글들은 개발에 관한 짧은 생각이나 오류해결법 등 이였고 이는 많은 사용자들에게 관심을 받을 수 있는 주제는 아니였다. 광고수익으로 블로그 및 홈페이지 유지비로 사용하려고 했지만 부족한 금액이며 블로그의 디자인을 망치는 요인으로 생각되어 광고는 달지않기로 정했다.

유지비를 다시 계산해보니 너무 복잡한 서비스를 개발하려고 한다는 생각이 들었다. 년초부터 꾸준히 했다면 문제 없었겠지만 기획 했던 많은 기능들을 구현하기 위해선 많은 시간도 필요했다.

직접개발하는 설치형블로그

설치형 블로그를 사용하고 다른 기능들을 플러그인 등으로 추가하기로 했다. 멋진 디자인들도 구매해서 원하는 부분들을 직접 수정할 수 있어서 설치형 블로그들을 알아보았다. WordPressGhost중에 최근에 적극적으로 사용하는 Javascript로된 Ghost를 선택하였다. 작년보다 업데이트도 많이 되었고 API기능과 심플한 디자인으로 매우 매력적으로 다가왔다. 또한 Jekyll글들을 Import 할 수 있는 방법도 있어서 좋았다. 권장 메모리가 1GB이상이라 기존에 사용하던 AWS Lightsail 512MB에서 한단계 업그레이드 하였고 고스트 프로젝트 설치를 시작했다. 그런데….

“woman sitting on bed while holding mug” by Asdrubal luna on Unsplash

글을 작성하고 블로그를 관리하는 어드민 부분은 Ember로 작성되어 빌드를 해야하는데 메모리 부족으로 진행되지 않았다.— max-old-space-size=512 옵션을 적용해도 진행되지 않았다. top -o %MEM으로 메모리를 확인해보니 사용가능 메모리는 400메가 정도 이였다. 다른 프로젝트 프로세스와 MySQL, MongoDB서비스를 죽인뒤에야 정상적인 빌드가 되었다. 도메인을 연결하고 https://을 적용하고 진짜 문제를 발견했다. 검색기능이 애매했다. 검색결과 페이지와 검색을 직접 만들어야 했기에 시간을 아끼기위해서 선택한 것으론 적합하지 않았다. 직접 만들기 보단 시간은 적게 들겠지만 라이브러리를 파악하고 수정하는데 걸리시는 시간도 무시할 수 없다. 워드프레스를 선택할 수도 있었지만 PHP는 무언가 거부감이 들어서 그냥 설치형은 포기하기로 했다.

--max-old-space-size 최소값이 512값인 사실과 기타 삽질을 지식을 얻긴 했다..

돈내면서 글쓰기

8월쯤 선릉 인도에 있는 벤치에 앉아 친구를 기다리면서 새로산 아이패드로 디자인에 관한 글을 보게되었다. 영어로 작성되어 힘들게 모르는 단어를 찾아서가면서 보는데 문득 멋있다는 생각이 들었다. 누군가 글을 읽었을때 전문가처럼 보이는 글을 쓸 수 있는 곳, Medium이 생각났다. 깔끔한 디자인, 심플하면서 강력한 에디터가 마음에 들어서 바로 멤버쉽을 가입했다. 사실 1개월만 결제하고 마음에 안들면 취소하려고 했지만 실수로 1년($50)를 결제했다. 결제했으니 열심히 사용하자란 다짐을 했다.

Node와 React를 이용해서 블로그도 만들다가 글쓰기 좋은 에디터를 만들기 힘들다고 생각해서 많은 고민을 했었다. 글을 보여주는 디자인도 중요하지만 에디터가 엉망이라면 글을 쓰려는 의지조차 사라질 것만 같았다.

만약 당신이 무언가 만들어 보고싶고 글도 쓰고싶다는 복합적인 이유에서 블로그를 만들예정이라면 우선 글부터 써봐라. 블로그를 만들면서 많은 문제를 만나면서 무언가를 배울 수 있겠지만 세상에는 멋진 서비스들이 많다. 글을 쓰고싶은 것인지 블로그를 만들고 싶은 것인지 니즈를 명확하게 구분하고 행동하는게 시간과 돈을 절약하는 길이라고 느꼈다.

많은 블로그서비스와 설치형 블로그를 찾고 사용해보고 프로젝트를 생성과 삭제를 몇번 반복했다. 글을 쓰는 것 보다 블로그를 선택하고 디자인하는데 시간을 더 사용하는 주객전도를 맛보았다. 많은 개발자들이 원하는 서비스를 직접 만들다가 배보다 배곱이 커지는 경우가 많아진다. 사용성은 떨어지고 개발하는 시간은 시간대로 사용하고. 시간을 아끼기위해 더 많은 시간을 사용하게 된다. 하지만

언젠가 나의 필요에 의한 서비스가 많은 사람들에게 사랑받지 모르기에 한번 만들어 본다.