2018년의 마지막 날

어떤 일을 했는가

컴퓨터를 전공하다

아직 학부 1학년이라 전공보단 교양 수업의 비중이 높았다. 그래도 전공만큼이나 깊게 알려주는 수업을 골라 나름 의미있게 보냈던 것 같다. 기초 전산학 이론이나 인공지능 이론 강의가 가장 인상 깊었다.

윗학년 전공으로 미리 자료구조를 배웠다. 파이썬을 활용해 레퍼런스에 의한 참조 방식으로 다뤘는데, 저수준적으로 배우지 못한 점이 아쉬었다.

블로그 시작

frontend.moe란 시각적인 부분을 담당하는 ‘Front-end(앞단)’ 와 사랑이나 호감을 표현하는 일본어 ‘もえ(모에)’ 를 조합해서 만들었습니다. 자주 찾고 싶은(호감), 기술 블로그(프론트 엔드)를 지향하고자 이런 이름을 붙였습니다.

지금 보고 있는 이 블로그이다. 예전의 티스토리 블로그에서 Hugo라는 정적 페이지 도구와 AWS CloudFront를 CDN으로 사용하여 새로 옮겼다.

정기적으로 프론트 엔드 기술을 다룰려고 했지만 아직은 배우는 입장이라 실행하지 못했다. 그렇지만 한달동안 스크랩한 글을 요약하는 등 글로 쓸만한 내용을 비정기적으로 정리해 올려 한해동안 10개 정도 포스팅을 할 수 있었다.

소스 관리

2017.01.12 서울

?? : 요새 뭐하세요?

나 : 지금은 딱히 하는 일 없어요. 개발 공부를 멈춘 상태라 깃헙에 올려둔 레포들도 전부 반려한 상태에요.

?? : 아.. 버려진 자식들인가 보군요 ㅋㅋ

쓸모 없는 깃허브 레포지토리를 정리하고 커밋 로그를 깨끗하게 관리하는 등 소스관리에 신경을 기울였다. 부작용으로는 git push -f 를 자주 쓰게 되었다. 하루에 한 단위로 푸쉬하는 습관을 가져야 할 것 같다.

잘한 점

의미있는 코드를 작성하다

프로그래머로서 당연한 미덕이지만 이제서야 할 수 있게 되었다. 예전에는 단순히 작동하는 것에 의미를 두어서 그 이상의 투자를 별로 안했다. 지금은 코드를 되도록 간략화 하고 의미있게 쓰도록 신경을 기울이게 되었다.

  • 가능한 변수 객체를 줄이고자 부분적으로 함수형 프로그래밍을 쓰게 되었다.

    • 어렵게 생각했지만, 짧게 쓸려고 하다 보니 함수 자체로 값을 전달하는 방식이 필요해졌다.
    • 함수형 프로그래밍에 대한 개념은 유인동 강사님의 자바스크립트로 알아보는 함수형 프로그래밍에서 도움을 받았다.
    • 강사의 동명의 책을 같이 구입했는데 자바스크립트 환경에 특화된 서드파티 라이브러리를 중점으로 설명한 것이 맘에 안들었다. 내가 기대했던 것은 적어도 ES6 혹은 순수 함수형 개념이었다.
    • 그래도 map, reduce, 화살표 함수 혹은 파이썬의 lambda 정도 사용하게 되었고 아직 커링(curring) 이상 부분부터는 사용할 일이 없어 용도를 모르고 있다.
    • 숏코딩으로 간단한 알고리즘 문제를 풀 때 애용하고 있다.
  • if 문 없이 다른 방법으로 코드를 작성하게 되었다.

    • 딕셔너리 객체나 함수를 사용해서 코드의 분기를 다루게 되었다.
  • 파이썬의 iterator 개념을 이해했다.

장비 몇가지를 새로 구입했다

  • MacBook Pro 2017 13인치 + 16GB램

    • 1학기 초에 학교 다니면서 쓸 랩탑으로 사게 되었다. 윈도에서 느꼈던 불만이 맥으로 옮기면서 대부분 없어졌고, 교과서와 프로그래밍 서적을 들고 다니기 귀찮아서 전부 스캔해서 랩탑으로 보고 있다. 뷰어는 PDF Expert를 사용 중이다.

    IMG_20181231_215204

  • LG Ultrafine 4K 리퍼

    • 해외 직구로 저렴하게 199$에 샀다. 맥북의 화면을 4K 모니터로 옮겨 마치 아이맥을 쓰는 듯한 경험을 느낄 수 있다.
  • WH-100XM3

    • 통학할때 주로 사용할려고 구입한 소니의 노이즈 켄슬링 헤드폰이다. 요즘 같이 추운 날씨에는 귀마개 대용으로 애용하고 있는 중이다.
  • orenz nero 샤프

    • 샤프의 심지를 신경 쓸 필요가 없어 너무 편하다.

못한 점

웹 프런트 엔드 연습

VueJS를 익히는 목적으로 타자 연습기의 뼈대를 만들어 봤다. 자소구분 기능, UI 개선 작업으로 살을 붙이려고 했으나 올해 내로 시작하지 못했다.

알고리즘 & 문제해결

꾸준히 풀자고 다짐했지만 백준에서 스무문제 정도 풀고 끝내버렸다. 꽤 틀려보면서 숨겨진 테스트 케이스까지 통과해봤는데, 의외로 단위 테스트와 타입 체크를 같이 신경쓰게 되는 값진 경험을 얻을 수 있었다.

다음 목표

한 해동안 생각했지만 이룰 여유가 없어 2019년의 큐로 미뤄둔 것들이다.

개발자 취업 준비하기

프런트 엔드 개발자로 취업해서 지루한 이 제주도를 벗어나고 싶다. 그러기 위해선 프로젝트로 자신의 실력을 키워야 될 것이다. canvas 기반으로 알고리즘 시각화나 웹 기반 인터렉티브 게임을 구현해볼까 생각이 들지만 날씨가 너무 추워 내 머리가 코딩하는 걸 거부하고 있다. 기대했던 겨울방학을 어떻게 활용할지 고민이다.

일단 관련된 Udemy 강좌로 정보를 얻을려고 한다.

한 학기당 한 언어에 숙달하기

Screen Shot 2018-12-31 at 18.06.02

약 일주일 전에 개인적인 용도로 MacOS 앱을 만들었다. 사실 Swift의 타입 시스템에 익숙하지 않아 삽을 뜨고 내리는데 오래 걸렸다. 여유가 된다면 C++ 같이 접해보지 못한 도구로 프로젝트를 새로 진행하고 싶다.

매크로 / 메타 프로그래밍

혀엉 언어 급의 난해한 언어에 대한 명세가 머릿속에 맴돌고 있는 중이다. 아직은 이쪽 배경 지식이 전무해서 일단 큐에 넣어두었다.

학문적 컴퓨터 연구

분산적인 인증 체계에 대한 연구를 하고 싶다. 우선 블럭체인 기반으로 구현체를 하나 만드는 것을 목표로 잡았다.

마무리

타인과 남을 비교하며 자책하는 것은 가장 잔혹한 생각이지만 덕분에 1년 경험을 N년 이상 되풀이 하는 것에서 벗어날 수 있었던 것 같다. 이제라도 대략적으로 해야 할 일을 찾았으니 더 많은 걸 이루었으면 좋겠다.