DEV/🔩 RETROSPECT

[2021.09 회고] 성장할 수 있는 나만의 공부법찾기

개발을 하게 되. 2021. 9. 5. 23:08

위코드에서의 한달 

 

개발자로서 새로운 커리어를 시작한다는 마음으로 8월 2일에 개강하고 나서부터 한달이란 시간이 지났다.

하루하루 정말 배울 것이 많았고, 네트워크 관련 지식이 없다보니 그만큼 처음에 개념확립방법과 공부방향에 대해 해맨 시간들었다. 

하루는 정말 그 개념이 익숙하지 않아 하루종일 잡았던 날도 있어서, 조금씩 진도가 느리게 되는 경우도 허다했다. 

특히, 나는 이런 걸 zone에 빠진다고 하는데, 정말 이해할 때까지 그 개념에 대해서 완벽히 안다는 생각이 들때까지 다음단계로 넘아가진 않았다. 큰 흐름을 따라가고 작은 흐름들은 나중에 봐도 될 것이라는 걸 그땐 인지하지 못하고 있었다.

 이러한 날들이 반복되고, 3주차되는 날에는 웹프레임워크 실습을 했는데 개념적으로는 이해는 하고 있어도 이를 코딩으로 접목시키는 능력은 현저히 떨어지는 것을 발견했다. 아무래도 개념에 대해서만 깊게 생각하다보니 정작 코딩구현에 있어서는 힘을 쓰지 않고 있었던 것이다. 그때부터 현재 공부방법에 대해서 다시 생각하게 되었다. 개념숙지하고 개념을 적용하고 개념을 반복하는 이런 정석적인 공부법보단 코딩에서는 숙지보단 실습이 우선되어야한다고 생각이 들었다. 지금 배우고 있는 Django 역시 결국엔 웹서비스를 만드는 프레임워크 즉, 도구역할이라는 것. 도구에 익숙해지려면 어떻게 사용하는지보다는 일단 한번 구현하면서 도구에 익숙해지는 것이라는 것을 말이다. 

 

우선 실습👉배운개념적용👉코딩문맥이해👉다시 실습(내가 익숙해질때까지)

 

이렇게 공부하는 것이 나에게 맞는 공부법인 것같다.  

 

 

TIL필요성 

그리고 개발자 문화에 있어 TIL(Today I learn)의 필요성에 대해 그렇게까지 중요한지 모르고 있었다. 마냥 귀찮은 작업이라고 생각만 했다. 인터넷이 개념이 잘 정리된 기술블로그를 쓰라고 하는지 왜 배울 것도 산더미처럼 많은데 시간을 쪼개서 TIL을 써야하는지라는 질문이 머릿속에서 계속 이어졌다. 사실 이런 고민들은 TIL를 쓰기 싫어서 이런 고민들이 했던 것이었다.

 막상 TIL을 쓰고 나니 코딩구현에 있어서 개념적용이 잘 되지 않은 부분이 선명하게 나타났고, 이어서 왜라는 질문과 함께 효율적인 코드는 어떤 것이 있을까 라는 질문까지 이어지게 되는 경험을 하고나서부터 TIL의 필요성을 알게되었다. 예를 들어 효율적인 코드를 위해 어떤 개념들이 코드 안에 숨어져있는지, 코드구조상 어떤 코드가 들어가는 것이 순서에 맞는지 등등 막상 실습하거나 개념을 적용시켜 이해할때는 궁금하지 않았던 핵심질문들이 TIL을 작성하게 되면서 선명하게 그려졌다.

결국 TIL이란 쉽게 지나쳤던 코드들에 대한 이해이며 나의 문제해결 저장소라고 생각한다.  

TIL의 필요성을 느낀만큼 이제는 어떻게 하면 TIL을 쓸 것인가에 대한 질문으로 이어졌다. 이런 고민들이 이어가던 중 마침 상담일정이 있서서 이러한 고민들을 털어놓았고, 심리적으로 압박을 받지 않고 TIL를 쓸 수 있는 방법에 대한 힌트를 얻게 되었다. 

 

 

👨‍✈️ 100% 완료할 수 있는 하루계획을 짤 것
🚀 계획 → 고민 → TIL 로 이어질 수 있도록 효율적인 시간관리를 생각하자

 

하루 계획을 무리하게 짜는 것도 어느정도 성장에 도움이 되지만, 너무 느슨하게만 짜는 것도 성장에 문제가 되기때문에 앞으로 하루계획을 짤때는 정말 내가 필수적으로 잡고 가야할 일과 추가적으로 할일 1개만 추가하기로 했다. 이때 중요한 것은 하루계획에 있어서 명확히 자기가 할 것을 적는 것이다.  'mission:7 복습' 이런 계획보단 mission7 - 로그인 post 구현 개념 파악 처럼 구체적으로 쓰는 것이다.

 

 

내 뜻대로 안된다?👉공식문서 👉기술블로그, 영어로 검색 👉문제해결 👉안되면? 질문을 하자

 

 또한 누구나 코드를 치다보면 문제상황이 발생하게 되는데, 이때 나혼자 너무 고민하지 말고 우선 안된다면, 구글에 영어로, 아니면 기본적인 개념에서의 문제라면 한글로도 기본적인 기술블로그를 참고해서 해결하려고 하고, 만약 문제상황이 안풀린다면 그때서야 질문을 하도록 하는 습관을 가져야겠다. 너무 혼자만 문제해결하려고만 하지말자 아직은 주니어 개발자도 못하는 배우는 입장이다 보니, 모른게 당연하다는 생각을 하자. 익숙하지 않는 개념이 있다면 멘토들과 동기들에게 쉬는 시간에 잠깐 말해보는 습관을 가져야겠다.

동기들이나 멘토에게 질문에 앞서서 무조건 해봐야할일은 당연히 공식문서 서치이다. 기술블로그나 위키피디아 등등 공식문서가 가지는 정보의 질 자체가 다르다. 비록 영어로 되어 있기는 하지만 공식문서를 읽는 것에 익숙해져야한다. 곧 힌트와 문제해결을 줄 수 있기때문이다. 

 

 

미래의 나에게 

 

위코드를 다니고 나서 정말 다양한 분야의 사람들과 만났다. 그럴 수록 정말 다양한 관점을 가진 사람들과 소통할 수 있던 시간들였다. 코드한줄에 대한 접근방식도 너무나 다르게 접근하고 생각도 달라서 그만큼 공부할게 많았던 한달이었다.
 무엇보다 내가 많이 부족하다는 생각이 들었다. 사실 파이썬이란 언어에 대해선 어느정도 알고 있다고 생각했지만 장고프레임워크에 들어서자마자 언어에 대한 학습도 생각했던 것보단 부족했고, 특히나 생각했던 것보다 웹에 대한 전반적인 지식이 없다는 것을 많이 느꼈던 한달이였다. 부족하다보니 인사이트를 얻기 위해서 관련 서책들을 읽기도 했지만, 한참 나의 부족함이 느껴졌다. 

 하지만 그럴수록 불안해하지않고 마음속으로 출발을 위한 디딤이라고 생각하면서 꾸준히 부족한 부분을 채워나가야 겠다. 부족함이 모아 하나의 성장이 되기까지 꾸준히 부족함을 모아보자.

 이러한 부족함은 알고리즘의 공부로 해결할 수 있을것같다. 알고리즘이란 결국엔 코드의 흐름을  결정하는 것이라고 한다. 알고리즘도 꾸준히 병행하면서 코드의 구조와 코드한줄의 의미를 파악하고 적용하는 연습도 필요해보인다. 시간을 만들면서 공부를 하자.