작년에 한 것들

  • 알고리즘(쉽배알, mit 6.006) 노트 정리(20.04 ~ 20.06)
  • 기초 알고리즘 문제들(plzrun문제집)(20.08.16~21.01.12)
  • 블로그 만들기

 뚜렷하게 목표를 설정하고 끝낸건 이 정도이다. plzrun문제집을 끝내는데 시간이 좀 오래 걸렸다. 휴가격리/막사공사 등으로 날린 3달을 제외하더라도 저기서 권장하는 시간인 4주를 훨씬 넘겼다. 저 포스팅 안에서 말하는 것처럼 처음 배우는 것은 한 번에 왕창 하는게 낫다고 생각한다. 1일, 3일, 일주일 등 간격을 늘려가며 하는 꾸준한 복습이 기억에 도움된다는 말은 맞지만, 그건 기억하는 내용이 이미 익숙해졌을 때인 것같다. 알고리즘 하나를 공부하고 문제가 풀려서 끝냈다가 며칠 뒤 비슷한 문제를 풀 때 익숙하지가 않아 처음 구현하는 것과 같은 상황이 된다.

 다행히 저기 있는 문제들의 경우 방법론 자체는 단순한 편이라 알고리즘 자체에 익숙해지지 않는 그런 상황은 없었다.(재귀함수같은 경우 아직도 익숙하지 않긴 하다) 애초에 저 문제집을 풀어야겠다고 다짐한 이유가 문법이나 스트링같은 자주 헷갈리는 내용을 정리하고 고수님들의 코드를 보기 위함이었다. 이 목적은 어느 정도 달성했다고 생각한다. 스트링이나 직사각형 교차 판별과 같이 매번 헷갈리는 내용은 1인 팀노트 느낌으로 정리를 해놓았고, 고수들의 코드를 보면서 빠른 입출력, 유용한 STL들을 알게 되었다.

 이때 쓸만한 내용이 있는 문제들을 포스팅하는 것과 내 코드의 실행시간을 줄인다는 목적이 많은 도움이 되었다. 실행시간을 줄이기 위해 더 적극적으로 찾아보고 질문한 것 같다. 그리고 포스팅을 위해서 풀이방법을 정리하는데, 이 과정에서 증명, 응용과 같은 내용을 한번 더 생각해봤던 것 같다.

 시간순으로는 6월에 노트 정리를 끝내고 두어 달 정도 UCPC 문제, segment tree문제를 풀었다.(segment tree문제가 모두 플래티넘 문제였고 백준블로그에서 읽기 쉽게 정리해놓아 솔브드 티어 올릴 겸 풀게 되었다.) 이때 ps 알고리즘을 더 들어갈지 다른 공부를 할지 고민을 했었는데 시기상 취준이 급한것 같아 다른 공부를 하기로 결정했고 코테 준비를 목적으로 plzrun 문제집을 풀기 시작했다. 도중에 2020군장병 온라인 해커톤에 참여했는데 저번 포스팅에 적었듯이 결과물을 만들어내진 못했다.

여기부터 2021

 소초에서 한창 추울 때 문제집을 다 풀었다. 사지방이 컨테이너로 되어있어 연등시간에 위아래 평균 3.5겹, 털장갑, 핫팩 2개를 들고 들어갔다. 발이 가장 시려웠는데 철수 1주일 전쯤해서 우연히 양말-방한양말-생활화보다 양말-전투화가 더 보온이 잘된다는 것을 알게되었다. 1월 초가 제일 추웠는데 그때가 지나고 알게된 것이 아쉬웠다. 이제 개발할 때 환경 탓하지 않기로는 어느 누구에게도 질 자신이 없다. 어쨌든 12일에 끝냈는데 저때 병 자기계발비용을 사용할 수 있어서 쓸 곳을 찾으면서 미뤄뒀던 문제 풀이와 포스팅을 했다. 해커톤을 하면서 프레임워크에 대한 공부도 필요하다는걸 느껴 때문에 강의들을 찾아보다가, 백엔드 로드맵을 찾았다.

 springboot같은건 나와있지도 않은 이 로드맵을 보면서 일단 기본적인 것부터 해야겠다는 생각이 들었다. HTML, CSS, Javascript, SQL을 공부하기로 결정하고 관련 책들을 찾아보던 와중에 tcpschool과 MDN(Mozilla Developer Network)를 발견했다. 둘 다 블로그 강의처럼 끊겨있지 않고 잘 설명되어있어 얘네를 교재로 정했다. tcpschool은 element별로 상세히 나와있고 MDN은 전체적인 흐름을 설명해줘서 MDN부터 다 보고 tcpschool을 보면서 보충할 예정이다. 지금은 MDN의 http module을 다 봤다.(21.01.21~21.02.02) 영어로 되어있어서 읽는데 오래걸렸지만 이걸로 토익점수가 100점 떨어질거 50점 떨어진다는 생각에 답답하지는 않았다.

 자기계발 비용은 비제휴사도 지원기준에 맞는 항목일 경우 구매 후 영수증만 내면 확인 후 지원해주는 방식이었는데 귀찮아서 10만원 전부 책으로 사용했다. 제휴사의 경우 영수증을 확인하는 절차 없이 바로 80%할인된 금액으로 결제를 진행한다. 하루 3분 네트워크 교실, 아마존 웹 서비스 AWS Discovery Book, 운영체제, 스프링 부트와 AWS로 혼자 구현하는 웹 서비스, 이것이 MySQL이다, 칼퇴족 김대리는 알고 나만 모르는 SQL: 기초편 이렇게 총 6권의 책을 샀다. 운영체제는 복학하고 들을거라 미리 교재을 샀고, 하루3분 네트워크 교실, 칼퇴족 김대리~는 일과시간에 읽으면서 네트워크, sql 개념을 정리할 예정이다. 아마존 웹서비스는 SQL공부까지 한 다음 할 책이고 스프링부트와 aws, 이것이 mysql이다는 전역하고 공부할 때 쓰려고 운영체제랑 같이 집으로 보내놨다.

 작년 6월에, 전역후 취준까지 계획을 짠 적이 있는데, 그때는 잘 몰라서 당장 눈에 보이는 것을 목표로 잡았다. 종만북을 정독하고 솔브드 플레를 찍은 다음에 AWS cloud practitioner를 준비할 예정이었다. 저걸 딴 다음 SQL, JSON을 공부하는게 목표였다. 하지만 종만북 정독이 너무 오래 걸릴 것같았고, 위에서 말했듯이 4시간씩 며칠로 끊어서 하면 효율이 나오지 않을 것 같았다. 웹에 대한 전반적인 이해가 되지 않은 상태에서 바로 aws를 공부하는 것도 계란찜이 맛있는 고깃집같은 느낌이라서 백엔드 로드맵을 발견한 시점에서 계획을 확 바꿨다.

 전역 전까지 목표는 아래와 같다.

  • 솔브드 플레 이상
  • 네트워크 개념
  • HTML, CSS 기본
  • JavaScript, JSON, SQL 익숙해지기
  • Springboot 공부

 솔브드는 환기시킬겸 가끔씩 풀 예정, 네트워크는 책 읽고 요약, 나머지는 적힌 순서대로 공부할 예정이다. 대충 찍어보자면, SQL 공부하다가 전역할 것 같다. 혹시 칼퇴족 김대리~가 너무 잘되어있다면 springboot까지 손댈 수 있을 것 같기도 하다.

현재까지 한 것들

  1. BOJ 문제 1-2개씩 푸는 중(20.06.28 - 20.08)
  2. KOSSA 해커톤 준비(인터넷 끊겨서 기권.)
  3. 기초 알고리즘 문제들(plzrun문제집) 다품(20.08.16 - 21.01.12)
  4. MDN HTML module(21.01.21 - 21.02.02)

Leave a comment