brunch

You can make anything
by writing

C.S.Lewis

by 이르스IRS Nov 20. 2022

코딩이 왜 필수과목일까?

온 국민이 개발자가 되어야 하는 것은 아니다.

교육부에 따르면 25년부터 중학교 필수과목 중에, 26년부터 초등학교 5, 6학년 필수과목 중에 코딩 교육이 추가된다고 한다. 일부 학교에서는 이미 필수과목이 되어 학생들이 배우고 있는 것으로 알고 있다.


IT특성화고등학교를 졸업한 사람으로서 코딩을 배운다는 것 자체는 정말 환영하지만 환영하는 만큼 걱정도 됐다. 워낙 뭐든지 잘해야 하고 뒤처지면 안 된다고 생각하는 우리나라 교육문화로 인해 창의성을 기르고 생각하는 힘을 길러주는 코딩 교육이 아이들을 개발자 수준으로 만들기 위한 명목으로 바뀔 것 같았기 때문이다.


아니나 다를까 코딩 과목이 추가된 학교 근처에 코딩 학원이 생겼다는 글을 봤다. 실제 TV 프로그램을 캡처한 글이었는데 학원 교사가 자랑스럽게 중학생들 대상으로 실제 개발자 수준의 교육을 진행하고 있다는 말을 하고 있었다. 불안한 생각은 빗나가지 않는다.


왜 사람들은 과목을 배우는 이유보다는 그 과목의 점수에 더 집중하는 걸까. 내세우고 자랑하고 비교해서 승리하는 것만이 인생의 목표라고 생각하는 것일까.


대학교에서는 이미 코딩 과목을 꼭 한 번은 들어야 하는 과목으로 지정해놨다. 나도 그 과목을 들었고 주위 대학 신입생들이 가끔 코딩 과목을 들으면서 어려움을 겪을 때 도움을 주면서 얘기를 들어보면 꽤나 암울하다는 생각을 했다. 어떤 사례든 관계없이 공통적으로 코딩을 가르칠 때 다른 과목을 가르치듯이 개념을 글로 죽 읽은 다음에 예시를 몇 개 보여주거나 따라치라고 하고 과제로 문제 몇 개를 주면서 풀어오라고 하는 것이다. 사실 이건 양반이라고 생각하는 게 내가 들은 수업에서는 그날 배운 파이썬 함수의 영어 설명을 외우고 나중에 그 영어 설명 중에 중요한 단어를 가지고 영어 단어 시험을 봤다(???).



내가 생각하는 이상적인 코딩 교육 순서는 다음과 같다. 먼저 순서도를 그리면서 무언가 행동을 할 때 실제로 이뤄지는 모든 동작들이나 계산들을 순서대로 기록해보고 그것을 계속해서 자세한 그림으로 잘게잘게 쪼개는 것을 연습시킨다. 또는 어린이 코딩 교육 사이트를 활용해서 알고리즘에 대한 개념을 알려준다. 최근에 '엔트리'라는 서비스를 알게 됐는데 알고리즘을 재밌으면서도 체계적으로 잘 알려주는 서비스인 것 같았다. 직접 해보면 어린이용이라고 무시할 게 아니라는 것을 알게 될 것이다.


기본적으로 제공하는 단계들을 모두 마치면 파이썬에 있는 프로그래밍 언어의 기초 구조들을 가르칠 것이다. 변수, 함수, 반복문, 조건문 등이 무엇인지 가르쳐주고 간단한 프로그램의 설명을 보여준 뒤에 그것을 위에서 말했던 순서도로 나누게 한다. 그것도 잘게잘게. 그다음 각 순서마다 변수나 함수, 반복문, 조건문 중 어떤 것을 사용해야 하는지 하나하나 연결시켜주고 그것을 파이썬 코드로 보여줄 것이다. 이런 식으로 진행하면 프로그래밍, 코딩은 어떤 문제를 해결하기 위함이고 해결하기 위해서는 그 과정을 잘게 쪼개야 한다는 것을 알려줄 수 있다.


그러나 이게 다가 아니다. 또 다른 간단한 프로그램의 설명을 주고 직접 만들어보게 할 것이다. 오류가 뜨는 것에 두려움을 느끼지 않고 오히려 무엇이 문제인지 생각하게 만들 것이다. 프로그래밍을 해본 사람이라면 무조건 코드를 처음부터 잘 칠 수 없다. 특히 규모가 커지면 커질수록 그건 불가능에 가까워진다. 아래 밈이 괜히 나온 것이 아니다.


안되네... 왜지? / 되네... 왜지?

진짜 개발은 오류를 수정하는 데 있고 무엇이 문제인지 찾아가는 능력이 정말 중요하다. 그런데 내가 봤던 사람들은 에러가 뜨는 것을 보면 기겁을 했다. 에러 뜬다고 컴퓨터가 뻑나거나 하지도 않고 아무런 문제가 되지도 않는데 말이다. 워낙 실패를 마주해보지 않아서 그런 것 같다. 중요한 건 실패를 했다는 사실보다 실패했을 때 어떻게 대처하는 것일 텐데... 오히려 에러 메시지에는 큰 힌트가 나와있기 때문에 다음에 더 나은 코드를 실행시켜볼 수 있다.


정리하자면 코딩에서 가장 중요한 능력은 문제를 잘게 나누는 능력과 문제를 해결하는 능력이다. 사실 문제를 잘게 잘 나누면 어느 부분에서 문제가 생겼는지 금방 알 수 있어서 효과적인 해결 방법을 찾을 수 있다. 코딩을 배우면 위 능력, 한 마디로 '문제해결능력'을 키울 수 있다. 처음엔 몰랐는데 위 능력은 코딩뿐만 아니라 생활 속 다양한 문제를 해결하는 데 큰 도움이 된다.


솔직히 코딩을 배우고 싶은 사람은 유명한 강사의 파이썬 강좌 같은 것을 듣는 것보다 위 방법으로 독학하면 웬만큼 할 수 있다고 생각한다. 물론 첫 시작은 도움을 받는 게 좋지만 상황이 어렵다면 혼자도 가능하다고 생각한다.


코딩뿐만 아니라 학교에서 배울 수 있는 과목들을 왜 배워야 하는지 또박또박 잘 설명해줘서 결국 배우면 큰 도움이 된다는 것을 아이들에게 잘 전달하기만 해도 사실 아이들은 수업에 더 잘 집중할 것이라고 생각한다. 아이를 잘 교육하기 위한 목적은 절대 옆집에 가서 '우리 아이가 이만큼 잘한다'고 자랑하는 게 아니라 아이가 자신이 무엇을 잘하고 무엇을 좋아하는지 도와주어 결국 독립할 수 있게 도와주는 것임을 잊지 않았으면 좋겠다.



작가의 이전글 '읽음'은 큰 힘을 갖게 해준다. 그러나
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari