너넨 인간적으로 비전공자라고 하지마라
개발자가 되고 싶은 22명의 예비 개발자들과 개발 공부를 시작한지 2주가 지났다. 비전공자인 내가 생소한 개발언어를 배우는 것에 적응하는 것도 어려웠지만 무엇보다도 어려웠던 건 '멘탈 관리'였다.
다들 "어렵다, 어렵다" 염불을 외길래 '다행이다 나만 어려운 건 아니구나 열심히 해야겠다' 라는 생각을 했었는데 막상 수업시간에 강사님께서 문제를 내면 내 옆을 봐도, 뒤를 봐도, 대각선을 봐도, 나만 아무런 타이핑도 치지 못하고 있다. 이상했다. 다들 어렵다며? 그럼 나처럼 다들 못해야 하는거 아냐? 그런데 왜 다 문제 푸는건데?
이 질문에 대한 해답은 자기소개 시간에 말끔이 해결되었다. 어찌됐든 8개월 가량은 매일 12시간이 넘도록 얼굴보고 지내야 하고 중간중간 팀프로젝트도 함께 할텐데 서로 이름, 나이를 비롯한 간단한 자기소개는 필요하지 않겠냐는 강사님의 말씀에 따라 자기소개 시간을 갖게 되어 그들이 전공까지 알게 되었다.
참나! 다들 비전공자라더니... '수학과', '수학교육과'는 물론이고 거짓 다 '이공계' 계열 이였다. 거기다가 '전공자'들 까지도 자기들은 대학교 때 공부를 거의 안해서 전공자지만 전공자가 아니라는 말까지 하면서 비전공자가 개발자 교육을 받을때의 에로사항까지 뺏어간다. 솔직한 생각으로 기가 찬다. '이공계'에 왜 이렇게 부들 부들 되냐고? 그들도 프로그래밍 언어를 배운 적이 없다고?
그런데 내 이야기 좀 들어보세요. 아직 2주차지만 프로그래밍 언어를 배우면서 몇 가지 능력들이 필요하다고 느꼈는데, 그 중 큰 부분을 차지하는 것중에 하나가 '수학적인 센스' 다. 내가 생각하는' 수학적인 센스'란 쉽게 예를 들자면
[1~100까지의 숫자 중에 2의 배수만 출력하시오.]
라는 문제가 있다고 치자. 여기서 필요한 '수학적인 센스'는 1~100까지의 숫자 중 2의 배수만 출력하려면 어떠한 값을 2로 나눴을 때 나머지가 0이 되는 것이 전부 2의 배수라는 걸 알아야 한다. 그런데 나는 수학적인 센스는 커녕 학창시절 전부를 '수포자'로 살아왔던 지라 이 부분을 도출해 내지 못한다. 그러니까 프로그래밍 언어를 배워도 그걸 코딩으로 표현할 수 가 없는 것이고 그래서 시작조차 하기 어렵다는 것이다. (* 물론 이 예는 정말 극단적으로 간단한 예임. 나도 2의 배수를 찾으려면 2를 나눴을 때 나머지가 0이 되야 한다 쯤은 안다.)
(※ 2로 나눴을 때 나머지가 0이 되는 것이 2의 배수인데 그 '나머지' 라는 단어를 빼먹었네요 흑흑. 페이스북에서 제 글이 공유되는 중인거 같은데 이 내용이 빠졌다는 댓글이 있어 수정합니다)
그런데 이공계 계열을 비롯한 수학과, 수학교육과, 거기에 전공자는 이 생각이 이미 도출된 상태에서 배운 프로그래밍 언어를 도입하니 코딩이 가능한 것이다. 그리고 동시에 알게 되었다. 그들이 어렵다는 것과 내가 어렵다는 것의 기준도 다르다는 것을.
[(비전공자인) 내가 어렵다 = 문제가 나오면 정말 아무것도 못하겠다 어디서부터 짜서 어떻게 써야 하지?]
[(전공자 + 이공계열) 그들이 어렵다 = 아 이 공식을 이렇게 대입해야 하는데 이 부분은 어떻게 작성해야 하는걸까?]
그러다보니 수업시간에 지각하고 졸고 야간자율학습은 빠지는 전공자 (+ 이공계열)은 매일 12시까지 공부하는 나보다 늘 앞서있다. 2주간 공부하면서 이 사실을 알게 되니. 자괴감이 배가 되었다. 개발 공부를 시작하기 전 '비전공자이지만 개발자가 됐다'는 케이스를 보고 '나라고 못할 거 뭐 있어' 의 마인드로 시작하게 되었지만, 역시나 세상은 녹록치가 않다.
만약 7개월 뒤에는 나도 개발자로 취업을 하게 되어 또다른 비전공자에게 조언을 해준다면 이렇게 말해주고 싶다. "나도 비전공자지만 개발자가 됐으니, 비전공자인 너도 가능하다. 하지만 '존나게' 공부 해야 한다." 고.