brunch

You can make anything
by writing

C.S.Lewis

by 여름비 Jul 05. 2020

서비스와 이론 동시에 하기

땅 다지면서 아파트 올리기

현업 백엔드 개발자에게 들은 이야기


언젠가 한번 백엔드 개발자분에게 어떻게 하면 프로그래밍을 잘 배울 수 있은지 물어보았다. 그러자 그분이 아래와 같은 이야기를 들려주었다. "내가 생각하기에는 프로그래머는 의사와 같다. 이론은 당연히 알아야 하는데, 그 이론을 가지고 실제로 수술을 집도 하면서 실행과 생각의 밸런스를 맞추어야 한다. 그렇기에 나의 학창 시절은 두 페이즈로 나뉜다. 수업에서 이론을 배우는 시간, 그리고 실제로 서비스를 만들어 보는 시간"


나는 이 말을 들으면서 어느 정도 공감이 되었다. 통계 지식만 안다고 기가 막힌 데이터 분석을 할 수 있는 것이 아니듯, 프로그래밍 또한 이론은 습득과 실행이 적절히 어울려질 때 프로그래머란 직책에 알맞은 스킬을 쌓아 갈 수 있다는 말로 이해를 하였다.


그래서 이 말을 어떻게 하면 나의 학습 계획에 적용시킬 수 있을지 생각을 해보았다. 그러다가 우연히 유튜브에서 "MIT 컴공 과정 1년 만에 끝내기"라는 Ted 동영상을 보있고, 거기서 힌트를 얻었다. 해당 동영상에서 제공하는 MIT 정규과정 수업을 들으면서 동시에 내가 평소에 만들어 보고 싶었던 서비스를 만드는 것이다!


물론 이것을 하는데 많은 의문들이 처음에 든다. 내가 원하는 서비스를 만들기 위해서는 도대체 무엇을 배워야 하는가? 그리고 MIT 정규 과정 수업은 어떻게 하면 들을 수 있는가?


일차적으로 MIT 정규과정 수업은 MOOC 들, 즉 Coursera나 Edx 같은 곳에서 올려져 있는 것을 찾을 수 있었다. 물론 모든 수업이 올라와 있지는 않기 때문에 몇몇 수업들은 대체할 수 있는 다른 강의들을 듣기로 결정하였다. 하지만 이 모든 수업을 듣기 전에 컴퓨터란 도대체 어떻게 만들어졌는지 한번 이해하고 넘어가면 좋을 것 같아서 The Elements of Computing System 이란 책을 먼저 읽어보기로 결정하였다


그다음으로, 내가 만들고 싶은 서비스를 만들기 위해서는 무엇을 배워야 하는지 생각해보았다. 일단은 내가 지금 가장 잘 아는 Python 언어를 활용하여 이미 다른 사람들이 내가 만들고 싶어 하는 서비스를 만들어 본 적 있는지 찾아보았다. 나는 주식 정보를 종합하여 보여주고 또 내가 만드는 주식 투자 전략을 실행할 수 있는 간단한 웹을 만들어 보기로 결정하였다. 그리고 이와 같은 것을 해본 사람이 발표 한 자료가 이미 유튜브에 나와 있기에, 그 사람들이 사용한 패키지, 모듈, 데이터 들을 사용해보기로 결정하였다


그런데, 생각해보니 이 모든 것들을 실행하기 이전에 내가 영어를 잘해야 했다


모든 자료들이 대부분 영어로 나와 있었기 때문이다. 그리고 내가 그나마 영어를 할 줄 안다는 것에 안도의 숨을 내뱉었다

작가의 이전글 경제학도, 서비스 만들고 싶어 미쳐버리는 이야기
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari