코딩 공부 빠르고 정확하게 공부하는 방법

img
코딩 공부 빠르고 정확하게 공부하는 방법

코딩 공부를 빠르고 정확하게 하는 방법은 무엇일까요?

이 질문은 개발자가 되기 위해 코딩 공부를 시작하면 가장 많이 고민하는 내용 중 하나는 이것입니다.

어떻게 해야 내 실력이 빠르고 확실히 늘어 날까? 코딩 공부 이렇게 하는 게 맞나?

다양한 개발 커뮤니티에서도 많이 나오는 질문입니다.

어떻게 해야 실력을 늘릴 수 있을까요?

저는 지금까지 다양한 공부를 진행해 봤습니다.

무료 강의, 유료 강의, 책방 가서 다양한 책 구매 및 독서, 클론 코딩 등등 다양한 방법을 해봤습니다.

그리고 다른 분들의 경험을 접하고, 찾아보면서 종합해서 적어보고자 합니다.

이번 글은 사람마다 다를 수 있습니다.

SKY 대학에 가능 방법도 천차만별인 만큼 자신에게 맞는 방식을 찾는 것이 가장 중요합니다.

참고하시고, 공부 방법을 채택해 진행해보시면 좋겠습니다.

그 후 자신에게 맞는 공부 방법을 가져가셨으면 합니다.

더 이상 코딩 공부에 방황이 없길 바라며 시작하겠습니다.

0. 공부는 습관, 그냥 하는 것이다. – 기본 베이스

이 이야기 많이 들어보지 않았나요?

예전 김연아 짤로 나왔던 이야기입니다.

하지만 어릴 때 공부를 잘하셨던 분들은 알 것입니다.

공부는 그냥 습관입니다.

앉아 있으면 그냥 책 보고, 코딩하고, 움직입니다.

TV 볼 시간에 공부하는 것과 같습니다.

앉아서 공부하면서 내가 무엇이 부족한지 생각해봅니다.

코딩 테스트 문제 풀이 요즘 너무 안 했었나?

내가 이번에 진행한 프로젝트에서 막혔던 부분이 없나?

요즘 새로 나온 기술을 배우기 위해서는 무엇을 알아야 할까?

이런 질문과 되돌아보는 시간이 있어야 공부를 습관적으로 할 수 있습니다.

노는 것보다 이런 거 생각하면서 부족한 걸 채워나가는 게 더 재밌습니다.

이런 방향성은 사업이랑 비슷합니다.

어떻게 해야 매출 올리지?

왜 매출이 떨어졌지?

어디서 비용이 많이 나왔지?

이렇게 하면 더 사업을 키울 수 있지 않을까?

일맥상통하네요.

공부 이야기하다가 주제가 넘어갔는데, 공부는 이렇게 습관적으로 하는 거라고 말씀드릴 수 있습니다.

단.. 공부가 죽어도 싫은 분들이 있어요. 

당연합니다. 저도 그렇거든요.

게임하고, 유튜브 보는 게 훨씬 재밌습니다.

그래도 일하려면 공부해야겠죠? 허허

1. 공부를 하기 위한 기술을 알아보자.

이건 무슨 말일 까요?

프로그래밍 공부를 하기 전 먼저 익혀야 할 기술들이 있습니다.

가장 먼저 생각나는 건 검색 능력입니다.

맞습니다. 이런 것들이 공부를 하기 위한 기술들입니다.

수학과 영어, 기초 과학, 알고리즘, 디버깅 능력, 글을 읽는 독해 능력, 사람과 소통하는 커뮤니케이션 능력, 글쓰기 능력 등 다양한 기술이 필요합니다. 

수학은 필수인가요? 수학은 필요 없을 거 같은데.. 

전공자 입장에서는 대학 수학까지 배우기만 하면 그 이후엔 안 해도 충분히 하셨습니다.

비전공자분들은 수학적 능력에 대해 어느 정도 있어야 합니다.

이산 수학, 통계 부분은 직접적으로 많이 사용하니 깊게는 안해도 됩니다. 

서점 가면 개발자를 위한 수학 머시깽이 있어요!! 고거 집어서 쭉 보시는 걸 추천드려요!

그런 거 하나씩 교양으로 읽어주시면 됩니다. 시험 볼 것도 아니고요.

수학적 능력은 알고리즘 능력과 문제 해결과 연결되어 있습니다. 

문제를 풀면서 해결 능력을 올려야 합니다.

수학 공부를 하면 수학적 사고가 잘 돌아가면서 프로그래밍 관점 문제 풀 때 도움이 많이 됩니다.

그 외에 능력들은 전부 학교 다니면서 키울 수 있는 능력입니다.

아직 고등학교, 중학교, 대학교를 다니시는 분들은 앞서 말씀드린 능력들을 충분히 키우셔야 졸업 후 공부량이 확 줄어듭니다.

특히 커뮤니케이션 능력과 글쓰기 능력은 꼭 쌓으셔야 합니다.

그리고 영어! 영어는 여러분에게 많은 기회를 줍니다. 전 세계를 대상으로 취업 시장에 뛰어들 수 있습니다.

왜 기술적인 것이 아닌 이런 걸 먼저 해야 할까요?

말씀드린 기술들이 프로그래밍의 기본이기 때문입니다.

전부 잘할 순 없습니다. 

가능한 많은 기술을 학생 때 섭렵하면 추후 많은 것에서 이점을 얻을 수 있습니다.

제가 가장 후회하는 것이 영어를 학생 때 제대로 안 해놓은 것입니다.

언어는 어떤 분야든 중요한 부분입니다.

그중에서 프로그래머는 영어를 가장 많이 접한다는 걸 안다면 배울 의지가 생길 것입니다.

img
많은 책과 강의로 공부하기

2. 가르치기

이제 가장 중요한 부분입니다.

가르치는 것. 가장 빠르게 실력을 늘릴 수 있는 방법입니다.

내가 누굴 가르칠 실력이.. 되나??

돈 안 받고 가르치면 되죠..

우리에겐 블로그가 있습니다.

그거 누가 돈 주고 쓰라고 하나요! 하하!

그리고 요즘 세상은 진짜 좋은 세상입니다.

유튜브라는 좋은 플랫폼이 있습니다.

거기에 녹화해서 올려보시면 됩니다.

당연히 처음은 못합니다.

그렇기에 우리는 가르치는 연습을 해야 합니다.

코로나 시기에는 가르치기 위해서는 온라인 스터디를 참여해서 직접 발표하는 발표가 있었습니다.

이제 코로나 시기가 지나고 있는 지금 오프라인 스터디를 통해 사람들을 가르칠 수 있습니다.

이 과정을 통해 내가 현재 무엇을 모르고 있는지, 무엇이 부족한지 알 수 있습니다.

가장 좋은 방법은 역시 스터디를 열어서 직접 운영해보는 것입니다.

아니면 참여해서 강의를 진행한다고 해서 팀을 이끌어 보는 것입니다. 

강의를 만들다 보면 강의를 듣는 학생보다 자신의 실력이 더 오르는 것을 알 수 있게 됩니다.

그것이 부담스럽다면 기술 블로그에 다양한 지식을 적어보세요!

아카이브 형태가 아닌 기획을 통해 글을 완성시키는 것도 좋습니다.

강의하는 형식처럼 말이죠!

img
다른 사람을 가르치면서 실력 올리기

3. 1차 자료 보기

1차 자료 보기는 생각보다 단순하고 확실한 방법입니다.

하지만 안 하시는 분들이 많습니다. 

우리가 어떤 메서드나 용어, 사용하는 기술에 대해서 찾을 때 가장 먼저 봐야 할 것이 1차 자료입니다.

1차 자료란 언어 스펙과 같이 어떤 사실의 근거가 되는 첫 번째 자료를 뜻합니다. 

즉, 어떤 자료보다 정확한 자료라고 할 수 있죠.

공식적인 용어들, 정의, 스펙들은 여기서 먼저 확인이 되어야 합니다.

그런데 우리는 구글 검색을 통해서 2차 가공된 다른 자료들을 보는 경향이 있습니다.

이것의 가장 큰 문제점은 잘못된 지식을 습득할 수 있다는 게 문제점입니다.

정답이 없는 패러다임에 대한 공부는 그나마 낫습니다.

상황마다 프로젝트마다 다르게 대입되는 것들은 괜찮은데, 세계적으로 약속된 규약에 대한 것은 잘못 알게 되면 피곤합니다.

그래서 정확도가 중요한 기술 자료를 봐야 할 때는 앞서 말한 1차 자료를 꼭 보셔야 합니다.

그래서 우리가 공부할 때, 오픈 소스 코드를 까보라고 이야기를 합니다.

특히, 초보가 아닌 중수가 넘어 고수로 가기 위해서는 자신이 쓰는 오픈소스를 까보는 것만큼 좋은 게 없습니다.

그러면 깊이가 더 깊어지고, 그들이 만든 코드에 대한 이해도와 왜 이렇게 만들었는지까지 알 수 있어 좋습니다.

4. 자신만의 프로젝트 만들기

빠르게 공부하는 방법 중 하나는 실무에서 배우는 것이 있습니다.

실무를 통해 이것저것 다양한 상황을 만나고, 그걸 해결하는 과정에서 다양한 공부를 할 수 있습니다.

막혀 있을 때, 자신이 아는 커뮤니티에 물어보거나, 찾아서 문제를 해결하면 그것 만큼 기억에 남는 공부 방법이 없습니다.

실제로 그냥 이론 공부를 하는 것보다 코드를 보면서 이론을 이해하는 게 훨씬 빠릅니다.

그리고 이론에 대해서 마음에 와닿습니다. 

왜 이 이론들이 필요하고, 어떻게 동작되며, 완성되면 어떻게 시너지가 발생하는지 까지 말입니다.

이 과정은 특히나 재밌습니다.

자신이 만든 프로젝트가 돌아가고, 그 과정에서 배우는 것들이 있기 때문에 즐겁게 공부가 가능합니다.

가장 추천하는 방식은 이론 책 가볍게 한 권을 후루룩 읽어 줍니다.

그리고 프로젝트를 진행하면 좋습니다.

어떤 프로젝트든 상관없습니다.

일단 진행하면 실력은 조금씩 늘어나게 됩니다.

아니면 진짜 깨달음을 통해 급격하게 늘어나게 됩니다.

어떤 프로젝트를 해야 하는지는 나중에 따로 이야기해보겠습니다.

포트폴리오와 연결되어 이야기하기 좋겠네요.

img
프로젝트를 통한 실력 향상

마무리

도움이 되셨나요?

코딩 공부를 할 때 위와 같은 방법을 참고해서 한다면 빠르게 실력을 올릴 수 있습니다.

함께 개발을 하시는 분들이 다들 실력 있는 분들이 돼서 다양한 회사에서 다양한 방법으로 서비스를 개발하면서 

서로 지식을 공유하고 발전시키는 관계가 되었으면 좋겠습니다.

함께 보면 좋은 글

연봉 1억이 넘는 개발자의 7가지 습관

참고

https://blog.hubspot.com/website/how-to-start-coding

Leave a Comment