//
Search
Duplicate
💪

2018년 회고록 by 구닌

Created
2018/12/17 08:43
카테고리
회고
개발
프론트엔드
Status
Done
이 글은 notion으로 작성되었습니다.
2018년도 거의 끝나가는 시점에서 다들 하는 회고록으로 블로그를 시작해 볼까 한다...

Prologue (or FYI)

2017.10월에 입대해서 2018년 12월 17일 현재 상병 5호봉(!)으로 군복무 중이다. 특기는 30010 프로그램작성병!
사지방과 사무실에서 열심히 코딩하o고 있지만 현실적으로 코딩하기 정말 어렵다
이것저것 많이 시도를 하려고 했었다... 돌아보면 하나만 팔걸 후회가 되기도 하지만 잘 한거 같기도 하다...
열악한 개발 환경에서 개발하려니 현자 타임이 오는 게 한 두번이 아니었다.
하지만 부대 내에 열심히 하는/잘 하는 분들을 보고 동기 부여를 계속 해왔었다.
코딩 이외에도 군생활 쉽고 재밌게 하자는 게 내 목표이다.

Github Review

Language Use History

<Figure 1> Github Commit Graph by Language (src: http://sourcerer.io/ahnsv)
전반적으로 프론트엔드 쪽 토이프로젝트를 많이 진행했었다.
2018년 초반에는 자대 전입와서 처음으로 프로젝트를 진행하면서, materialize css를 이용해서 기존에 있던 군용 기상 앱을 리뉴얼했었다.
HTML+CSS 삽질 덕분에 다른 프로젝트에 CSS쓸때 조금 더 빠르게 진행할 수가 있었다. 이때 좀 CSS라이브러리는 최대한 지양해야겠다고 느꼈었다.
그리고 중반에는 같은 팀 선임이 함수형 프로그래밍에 대해서 소개시켜줘서 Haskell을 잠깐 했었고 (커밋에는 왜 없지...), 자바스크립트를 함수형으로 하려는 노력들을 했었다.
여전히 함수형 패러다임으로 중요 로직들을 설계하려고 하지만, 아직까지 눈에 띄게 좋은 점을 모르겠다. 차라리 함수형으로 설계하는 데 비용이 더 드는 듯...
<Figure 2> Languages (src: https://sourcerer.io/ahnsv)
다음으로 가장 많이 썼던 언어는 Go 언어였다. 백엔드쪽 지식이라곤 거의 전무한 것과 다름없었던 나에게 흥미로운 문법과 직관적인 API 구조와 모듈 관리 등이 재밌었다.
Gin과 gorilla 라이브러리들로 백엔드를 구성하고 HTML파일을 serve하는 연습도 많이 했고, 크롤링도 몇번 연습했다. 덕분에 Python으로 크롤링 예제들을 만들때도 도움이 많이 되었다.
또, Docker도 몇 번 써봤었는데 아직 활용하기에는 개발 환경이나 관련 지식이나 부족한 거 같다. 하지만 Docker 특유의 혁신적임은 느끼기에 충분했다. AWS에도 손을 댔는데 go-aws-sdk로 DynamoDB와 EC2, S3에 연결해서 정보를 받아오는 연습들을 했었다. secretkey 관리하는 방법을 배웠다. AWS는 앞으로도 최대한 많이 써보려고 한다... 아니면 NCloud.
하반기에는 Typescript에 빠져서 Typescript없이는 살 수 없는 몸이 되어버렸다. Static Typing과 자바스크립트에서 console.log로 잡기 어려운 버그들을 컴파일 타임에서 잡을 수 있다는 데다가, ES6 문법이 대부분이어서 접근성이 좋았고, vue나 react 같은 라이브러리들과도 케미가 좋다고 생각했다.
가장 큰 장점은 vscode와 같이 사용했을 때 엄청난 시너지가 나왔다. 자동 type/code suggestion과 snippets 등등 신세계를 보여주었다...
나중에 쓰겠지만 typescript 덕에 군생활에 있을 거라고 생각지도 못한 일이 벌어졌다.

Commit History

<Figure 3> Isometric Chart View - ahnsv "군인인데 ㅅㅌㅊ ㅇㅈ?"
전입 초기에는 적응하느라 휴가 나가서만 코딩했었고, 좀 짬이 차면서 슬슬 코딩을 시작했다. 사무실 일하면서 배운 것들 TIL repo에 시간 날때마다 적어 놨고, 사지방에서 종종 코딩도 많이 했다. 1일 1커밋도 가능할 듯 싶었으나 이런 저런 이유 때문에 포기했다.
한번 8월에서 9월 사이 보름 정도 현자타임이 와서 한동안 코딩을 안하다가 다시 동기 부여를 하고 꾸준하게 커밋을 하려고 했었다. 사실 로컬에서 커밋하고 안 올린 토이 프로젝트가 엄청 많고, 올렸다가 지운 repo도 몇몇 있어서 실제로는 훨씬 많을 듯
10월에서 11월에는 NAVER해커톤 준비 때문에 커밋 수가 확 늘어났다. 처음으로 손 코딩과 설계부터 천천히 준비를 했지만 지금 돌이켜 보면 더 잘 준비할 수 있었는데 아쉽다.
이전 코드들을 보면 어이없거나 부끄러운 코드들이 많은 걸 보면 꽤 열심히 느리지만 꾸준히 잘 해온 거 같다는 생각이 든다. 아직 멀었지만 :(

Projects

시간 날 때마다 토이 프로젝트 리포를 파서 작업하다가 힘빠져서 아니면 알 수 없는 문제들에 막혀서 포기한 프로젝트들이 수두룩 했다. 앞으로는 좀 더 프로젝트 시작하면 끝내기 까지 집중하는 연습을 해야겠다고 느낌
Typescript로 진행했던 Compiler API를 이용한 UML 빌더이다. PlantUML을 사용해서 Visualization을 했고, JSON으로 parsing후에 visualize 시킨다. PlantUML d.ts 파일을 직접 작성했다.

Takeaways

Typescript를 하드코어하게 사용해 보았다. API Documentation도 안 되어있는 Low-level까지 건드리느라 좀 많이 힘들었었다.
UML과 AST의 개념에 대해 정리해 보았다. 나중에 Compiler쪽도 공부를 많이 해봐야겠다고 느낌
Typescript에 자신감
혼자 작업할 때 issue로 관리하는 게 의미 있나 싶었는데 굉장히 도움이 많이 되었다. Git commit message로 이슈 닫을 때 branch파서 하는 것 보다 뭔가 더 뿌듯한듯
Chrome Extension 프로젝트들이다. Chrome Extension에다가 vue나 react같은 라이브러리를 얹어서 (게다가 typescript까지 시도했음) 시도를 했었다. 사실 browser extension 만큼 결과물을 금방 확인할 수 있는 프로젝트들도 잘 없을 듯. 내년에는 좀더 많이 extension 쪽을 파보고 싶다
현재는 notion unofficial go api를 가지고 블로그를 재구성하려고 생각중이다... notion은 정말 좋은 툴인 것 같다. 사실 이거 만들다가 official API가 나오면 어쩌지라는 걱정도 된다.

Life In General #군생활

Power Lifting
Strength 루틴을 시작했다... BB식으로 깨작깨작 하던 걸 저반복 고중량으로!
2018년 초반 BP 77.5/SQ 90/DL 105 → 12.17 1RM BP 120/SQ 170/DL 180 3대 470
허리 디스크 증상이 있어서 지금은 쉬는 중
IT 동아리
프론트엔드 프레임워크 프로젝트 (일명 프3) 진행 중
IE8 호환 가능한 UI 컴포넌트로
세미나
헬스 세미나
프3 프로젝트에서 느낀 점이나 문제 해결 과정 share예정
밴드 동아리
부대 창설 행사 공연
군무원 체육대회 공연
계룡학사 크리스마스 공연
공군 공감 출연

TMI

공감 출연은 아마 위로휴가를 받을 거 같다
네이버 캠퍼스 핵데이 후 우수참가자로 선정되어서 면접을 봤지만 결과는 탈락... ㅠㅠ
네이버 FE Platform 면접 본다니까 점점 사무실에서 프론트엔드 업무는 나한테 던져지고 있다... 손해인듯

Overall

열심히 산다고 살았는데 모아보니 꽤 많은 것들을 하려고 했던 2018년이었다.
내년에는 전역의 해이고, 남은 군생활 동안 그리고 전역 후에도 생산적으로 개발자로써, 또 인생 즐겜러로써 남들이 뭐라 생각하건 내가 즐거운 것들, 좋은 사람들과 같이 기억에 남는 한 해가 되었으면 좋겠다.
회고록 끝!