- Thoughts
기술이 빠르게 변할수록, 변하지 않는 것을 공부해야 합니다
도구와 문법이 바뀌어도 문제의 원리는 오래 남는다. 새로운 기술을 더 잘 배우고 판단하기 위해 기본을 공부하는 이유.

DEEP WITHIN.SOFTWARE
PEOPLE
A BRIGHTER TOMORROW.
저는 구글 머신러닝 부트캠프에 참가했었습니다. 지금처럼 AI가 붐이 일어나기 전이었습니다. 당시에는 머신러닝을 공부하려면 선형대수와 확률, 미분부터 시작해서 머신러닝과 딥러닝의 원리를 배우고, 직접 모델을 학습시키는 과정을 거쳤습니다. 저도 그렇게 AI를 공부했습니다. 그런데 불과 몇 년이 지난 지금, 당시 중요하게 배웠던 기술 중 일부는 현업에서 잘 사용하지 않습니다. AI가 사라져서가 아닙니다. 오히려 너무 빠르게 발전했기 때문입니다.
최근 몇 년 사이 새로운 모델과 프레임워크, 방법론이 끊임없이 등장했습니다. 얼마 전까지 중요하게 다뤄지던 기술이 어느 순간 다른 기술로 대체되고, 직접 구현해야 했던 기능이 이제는 모델이나 API 하나로 해결되기도 합니다. 아마 최근 AI를 공부해서 입사한 사람들도 크게 다르지 않을 겁니다. 몇 년 전에 배운 사람과 최근에 배운 사람 모두 자신이 배운 기술이 빠르게 바뀐다는 것을 느끼고 있을 것입니다. 그만큼 하루 자고 나면 새로운 기술이 나오는 시기입니다.
기술이 빠르게 변할수록 오래 살아남은 것을 봅니다
그래서 저는 오히려 새로운 기술을 공부할수록 오래된 것을 배워야 한다고 생각합니다. 정확히 말하면 오래 살아남은 것을 배워야 합니다.
웹 개발을 생각해보면 이해하기 쉽습니다. 웹 개발에서는 Angular, Vue, React를 비롯해 수많은 프레임워크와 라이브러리가 등장했고, 그때마다 개발하는 방식도 계속 변해왔습니다. 특정 프레임워크의 문법과 사용법만 알고 있다면 새로운 기술이 등장할 때마다 많은 것을 다시 공부해야 합니다. 하지만 HTTP가 무엇인지, 브라우저와 서버가 어떻게 통신하는지, 상태를 왜 관리해야 하는지, 비동기 처리가 왜 필요한지를 이해하고 있다면 이야기가 조금 달라집니다.
새로운 프레임워크가 등장해도 완전히 새로운 세상을 배우는 것은 아닙니다. 도구와 문법은 달라져도 우리가 해결하려는 문제는 생각보다 오래 남아 있기 때문입니다. AI도 비슷하다고 생각합니다. 지금 유행하는 모델의 사용법이나 프레임워크를 배우는 것은 분명 필요합니다. 새로운 기술을 사용하지 않고 본질만 공부하자는 이야기는 아닙니다. 하지만 그것만 공부하면 기술이 바뀔 때마다 지식의 가치가 크게 흔들립니다.
반대로 데이터를 어떻게 바라봐야 하는지, 모델은 왜 학습 데이터에서는 잘 작동하면서 새로운 데이터에서는 실패하는지, 성능을 어떻게 측정하고 그 숫자를 어디까지 믿어야 하는지, 확률과 최적화는 모델 안에서 어떤 역할을 하는지를 이해하는 것은 쉽게 사라지지 않습니다. 새로운 기술은 아무것도 없는 곳에서 갑자기 등장하지 않습니다.
대부분 이전 기술이 가진 한계를 해결하기 위해 등장합니다. 그래서 이전 기술의 원리와 문제를 알고 있으면 새로운 기술을 접했을 때 단순히 “이게 요즘 좋다더라.” 에서 끝나지 않습니다. 왜 이것이 등장했는지, 무엇을 해결했고, 그 대신 무엇을 포기했는지를 볼 수 있습니다. 저는 이것이 본질을 공부하는 가장 큰 이유라고 생각합니다.
본질을 공부한다고 모두가 모델을 만들어야 하는 것은 아닙니다
특히 지금은 이 구분이 더 중요하다고 생각합니다. AI를 공부한다고 해서 모두가 거대한 모델을 직접 만들어야 하는 것은 아닙니다. 경쟁력 있는 거대 모델을 처음부터 만들고 학습시키는 일에는 막대한 데이터와 컴퓨팅 자원, 자본과 인력이 필요합니다. 실제로 대부분의 개발자가 맡게 될 일은 모델 자체를 처음부터 만드는 것보다 이미 존재하는 모델을 이해하고 현실의 문제에 적용하는 일에 더 가까울 수 있습니다.
그렇다면 오히려 본질을 몰라도 되는 것처럼 보입니다. 좋은 모델과 API가 이미 있는데 굳이 그 안의 원리까지 알아야 할까요?
저는 반대라고 생각합니다. 도구가 강력해질수록 우리는 직접 구현해야 하는 것은 줄어들지만, 어떤 도구를 선택해야 하는지, 결과를 어디까지 믿어야 하는지, 왜 실패했는지를 판단해야 하는 일은 남습니다. 모델을 직접 만드는 능력과 좋은 모델을 현실의 문제에 제대로 적용하는 능력은 다릅니다. 그리고 후자에서도 결국 필요한 것은 단순히 최신 도구를 많이 아는 것이 아니라, 그 도구가 어떤 원리 위에서 작동하고 어디에서 실패하는지를 이해하는 것입니다.
새로운 기술을 배우지 말자는 이야기가 아닙니다. 오히려 새로운 기술을 더 잘 배우기 위해 오래된 것을 공부해야 한다는 이야기입니다. 유행하는 기술은 우리가 무엇을 사용할지를 알려주지만, 오래 살아남은 원리는 그것을 왜 사용해야 하는지를 알려줍니다.
책을 읽는 이유는 답이 아니라, 내 생각을 잃지 않기 위해서입니다
책과 기록은 이미 안다고 생각했던 것을 다시 묻게 한다. 수많은 목소리 속에서 내 생각을 잃지 않기 위해 읽는다는 것.

안다고 생각하는 순간, 질문은 멈춥니다
같은 질문에도 경험과 관점에 따라 다른 답이 나온다. 이미 안다고 생각하는 것에도 질문을 멈추지 않으려는 이유.

직관은 경험이 압축된 결과입니다
빠른 판단 뒤에는 경험과 학습이 쌓여 있다. 직관을 결론이 아닌 확인할 신호로 받아들이고, 근거로 교정하는 태도.
