November 03, 2019
독학을 시작한지 벌써 두 달 반이라는 시간이 흘렀다. 지난 과정을 평가해보고 남은 두 달을 알차게 보낼 수 있도록 재정비가 필요한 시기인것 같아 그동안 무엇을 했고, 무엇을 느꼈는지, 그리고 앞으로 무엇을 개선할지에 대해 간단한 회고를 작성해본다.
Project | Stack | Status |
---|---|---|
Amazon Prime 클론코딩 | HTML, CSS, Vanilla JS | Hold |
Popcorn Movie 클론코딩 | React, React Router, Netlify | 배포 완료 |
YouTube 클론코딩 | Node.js, Express, Pug, Passport, Webpack, AWS S3, mongo DB Atlas, Heroku | 배포 완료 |
Node.js Todo 관리 앱 (OOP) | Node.js | 완료 |
Node.js Todo 관리 앱 (CLI) | Node.js, mongo DB, mongoose, commander, chalk | Hold |
캐치마인드 클론 코딩 | Node.js, Express, Socket.io | Ing |
그 외
노마드 아카데미 챌린지 프로그램과 함께 front-end
+ back-end
+ DB
+ 배포
까지 전체적인 흐름을 익힌게 가장 큰 수확이었다. 앞으로 사이드 프로젝트를 하면서 배운 것을 내것으로 소화하고 응용하는 시간을 가지고 싶은데 어떤 프로젝트를 하면 좋을지 정하는게 새로운 과제가 된 듯 하다.
알고리즘 주 2회 풀기랑 TIL 작성하는건 두 달 정도는 열심히 한 것 같은데 요 근래 해이해졌다. 다시 맘잡고 해봐야지.
생각보다 Node.js를 다룬 프로젝트의 비중이 높다. 남은 두 달은 Vanilla JS와 React(Hooks, Redux)의 비중을 늘려봐야겠다.
독학을 시작하면서 가장 중점을 뒀던 세 가지에 기준에 대해 기대 이상으로 해낸 것 같아 뿌듯하다. 각각을 성취하는데 무엇을 했고 무엇을 느꼈는지 정리해보면 다음과 같다.
이 두가지를 묶어서 얘기하는 이유는 무언가를 할 때 재미와 성취감을 느끼는게 그 행동을 꾸준히 하게 만드는 원동력이 된다는걸 절실하게 느꼈기 때문이다. 그리고 개인적으로 두 마리 토끼를 잡는데 노마드 아카데미 코드 챌린지가 신의 한 수 였다. 적절한 난이도의 과제를 수행하면서 작은 성공들을 경험하고 코딩에 재미를 붙일 수 있었기 때문이다. 매일 또는 2-3일 단위로 새로운 과제가 주어졌기 때문에 자동으로 코딩을 할 수 밖에 없는 환경설정이 됐다는 점도 좋았다. 관리 가능한 수준의 도전이 계속 주어지다보니 꾸준히 코딩하는 습관을 유지하는데 도움이 많이 됐다.
코딩하는 습관을 만드는데 잔디심기가 빠질 수 없다. 80일 동안 해본 결과 확실히 효과가 있었다. 코딩기록이 누적돼서 시각적으로 보이니까 공백이 생기는게 싫어서 게으름을 피우다가도 다시금 책상 앞에 앉아서 키보드를 두드리게 됐다. 하지만 최근들어 잔디심기의 단점도 경험하고 있는 듯 하다. 굳이 깃헙에 공유할 정도의 가치가 없는 프로젝트의 경우 private repository로 관리를 하는데 이때는 contribution으로 인정되지 않기 때문이다. 열심히 코딩을 했으나 잔디가 심어지지 않아서 속상한 경우다. 또한 긴 호흡을 가지고 집중해야 할 때 커밋을 해야한다는 강박 때문에 흐름이 끊어지는 경우도 있었다. 잔디심기를 보다 효과적으로 활용하기 위해 고민이 필요한 부분이다.
잔디심기 프로젝트 (8/12~)
블로그에 주간회고를 기록하는것 역시 코딩하는 습관을 만드는데 도움이 됐다. 공개적인 플랫폼이기 때문에 단순히 이번주 회고와 다음주 계획을 공유하는 행위만으로도 계획을 실천하는데 생각보다 큰 영향을 미쳤다. 내가 한 약속을 지켜야 한다는 강제성을 부여한 느낌이랄까. 요근래 소홀하게 작성해온 감이 없지않아 있는데, 다시 초심으로 돌아가야겠다.
주간회고 (8/11~)
마지막으로 학습 방법을 찾는건 현재 진행형이다. 그래도 지금까지의 경험을 토대로 정리해보면
향후 계획이라니까 괜히 거창하게 들리는데 그냥 지금처럼 꾸준히 코딩하는 습관을 이어나가면서 React + Node.js + MongoDB 조합으로 사이드 프로젝트를 만들어보면 어떨까 싶다. 기존에 만들었던 프로젝트를 Hooks, Redux를 사용해서 리팩토링 해보는것도 좋을 것 같고. 함수형 프로그래밍에 익숙해지는것도 소소한 계획이다. 남은 2개월도 알차게 보내자!