프로그래밍을 공부하는 방법은 크게 2개로 나뉜다고 생각한다. 첫 번째는 인터넷 자료와 책 등을 통한 독학이며, 두 번째는 진입장벽을 조금이라도 더 낮춰보고자 학원 등을 통하여 학습하는 것이다.
독학
본인에게 필요한 기술과 정보를 통해 보다 확실한 학습효과를 기대할 수 있지만 학습의 방법과 순서를 모를 경우 학습이 어려울 수 있다. 또한 학습 과정에서 발생한 고충을 털어놓을 멘토가 없다는 문제도 발생한다.
학원
취업을 위해 필요한 기술들을 정해진 커리큘럼에 따라 학습하게 된다. 단편적으로 보자면 가장 효율이 좋은 학습방법이긴 할 것이다. 하지만 프로그래머/개발자라고 불리는 직종(특히 개발 방법이 다양한 웹 개발)은 매우 짧은 텀을 두고 기존 기술보다 발전된 새로운 기술이 등장하고, 이를 학습해야만 한다. 그렇기에 정년퇴직할 때까지 처음에 배운 기술 하나만을 사용하는 경우는 매우 드물다. 즉, 개발자의 연차가 실력을 보장해주지는 않는다.
이 두 가지 방법은 각자의 장단점이 있기 때문에 무엇이 더 좋다고 단정 짓기는 어렵다. 하지만 개발을 직업적으로 한다면 시작을 어떻게 하던지 경쟁에서 살아남기 위해선 독학을 하는 것이 매우 중요하다.
독학을 하기 위한 마음가짐
앞서 독학의 단점으로 학습의 방법과 순서를 모를 경우 학습이 어렵다고 했었다. 이는 당연한 것이며 대부분의 사람들에게 큰 진입장벽으로 작용할 것이다.
이를 극복하기 위해서는 배움에 대한 동기를 갖는 것이 매우 중요하다.
나에게 이 기술이 왜 필요한가?
당신이 독학을 한다면 이 부분을 확실히 짚고 가야 한다. 아무리 찾아도 이 기술이 나에게 왜 필요한지 모르겠다면 그 이유를 만들어봐라.
만약 내가 어떤 프로그램을 만드는데, JAVA를 이용하여 만들겠다고 생각했다면 JAVA를 배울 필요가 생긴 것이다. 이러한 동기가 생기게 된다면 독학을 하는 과정에서 접하게 되는 코드들을 단순히 코드 뭉치로 인식하는 게 아닌, ‘이 코드는 내 프로그램에 이렇게 이용할 수 있겠구나.’라고 생각할 수 있게 된다.
공식문서를 읽는 방법
대부분의 기술 공식문서는 약간의 코드와 다수의 텍스트로 이루어져 있는데, 새로운 기술이 계속해서 나오는 시점에서 살아남기 위해선 공식문서가 매우 잘 구성되어 있어야만 한다. 그렇기 때문에 당신이 배우고자 하는 기술의 공식문서는 잘 작성되어있을 것이다.
그렇다고 단순히 공식문서를 읽는 것에서 그친다면 문서를 완독 했을 때 기억에 남아있는 것은 거의 없을 것이며 이는 학습을 했다고 볼 수 없다. 또한 우리가 고등학교 재학 시절 배웠던 과탐/사탐 같이 단순 암기를 한다면 기술을 학습하기 매우 힘들다.
그럼 도대체 공식문서는 어떻게 읽어야 하는가?
생각하면서 읽어라.
이는 정말 간단하다. 이 기술과 예시 코드를 내가 만드는 프로젝트에 어떻게 활용할 것인지 생각하면서 문서를 읽는 것이다. 교육학에서는 능동적으로 읽기라고 부르는 방법인데, 이렇게 읽는다면 수많은 정보를 접하는 데 있어서 몰입할 수 있으며 보다 효과적으로 기억할 수 있다.
모든 내용을 읽어라.
공식문서에서 필요한 자료만 참조하여 학습을 하는 경우도 있긴 하다. 하지만 해당 기술을 처음 배운다면 필요한 내용이 어떤 것인지 알 수 없기 때문에 모든 내용을 읽는 것을 권장한다.
보통 공식문서를 잘 읽지 않는 분들의 경우 특정 에러가 발생하여 구글에 검색을 하다가 우연히 공식문서를 접근하는 경우가 많다.
이러한 행동은 그렇게 좋은 행동은 아니다. 공식문서를 처음부터 읽었다면 아예 에러 자체를 발생시키지 않았을 텐데, 공식문서를 읽지 않고 코딩부터 하다가 에러가 발생하여 공식문서를 접한다면 주객이 전도된 것이다.
또한 최신 공식문서는 대부분의 오류를 해결하는 방법을 포함하고 있으며 해당 기술을 보다 쉽게 사용할 수 있는 팁도 중간중간 섞여있는 경우가 많다.
그렇기 때문에 공식문서는 양이 많더라도 한 번씩 능동적으로 읽어보는 것을 추천한다.