Monologue

About

100 Days of Gatsby - Day 1: Making a Blog

최근 계속 블로그를 만들어야겠다는 생각을 했다. 사실 예전에 몇번 시도해봤다. 네이버 블로그, 티스토리, 그리고 이글루 같은 것들을 조금씩 했었는데, 대부분 그만두었다. 이유는 여러가지가 있었다. 그냥 삶이 바빠서 - 귀찮아서 - , 사이트 생긴게 마음에 안들어서, 혹은 글쓰기가 부끄러워서 등등. 누구나 고개를 끄덕일만한 이유들이지만, 그럼에도 불구하고 블로그를 운영하는 사람들이 있다는 것은 두가지를 의미했다.

  1. 정말 블로그가 필요하거나
  2. 꾸준히 무언가를 하는데 익숙하거나

둘 다 지금까지의 내 삶과는 전혀 관계가 없었다. 주위 가장 친한 사람들한테도 내가 무슨 일을 하는지 잘 말하지 않던 내가 블로그에 글을 쓴다는건 앞뒤가 맞지 않았고, 가장 좋아하는 게임마저 2달마다 갈아치우는 성격에 꾸준히 무언가를 하는 것도 이상했다. 그렇다면 지금 이 글은 왜 쓰고 있는가 물으면, 어쩌다보니 저 두개가 상당히 중요한 - 적어도 최근 트렌드에서 중요하다고 여겨지는 - 직종에서 일하게 되었기 때문이다. 예상했겠지만 개발자다. 모든 회사가 포트폴리오를 요구한다. 나마저도 스타트업 직원답게 유사 HR을 종종 했는데, 블로그에 열심히 글을 썼거나 깃헙 잔디밭이 풍성하면 좋게 보이더라. 그러니까 나도 해야한다는 생각이 든거지.

첫번째 이유는 그렇게 채웠고, 두번째는 그냥 나이 들면서 하게 된 생각이다. 주위 사람들은 대부분 저 습관이 들어있더라. 저게 철이 드는건가 싶을 정도로 다들 되어있는데 나만 안되어있어서 좀 그랬다. 그래서 생각을 한게 꾸준히 블로그(일기) 작성을 하면서 내 자신을 좀 가다듬으면 어떨까 싶었다. 매일매일 공부하는거 체크도 좀 하고, 쓰고싶은 말도 좀 적고 하면서. 막상 이렇게 보니 쓰고 싶은 말 적는거로만 양을 다 채우게 생겼는데 뭐 아무튼 그렇다. 중요한건 이런 이유들로 해서 블로그를 만들어야겠다는 생각을 한 것이다.

어떻게 만들 것인가?

글의 제목이 이미 설명하고 있듯 GatsbyJS를 통해서 만든다. 가장 큰 이유는 회사에서 쓸 예정이기 때문이다. 원래는 앵귤러로 작업을 하려 했다. 회사에서 서비스중인 뷰어를 바닐라로 짜면서 어설픈 바닐라의 끔찍함을 맛봤기 때문이다. 정말 책이나 강의, 혹은 수업에서 절대 피하라는 모든 안티 패턴을 고스란히 밟으면서 지나갔다. 이게 아는 것도 없는데 계속 아웃풋을 요구하니까 자꾸 복사 붙여넣기 코딩을 하고 보여주고 넘어가는 코딩을 하게 되고... 클린 코드나 아키텍쳐 이런걸 고민할 짬이 없었다. 뭐 그런 책들의 서문에서 으레 하는 말이 '결국은 바른 구조가 시간 측면에서 효율적이다' 같은 이야긴데, 그건 공부의 왕도같은 이야기고 저는 당장 내일 마감을 해야한단 말입니다.

아무튼 그래서 아예 밑바닥부터 쌓기보단 좀 모양새 있는 프레임워크를 하고 싶었다. 그래서 앵귤러를 생각한게, 물론 AngularJS와 Angular는 아예 다르다고 하지만 그래도 가장 역사있는(?) 모던 웹 프레임워크고, 코드 구조가 너무 마음에 들었다. 컴포넌트 단위로 쪼개고, 그 컴포넌트 안에서도 칼같이 HTML/CSS/TS를 분리하는 모습은 정말이지 아름다웠다. 내가 고통받았던 형상관리, 종속성 뒤엉킴, 반복적인 코드작성 등등의 모든 문제를 단숨에 해결해줄 엑스칼리버였다.

하지만 희망은 잠시뿐이였다. 막상 배우려고 보니 쉽지 않았다. 프레임워크라는건 간단한 라이브러리나 오픈소스 사용과는 조금 다른 러닝커브를 갖고 있었고, 안그래도 시간에 쫒기는 회사에서 앵귤러 배울 시간을 달라고 요청하는건 불가능에 가까웠다. 엎친데 덮친격으로, 우리나라에선 앵귤러가 별로 인기가 없었다. 로켓펀치를 확인해보면 스타트업 절대 다수가 리액트를 쓰고 있고, 실제 FE 개발자 모집사항이나 프로젝트 요건들도 대부분이 리액트 경험을 요구했다. 회사 입장에서는 추후 채용을 고려해서라도 리액트를 쓰는게 합리적인 판단이었다.