내 수업을 통해 얻어갔으면 하는 것
“배운 내용으로 본인의 문제를 해결할 수 있었으면 한다”
내 수업의 궁극적 목표는 학생들이 수업에서 배운 내용으로 본인의 문제를 해결할 수 있도록 하는 것이다. 현재 나는 임용 후 첫 수업으로써 “프로그램 분석” 과목을 가르치고 있고, 주로 프로그램 분석 방법과 원리에 대해 소개하고 있다. 해당 수업에는 프로그램 분석과 관련된 연구를 하는 학생이 단 한 명도 없었기에, 한 수업에서는 학생이 “(나는) 이거 배워서 어디에 써요?”라고 질문하였었다. 훌륭한 질문이다! 어느 수업에서든 학생들이 이 질문을 자신에게 끊임없이 하길 바란다! 당시에는 “프로그램에 있는 버그를 찾을 수 있어요”와 같이 원론적인 답변을 하였었는데, 이 답변은 부족하다고 생각한다. 궁극적으로는 (프로그램 분석 관련 연구가 아니더라도) 학생들이 마주하고 있는 문제에 대한 해결책이 되거나 도움이 되었으면 한다.
모든 분야는 연결되어 있다. 하나의 분야에서 좋은 아이디어가 있다면 이는 다른 분야의 문제를 해결하는 데 큰 도움이 될 수 있다. 내 연구 중에서도 그런 것들이 있다. 프로그래밍 언어 분야의 기본 기술들을 기계학습 분야에 적용하여 큰 성과를 낸 적도 있고 [참조], 소프트웨어 공학 분야에 적용하여 큰 성과를 낸 적도 있다 [참조]. 배울 것을 통해 내가 마주한 문제를 해결하고 논문으로까지 완성하였다면, 이는 학점을 떠나 수업의 궁극적인 목표를 달성한 것이라고 생각한다.
본인의 문제와 연결할 수 없다면 결국 잊어버리기 쉽다. 나 역시 수업을 들을 때 “시험과 과제를 위해서”만 들었던 때가 많았다. 당시에는 많이 배웠다고 생각했지만, 나의 문제와 연결하지 못해 결국 지금은 희미한 기억만 남아 있다. 내 수업에서 학생들이 나와 같은 실수를 반복하지 않았으면 한다. 40시간이 넘는 수업 시간의 결과가 희미한 기억뿐이지 않았으면 한다.
수업의 내용을 본인의 문제를 풀기 위한 무기로써 재창조하게 되면 평생 사용할 수 있는 나만의 무기가 된다. 나에게는 프로그래밍 언어 수업이 그렇다. 나는 주어진 모든 문제에 대해서 “이 문제를 풀기 위한 프로그래밍 언어를 만들어서 푼다”는 생각으로 접근하고 풀어왔다. 이것이 프로그래밍 언어 수업을 하셨던 교수님이 진정으로 바라는 경지일 것이라고 생각한다. 만약 지금 내가 희미해진 과목들을 다시 듣는다면, 현재 내가 마주한 문제와 어떻게 연결될 수 있는지 치열하게 고민해 볼 것이다. 그것이 학점을 넘어 가르치는 사람이 진정으로 바라는 것일 것이다. 다시 한번, ‘이거 배워서 어디에 쓰지?’를 끊임없이 본인에게 질문하길 바란다.
ps. 안타깝게도 수업에서는 해당 능력을 갖추었는지 평가하는 것이 쉽지 않다. 시험이나 과제에서는 교수자가 만들어 놓은 문제를 푸는 것이기 때문에 학생 본인의 문제를 푸는 능력을 갖추었는지 평가할 수 없다. 한 학기 만에 위와 같은 경지에 도달하기 쉽지 않다. 어떻게 하면 수업에서 학생들이 이를 갖추게 하고 이를 조금이라도 평가할 수 있는지 고민 중이다.