컴공 학부생이 군대에서 공부하는 법
개요
저는 현재 전역전 휴가를 한달 앞두고 있는 현역 육군 병장입니다. 지금부터 하는 이야기는 제가 약 1.5년 동안 군대에서 어떻게 공부를 했는지에 관한 것입니다. 저처럼 군생활 중에 공부를 해보려는 사람들에게 유용한 참고자료가 되었으면 좋겠습니다.
군대의 환경변수
당연하게도 군대는 공부를 하기에 적합한 환경은 아닙니다. 매일같이 근무와 일과에 시달리다가 훈련이라도 하는 날에는 몇일동안 사지방에 출입하지도 못합니다. 이런 외적인 요인을 제외하고도 사지방에는 자체적으로 많은 제약이 걸려 있습니다.
-
작업한 파일을 로컬 저장소에 저장할 수 없습니다. (재부팅하면 초기화되기 때문에)
-
HamoniKR OS를 사용하기 때문에 윈도우용 응용프로그램들을 사용할 수 없습니다.
-
그렇다고 리눅스 응용프로그램이 설치가 되는 것도 아닙니다.
-
리눅스기반 OS이면서도 apt-get을 막아놔서 Node.js 조차 설치할 수 없습니다.
하지만 그럼에도 불구하고 아무것도 할 수 없는 것은 아닙니다. 환경변수가 좋지 않다고 해서 공부를 멈출 수는 없습니다. 악조건 속에서도 우리는 할 수 있는 것을 해야만 합니다.
1. 자기개발 지원금
현재 국방부에서는 매년마다 12만원의 자기개발 지원금을 지원해주고 있습니다. 다양한 활용 방법이 있겠지만, 저는 이 지원금으로 도서를 구입하는 것을 추천합니다. 복학후 수강하게될 강의의 강의계획서를 보면 어떤 책을 사용하는지 알 수 있습니다. 어차피 사야 할 전공책이라면 나라의 지원을 받아서 사는 것이 좋습니다. 또, 전공책이 아니더라도 좋은 책들은 많습니다. 아래는 제가 군대에서 구입한 도서의 목록입니다.
- 컴퓨터 프로그램의 구조와 해석 (마법사책)
- 운영체제 (공룡책)
- 클린 코드
- 파이썬 머신러닝
- 윤성우의 열혈 C++
위의 책들은 제 군생활 공부에 큰 영향을 주었습니다. 개인 정비 시간이 아니더라도 일과중에 시간이 생기면 틈틈히 읽을 수 있는 것도 책의 장점 중 하나입니다.
2. 구름IDE를 이용한 깃허브 블로그 만들기
저는 아직 학부생인데다가 그렇게 많은 지식을 가지고 있지도 않습니다. 그런 저에게 있어서 깃허브 블로그를 만드는 것은 그 자체로 좋은 프로젝트였습니다. 구름IDE를 이용하면 로컬 저장소를 사용하지 않고도 블로그를 만들 수 있습니다. 지금 쓰고 있는 이 글도 구름IDE를 이용해서 작성하고 있습니다.
이 블로그는 Node.js를 기반으로 한 Hexo로 만들어 졌습니다. 익숙하지 않은 환경에서 필요한 기술 스택들을 설치하고, 블로그를 만들기 위해서 공식 문서들을 읽는 것 그 자체로 저에게는 많은 도움이 되었습니다.
3. SICP
흔히들 마법사책이라고 불리는 SICP는 컴퓨터과학계의 고전 중 하나입니다. 책의 난이도가 쉽지는 않았습니다. 익숙하지 않은 언어인 Scheme을 사용하는데다, 책에는 자세히 설명되어 있지 않은 수학적 지식을 요구하기도 합니다. 국내 커뮤니티에서 잘 다뤄지지 않기 때문에 질 좋은 해설을 찾고 싶으면 영어 커뮤니티를 가야 하기도 합니다. 하지만 이 모든 역경을 딛고 모든 연습문제를 곱씹어 풀다 보면, 컴퓨터 과학의 전반에 걸쳐서 넓은 지식을 얻을 수 있는 책입니다. 복학 후의 학교 수업을 이해하는 데에 많은 도움을 줄 것 같습니다.
4. 코딩테스트
인터넷 브라우저만 있다면 할 수 있는 공부가 있습니다. 아마도 잘 알고계시는 코딩 테스트입니다. 잘 알려진 사이트로는 백준이 있습니다. 사실 저는 군대에서 코딩테스트를 따로 공부하지는 않았습니다. 아직 코딩테스트를 공부할만할 단계가 아니라고 생각했기 때문입니다. 하지만 코딩테스트를 연습할만한 단계에 오르신 분이라면 좋은 공부법이 될 것 같습니다.