dev

어떤 기술을 어떻게 공부하면 좋은가

Wonny (워니)
Wonny (워니)·2022년 08월 04일 11:42

며칠 전에 한 동료랑 어떤 기술을 어떻게 공부하면 좋은지에 대해 이야기 나눴다. 이야기를 하다 보니 1) 특정 상황에 발생하는 고통(문제)을 겪어보고, 2) 그 고통을 해결해주는 기술을 공부하여 3) 도입해보는 경험을 하는 것이 효과적인 것 같았다. TL;DR: [고통 -> 공부 -> 도입]

뻔한 말 같지만 현실에서는 고통을 느낀 적 없이 [공부 -> 도입] 혹은 [도입 -> 공부] 싸이클을 경험하는 경우가 많다. 가령 이제는 당연하게 쓰는 spring, react 같은 기술들이 그렇다. 이런 경우 머리로는 이 기술이 가진 장점을 알지만, 실제로 1) 어떤 문제를 2) 얼마나 잘 해결해주는지를 깊이 공감하기 어렵다.

바닐라 자바스크립트나 제이쿼리로 직접 DOM 조작을 해봤던 사람과 처음부터 react를 사용했던 사람이 react에서 느끼는 효용의 정도가 다를 것이다. 고통을 겪어본 사람들은 react가 어떤 문제를 해결해서 어떤 편리함을 가져다주는지 더 잘 알기에 react를 언제 사용하면 좋을지, 어떻게 사용하면 좋을지를 판단하기 수월해진다.

그렇기 때문에 다양한 문제 상황에 놓이면서 문제를 해결하기 위한 기술들을 공부하고 도입해보며 해결하는 경험을 많이 해볼 수 있는 환경이 학습에 유리한 것 같다. 이러한 환경은 대체로 성장하는 회사에 있다. 회사가 성장할수록 풀어야 하는 문제가 점점 더 어려워지고 다양해지기 때문이다.

그런데 이런 환경이 아닐 때는 어떻게 하면 좋을까? 나의 경우에는 본격적인 프론트엔드 개발을 시작했을 때 react를 먼저 사용했다. 그러고 한참 뒤에 한 스터디에서 react를 쓰지 않고 웹페이지를 구현하며 발생하는 문제를 react스럽게 해결해보는 과정을 거쳤다. 아주아주 간단한 react 구조를 구현해보는 경험이었다.

그 과정을 통해 react가 어떤 문제를 해결해주고, 왜 지금과 같은 구조로 구현되어 있었는지를 더 잘 이해했었다. 이처럼 새로운 문제를 겪지 못하는 상황이 되면 이미 도입된 기술이 해결해주는 문제를 작게라도 경험해보고 해결하는 과정을 거치며 학습해보는 것도 방법의 하나일 것 같다.


dev
learning
© 2020 Wonny.