190529~190625 월간회고

해커톤 이후 바쁘기도 하고 블로그도 리뉴얼 하느라 한달만에 주간회고 월간회고를 작성하게 되었다. 주간회고를 적는 이유는 그 주에 어떤걸 배웠고 어떤걸 배울건지 계획을 세우는, 한주를 마무리짓는 중요한 작업 중 하나였는데 바뻣다는 핑계로 미루게되어 부끄럽다.

한달동안 한 학습 및 개발한 것

  • Hexo + next theme (블로그 리뉴얼)
  • 알고리즘 문제 풀이
  • Kafka
  • Call for code 버츄얼 해커톤

Hexo + next theme

블로그 프레임워크를 Jekyll에서 Hexo로 바꿨다!
처음엔 오른쪽 사이드바에 카테고리가 없는게 불만이라 수정을 시도해 봤지만 이미 만들어져 있는 테마를 갈아엎기엔 시간이 많이 들어갈 것 같아 몇번 시도하다 다른 테마로 바꾸려는데 엔진을 바꿔야 했다.
루비 문법을 몰랐기 때문에 Jekyll을 사용하기가 부담스러웠고, 속도부분에서도 별로라고 생각했기 때문에 Hexo로 바꿨다.
물론 Hexo 는 Github로 버전관리가 되지 않는다는 단점이 있지만 나는 그간 yml파일이 올라가는것에 대한 불만(secret key 노출 등)이 있었기 때문에 Hexo로 바꾼 후 매우 만족중이다!
버전관리에 대한 이슈는 따로 레포를 파서 관리 중이다. 몇번의 삽질 끝에 [이 포스팅]을 보게되어 참고했는데 굉장히 설명이 잘 되어있어서 삽질을 끝내고 비로소 서브모듈을 잘 달아 배포할 수 있었다😄
그 밖에 카테고리, 태그등을 달았는데 생각보다 Hexo에 뉴비를 위한 카테고리, 태그등을 추가하는 방법에 대한 한글 포스팅이 적고 불충분했다.. 그래서 시간이 되면 해당 내용에 대해 포스팅 할 계획이다.

댓글은 gittalk를 사용했다. 거의 중국어로 된 포스팅이 많으며 한글로 된 포스팅이 거의 없기 때문에 문제가 생기면 해결하기가 쉽진 않았다.
그 후 블로그 내의 포스팅 검색을 위한 algolia 와 구글 서치를 위한 sitemap 생성등을 마치고 기존 포스팅 규격을 새로운 블로그 규격에 맞추는 등의 작업을 했다.
날 잡고 했으면 하루 이틀이면 끝냈을텐데 차일피일 미루다 보니 1~2주가 걸렸다. 하지만 처음 지킬 블로그 썼을땐 설정잡고 하는데에 몇달간 질질 끄는 등 굉장히 오래걸렸었는데, 이젠 금방 설정을 잡게되어 감게무량했다.
(심지어 지인의 지킬블로그에서 카테고리가 동작하지 않는 이슈도 해결하고 풀리퀘를 날렸다😮)
깃허브 블로그는 한번 설정 잘하고 잘 만들어두면 후에 포스팅만 작성하면 되기 때문에 애용하고 있다.

알고리즘 문제 풀이

최근 지인들과 알고리즘 문제풀이를 시작했는데, 몇가지 문제 중 Farm 문제가 기억에남는다.

이 문제는 연립방정식을 세워서 해를 구하면 되는 문제였는데, 이 문제는 식을 세우거나 브루트포스(for문 돌리기)로 해결할 수 있다.
후자의 경우 범위가 크게 늘어나면 시간이 오래걸린다는 단점이 있으므로 나는 식을 세우는 방향을 택했다.
식을 세우는 작업은 예외도 같이 생각해야 하기 때문에 예외를 생각해서 처리하지 않으면 십중팔구 틀린다!
나는 식 및 예외는 잘 처리한 것 같은데 자꾸 틀려서 헤메다 자꾸 틀리는 원인이 부동소수점 때문이라는 걸 알게되었다.
부동소수점에 대한 설명은 이 포스팅에 잘 나와있다.
부동소수점이 일어나는 원인은 컴퓨터의 숫자는 2진수이기 때문에 특정값을 정확히 표현할 수 없으며 근사값을 얻어 계산하기 때문이다.
이것을 해결하기 위해선 div_mod등을 사용하는 방법등이 있다.
이 문제는 부동소수점의 중요성을 깨닫기에 좋은 문제인 것 같다! 항상 나누기를 할 땐 조심해야된다.

Kafka

최근 프로젝트에 Kafka를 도입할 각을 보고 있었다. 도입 이유로는

1
2
3
4
5
유연한 스케일링
스케줄링 용이
실시간성
데이터의 무결성
고가용성

등이 있었지만 초보인 내가 프로덕션에 도입하기엔 너무 위험한 것 같아 포기했다.

Call for Code

Call for Code가 이제 제출까지 약 한달이 남았다!
최근엔 6/20일에 팀원이 모여서 24시간동안 버츄얼 해커톤을 진행했다.
그러나 재난시엔 네트워크가 파괴되어 통신이 안되거나, 디바이스가 파손/분실되기도 하며
배터리 이슈도 있기 때문에 한계가 많아서 아직 뚜렷한 아이디어는 내지 못했다. 좀 더 고민해봐야될 것 같다..

2주간 목표

총평

이번달은 작년 슬럼프 이후로 가장 학습을 게을리 한 달 이었다..
학습을 하기보단 과거에 한 학습을 써먹은 달이 되었는데, 나는 아직 배워야 할 것이 많기 때문에 아쉬운 달이 되어버렸다.
다음 회고는 좀 더 알차고 게으르지 않은 회고가 되길..!

다음 회고까지 2주간 자료구조와 알고리즘에 전념할 예정이며 저번에 살짝 알아보기만 했던 Scala 공부를 천천히 시작할 것 이다 😄