2021학년도_입상_[컴퓨팅사고]_신승훈 교수
제목: 인문대생으로서 새로운 영역을 배울 수 있던 수업 모두가 그런 것은 아니지만 이과가 아닌 문과를 선택한 학생들 다수는 수학과 과학에 특히 취약할 것입니다. 그리고 저 또한 마찬가지입니다. 2021학년도에 아주대학교에 입학한 저는 흔히 말하는 ‘수포자’였습니다. 따라서 인문대를 다니며 숫자, 기호들과는 더는 마주칠 일이 없을 줄 알았습니다. 그러나 학과 요람을 확인하고 좌절했던 기억이 납니다. 알다시피 인문대는 SW과목을 필수로 수강해야 합니다. ‘컴퓨터와 인간’ 또는 ‘컴퓨팅 사고’ 중 하나를 선택해야 했는데 강의의 이름조차 어렵게 느껴졌습니다. 최대한 늦게 수강하고자 했지만 피할 수 없었기에 2021년 2학기에 수강하게 됐습니다. 단순히 강의 이름만 보고 지루하고 어렵고 이해하지 못하는 수업이 되지 않을까 예상했습니다. 그러나 신승훈 교수님의 ‘컴퓨팅 사고’ 수업을 통해 이는 저의 편협한 생각이었음을 깨달았습니다. 수업 목표를 한 문장으로 정리하자면 복잡한 문제를 작은 문제로 간결하게 재구성해 해결하는 것입니다. 수업은 실시간 온라인으로 진행됐으며 시험 없이 초반부에는 개인 과제를 위주로 제출하다 후반부로 갈수록 팀 과제가 주가 됐습니다. 교수님께서는 학기 초부터 ‘원활한 소통이 가능한 한국어 능력’을 강조하십니다. 왜냐하면 후반부에는 팀 토론이 거의 매 수업마다 있기 때문입니다. 게다가 토론을 바탕으로 작성한 팀 과제는 개인 참여 수준이 반영되어 평가됩니다. ‘컴퓨팅 사고’는 수업 시간 외의 과제가 별도로 없습니다. 대부분 수업 시간 내에 풀어 제출할 수 있게 해주십니다. 그 대신 과제가 조금 많다고 느끼실 수도 있을 것 같습니다. 우선 스스로 하는 개인 과제는 보고서 작성, 핵심 개념 문제, 워크시트로 이루어져 있습니다. 수학과 과학에 대해 아는 것이 전혀 없어 문제를 푸는 게 두려울 수도 있습니다. 하지만 강의 ppt와 교수님이 하시는 말씀만 잘 듣는다면 절대 고난도 문제가 아닙니다. 개인 과제를 작성할 때 팁이 있다면 아는 것을 최대한 적는 것입니다. 답안을 공백으로 남겨두지 말고 무엇이라도 작성해 보는 걸 추천드립니다. 정확한 답을 알고 있는 것이 가장 좋지만 마음처럼 되지 않을 때도 있을 것입니다. 그럴 때는 수업을 통해 배운 내용을 적용해 자신이 아는 만큼 작성해야 부분 점수라도 가져갈 수 있습니다. 그렇다고 정말 아무 내용이나 작성하는 것은 점수도 얻지 못하고 헛수고일 가능성이 크기 때문에 질문이 요구하는 바를 파악한 뒤 작성해야 합니다. 제가 신승훈 교수님의 ‘컴퓨팅 사고’가 명강의라고 생각하게 된 첫 번째 계기는 바로 팀 과제 덕분입니다. 팀 과제는 연습 문제 3회와 팀 토론 문제 4회로 이루어져 있습니다. 처음 팀을 정할 때는 교수님께서 랜덤으로 배정해 주십니다. 학번, 나이, 학과, 성별, 국적 모두 제각각인 사람들끼리 만나 각자 다른 의견을 공유하고 이해하는 데 도움이 되는 팀 선정 방법이라고 생각합니다. 또, 신승훈 교수님은 학생들의 의견을 최대한 반영해 주시는 분입니다. 한 예로, 팀 과제를 수행하는 중간쯤 팀을 한 번 바꿀 수 있는 기회가 주어졌습니다. ‘팀을 완전히 새로 짠다’와 ‘지금 팀을 유지한다’의 선택지가 있었고 모든 수강생의 투표를 받았습니다. 2021학년 2학기에는 과반수가 ‘지금 팀을 유지한다’를 선택해 실제로 저희는 처음부터 끝까지 같은 팀원들과 함께 활동할 수 있었습니다. 앞서 언급한 것처럼 팀 과제는 연습 문제 3회와 팀 토론 문제 4회로 이루어져 있습니다. [교수님의 개념 설명 – 연습 문제- 팀 토론 문제 – 발표] 이 루틴을 총 4번 반복합니다. 연습 문제가 3번 밖에 없는 이유는 마지막 루틴을 할 때 교수님이 설명해 주신 개념을 푸는 것이 아닌, 저희 팀이 스스로 문제를 만들어 풀기 때문입니다. 따라서 연습 문제가 없고 팀이 만든 문제가 팀 토론 문제가 됩니다. 여기서도 교수님이 학생을 생각해 주신다는 느낌을 받았습니다. 우선 각자 팀에서 기존 팀 토론 문제 난이도의 문제를 제작합니다. 그 후 투표를 통해 ‘다른 팀의 문제를 푼다’와 ‘본인 팀의 문제를 푼다’를 결정합니다. 투표는 역시나 전체 수강생이 참여하고 과반수의 선택에 따라 풀이가 진행됩니다. 이번 학기에는 ‘본인 팀의 문제를 푼다’가 조금 더 많아 스스로 문제를 만들고 풀고 발표까지 했습니다. 팀 과제 중 팀 토론 문제는 상대 팀의 평가와 교수님의 평가로 구성된 팀 평가, 개인 참여 수준, 기여 점수, 팀원끼리의 평가로 구성된 개인 평가로 점수가 나오게 됩니다. 기여 점수는 특정 역할을 맡으면 받을 수 있습니다. 팀 토론 문제를 풀며 적은 문서를 바탕으로 개인 참여 수준과 기여 점수를 평가하게 됩니다. 이 문서를 작성하기 전 팀원끼리 상의해 사회자, 기록자, 발표자를 각 한 명씩 지정해야 합니다. 한 팀은 대략 5명으로 구성되어 있어 모두가 하나씩 역할을 맡지 못합니다. 그래서 이때 적극적으로 역할을 맡고 싶다고 의사를 밝히는 게 중요하다고 생각합니다. 여기서 기록자는 팀 토론 내용을 빠짐없이 적어야 합니다. 누가 어떤 의견을 제시했는지 모두 작성해야 이를 바탕으로 교수님께서 누구의 의견이 중요하게 적용됐는지를 판단하시고 개인 참여 수준에 반영해 주십니다. 그렇기 때문에 적극적으로 의견을 제시하는 것이 중요합니다. 수학적인 풀이도 어느 정도 필요하지만 사고를 하는 것이 중요하다는 것입니다. 팀원끼리 의견을 공유하다 보면 좋은 해결 방법으로 나아가게 됩니다. 의견이 많을수록 선택지가 풍부해지고 다양한 사고를 통해 개성 있는 해결 방법을 찾을 수도 있습니다. 해결 방법에 정해진 해답은 없기 때문에 소통을 통해 적절한 답을 찾을 수 있을 것입니다. 저는 좋은 팀원을 만나 많이 이야기를 나누고 고민하며 스스로 만족하는 해결 방법을 도출해낼 수 있었습니다. 하지만 단지 팀 활동이 좋았기에 ‘컴퓨팅 사고’를 명강의로 선정한 것이 아닙니다. ‘컴퓨팅 사고’가 명강의라고 생각하게 된 두 번째 계기는 수업의 질 덕분입니다. 교수님께서 제공해 주시는 ppt와 설명을 통해 컴퓨팅 사고의 주요 개념, 응용, 자료의 표현 방법 등을 알 수 있었습니다. 개념을 설명하실 때 항상 적절한 예시를 통해 문제 해결을 알려주십니다. 이 개념들은 이론적인 배움에만 그치지 않고 과제와 실생활 예시에 적용해 볼 수 있도록 유도해 주셔서 확실히 개념을 숙지할 수 있었습니다. 아마 ‘컴퓨팅 사고’에서 배운 개념은 여러 번 적용해봤기 때문에 오래도록 잊혀지지 않을 것 같습니다. 그중 특히 기억에 남는 개념은 단순화입니다. 문제의 핵심만 정리해 과정을 파악하면 해결이 용이해진다는 단순화는 항상 모든 팀 과제에 적용해야 했고 과제가 거듭될수록 단순화가 오히려 쉽게 느껴졌습니다. 게다가 팀 과제를 풀 때는 순서도와 알고리즘을 짜는 시간이 있었습니다. 솔직히 처음 순서도와 알고리즘을 작성하라고 했을 때는 손도 못 댔던 기억이 납니다. 어떻게 시작해야 할지조차 몰랐기 때문입니다. 그러나 수업이 거듭될수록 팀원들과 상의하고 교수님의 의견을 들으며 순서도의 기호를 사용할 수 있게 되고 알고리즘의 방법을 이해할 수 있었습니다. 순서도, 알고리즘, 리스트 등 처음엔 알 수 없는 것들 투성이였습니다. 이런 수학적 부분은 아직까지도 어렵게 느껴집니다. 그러나 한 학기 동안 ‘컴퓨팅 사고’를 들으며 새로운 영역의 공부를 할 수 있었고 대학교에서의 배움이 이런 것이구나라는 생각을 했습니다. 전혀 몰랐던 개념을 알게 되고, 문제에 적용하고, 점점 이해하게 되는 과정을 스스로 느끼며 신기하고 재밌었습니다. 인문대 필수 과목이기 때문에 억지로 듣는다고 생각하지 마시고 사고를 확장하는 또는 새로운 ‘배움’을 얻는 수업이라고 생각하셨으면 좋겠습니다. 신승훈 교수님께서는 학생을 배려해 주시고 질문도 친절하게 받아주시는 분입니다. 그러니까 혹시 토론을 하다가 모르는 부분이 생기면 어려워하지 말고 질문하시는 걸 추천드립니다. 아마 교수님께서는 인자하게 웃으시며 답해주실 겁니다. 앞으로 ‘컴퓨팅 사고’를 수강하게 될 분들은 열심히, 꾸준히, 적극적으로 참여하면 좋은 학점과 함께 교양을 쌓을 수 있을 것입니다. 단지 ‘수포자’라고 도전을 망설이지 않으셨으면 좋겠습니다. 끝으로 본 에세이를 통해 ‘컴퓨팅 사고’ 강의를 해주신 신승훈 교수님께 감사의 인사를 드립니다.