코딩 교육 과정의 세가지 핵심 가치: 창의, 논리, 그리고 만들기
2017.07.04. [테크 트렌드] 코딩 교육, 부익부 빈익빈 되기 전 '핵심 가치' 기억해야. 한경비즈니스
최근 들어 심심치 않게 코딩에 대한 뉴스가 흘러 나오곤 한다. 지능정보사회를 준비하는 교육체계와 코딩이 밀접하게 연관되어 있기 때문에 코딩이 주목받는 것은 일견 당연한 듯 보인다. 코딩 교육은 이미 2015년 7월에 미래창조과학부와 교육부가 ‘소프트웨어 중심사회를 위한 인재양성 추진계획’을 발표함으로써 특히 초등학생 자녀를 둔 학부모의 관심을 불러일으킨 바 있다. 2018년부터 적용되는 친소프트웨어 정책을 살펴보면, 2018년부터 초등학교에서는 17시간을 실과 과목의 일부로, 중학교에서는 34시간을 '정보'라는 이름의 독립 필수과목으로, 그리고 고등학교에서는 일반선택 과목으로 코딩 교육을 하는 것이 가장 주요한 계획이다.
코딩 교육이 낯설게 들릴 수도 있다. 코딩은 코드를 짜는 것을 의미한다. 코드를 짠다는 의미는 컴퓨터에서 작동하는 명령어를 짠다는 의미이다. 프로그래밍과 유사한 의미로 사용되긴 하지만, 일반적으로 코딩은 단순히 명령어를 작성하는 의미에 머무르는 반면, 프로그래밍은 시스템 전반을 이해하면서 더욱 효율적으로 코딩 작업을 하는 것으로 이해하면 될 듯 하다. 그래서 전문적으로 코딩 작업을 하는 사람을 프로그래머로 통칭한다. 인터넷을 통해 우리가 특정 사이트에 가서 콘텐츠를 보거나 사용할 수 있는 것은 바로 코딩을 통해 구현했기에 가능한 것이다. 우리가 사용하는 디지털과 관련된 모든 결과물은 바로 이 코딩 작업을 통해 구현된 것이다. 그렇다면, 코딩 교육이 모든 사람을 프로그래머로 만들려는 목적을 갖는 것인가 하는 의문을 품을 수도 있다. 사실 코딩 교육의 목적은 이보다 더 큰 의미를 갖고 있다. 코딩은 무엇을 배워야 한다는 목적을 갖기 보다는 우리가 갖고 있는 생각과 감정을 표현할 수 있는 도구를 준비한다는 점에 더 큰 의미를 둘 수 있다. 이보다 더 중요한 것은 코딩을 배우는 과정은 창의적이면서도 논리적인 추론 과정이라는 것이다. 한마디로 말하면, 코딩은 목적이 아니라 과정이기 때문에 그 무엇을 하든 자신의 생각을 더 쉽고 적절하며 효율적으로 나타낼 수 있는 훌륭한 준비가 되는 것이다. 그리고 코딩 교육은 바로 이러한 목표를 달성하는데 맞게끔 교육 과정을 만들어야 한다.
디지털 기기를 태어날 때부터 자유자재로 갖고 노는 세대를 디지털 네이티브(digital native)라고 한다. 태어날 때부터 디지털과 떼어낼래야 떼어낼 수 없는 세대라는 뜻이다. 그런데 조금만 생각해보면, 디지털을 자유자재로 갖고 논다는 의미가 매우 제한적이라는 것을 알 수 있다. 대체 무엇을 자유자재로 갖고 논다는 것일까? 스마트폰? 컴퓨터? 스마트폰을 자유자재로 갖고 논다고 한다면, 스마트폰으로 대체 무엇을 하는 것일까? 이들은 대체로 페이스북과 같은 소셜 미디어를 가장 많이 사용한다. 또한 모바일 게임도 많이 한다. 카카오톡과 같은 메시지 전달도 하고, 포털 사이트에서 뉴스도 보고, 궁금한 정보를 찾기도 한다. 결국 스마트폰을 자유자재로 쓴다는 의미는 지극히 소비적인 활동을 의미한다. 스마트폰의 사용은 대체로 비생산적인 것이다.
컴퓨터도 이와 크게 다르지 않다. 컴퓨터로 가장 많이 하는 것은 역시 게임, 웹 서핑, 그리고 문서 작업이다. 각 직업이나, 전문분야마다 디자인이나 통계, 계산 등 전문적인 작업을 하기도 하지만, 대개의 경우 디지털 네이티브는 이러한 활동을 통해 시간을 보내는 활동을 주로 한다. 물론 문서 작업을 하는 등 생산적인 작업을 할 때도 있지만, 대부분의 디지털 활동은 지극히 소비적인 활동이다. 우리가 디지털 세대라고 말하는 의미는 이렇게 소비자로서 의미였지, 디지털이 갖고 있는 무한한 가능성을 막상 자기의 것으로 만드는 생산화에는 다소 동떨어져 있었다.
디지털이 혁신적인 이유는 이전에는 경험해보지 못했던 것을 즐길 수 있다는 점이다. 다른 관점에서 이를 해석한다면 사람들이 원하는 또는 상상도 못했던 무언가를 누군가 만들어낼 수 환경이 조성됐다는 의미이다. 그렇다면 과연 누가 디지털을 활용해서 이러한 혁신적인 서비스를 만들 수 있을까? 바로 이 질문이 코딩 교육의 중요성을 이야기 한다. 컴퓨터가 만들어진 이후 지난 수십년 동안 디지털과 관련된 결과물은 컴퓨터 프로그래밍을 전문적으로 공부한 전문가들에 의해 만들어졌다. 컴퓨터공학이나 컴퓨터 소프트웨어학을 전공한 사람들의 전유물이었언 것이다. 컴퓨터가 보급되던 초기는 물론이거니와 지금도 여전히 프로그래머의 역할은 압도적으로 중요하다. 실질적으로 만들어 낼 수 있는 사람이기 때문이다. 아무리 좋은 아이디어를 갖고 있어도, 아무리 뛰어난 실행력이 있다고 하더라도 코딩을 모르는 사람은 디지털 서비스를 만들어낼 수 없다는 한계때문에 늘 프로그래머에 의존적일 수밖에 없다. 더 중요한 사실은 이제까지 대부분의 혁신적인 기술은 모두 프로그래머의 아이디어에서 나왔다는 것이다. 마이크로소프트의 빌게이츠에서부터 페이스북의 저커버그까지 닷컴 기업을 만든 창업자는 모두 프로그래머였다. 한국은 물론 전 세계적인 닷컴 기업이 갖는 공통적인 특징이다. 물론 새로운 서비스를 단지 프로그래머만의 힘으로 만들었다는 말은 아니다. 기획자와 그래픽 디자이너 등 다양한 분야의 전문가와 협업을 통해 프로젝트가 진행되었겠지만, 핵심적인 것은 프로그래머의 아이디어를 바탕으로 다른 분야의 전문가가 협업 생태계 안에 들어올 수 있다는 점이다.
코딩 교육의 중요성은 바로 제한된 일부 전문가만이 할 수 있었던 만들기가 평범한 일반인에게까지 확대될 수 있다는 점에 있다. 코딩을 프로그래머처럼 할 수 없어도, 적어도 프로그래머와 대화할 수 있을 정도의 실력을 쌓는다면, 그리고 어떤 과정을 거쳐 구현될 수 있다는 과정을 이해한다면 내가 관심있는 분야의 디지털 결과물을 생산해내는 것이 가능한 것이다. 예를 들면 이런 것이다. 치매를 앓고 있는 할머니를 위해 12세 소녀가 ’timeless’라는 치매 환자를 위한 최초의 앱을 만들어서 ‘CE week 2016’에서 10대를 대상으로 하는 젊은 혁신가 상을 탔다. 또한 초등학교에서 아이들을 가르치는 나훈희 선생님은 게임을 즐겨하다가 동영상을 통해 앱을 개발하는 방법을 배운 후 수학과 과학 교육 앱만 20개를 넘게 만들었고, 무한도전을 보고 만든 ‘하루하루 독립운동가’란 앱은 2만 5000건의 다운로드 숫자를 기록할 만큼 인기를 얻기도 했다. 이렇게 코딩은 자신이 생각하는 것을 실제로 구현할 수 있는 기반이 되는 것이다.
이러한 세계적 추세에 따라 우리나라에서도 이제 내년부터 본격적으로 공교육에서 코딩을 가르칠 예정이다. 단지 정부 뿐만 아니라, 민간 영역에서도 코딩의 중요성을 인식하고 쉽고 재미있는 코딩 교육을 위한 다양한 프로그램을 선보이며 코딩세대들에게 새로운 디지털의 세계로 초대하고 있다. 교육이라는게 어떤 분야나 그렇듯이 초급자들은 시작이 가장 어렵다. 따라서 초급자들을 대상으로 하는 교육과정은 그 효과보다는 무엇보다도 쉽고 재미있어야 긍정적인 태도를 형성하며, 중도에 포기하지 않고, 교육 과정에 능동적으로 참여할 수 있게 만들어야 한다. 우리 사회에서 아직 본격적인 시작도 하지 않은 코딩 교육이지만, 이미 특정 지역에서는 코딩이나 로봇 교육을 오프라인 사설학원에서 가르치며 문제를 발생시키고 있다. 학부모의 교육열과 사교육의 불충분한 준비가 낳은 부작용이지만, 당장 내년부터 시작하는 코딩 공교육 역시 같은 문제를 갖고 출발할 것 같아 우려가 크다.
현재 진행되는 코딩 교육의 가장 큰 문제점은 코딩 교육의 빈익빈 부익부 현상이다. ‘스크래치 방학특강, 아두이노, 앱인벤터, 라즈베리파이를 이용한 정규 과정 편성, SW의무화 교육에 대비하자. 2박3일 코딩의 바다를 누비는 캠프. 비용 1,100,000원’. 코딩 교육 과정을 소개하는 한 광고 카피이다. 코딩이 국어를 배우듯, 운전을 배우듯 한 걸음 한 걸음 나아가야 하는 장기적인 교육 과정임에도 불구하고 현재 진행되는 일부 프로그램은 방학 특강식으로 단 며칠 동안 기계적 학습 과정을 통해 결과물 완성을 목표로 삼는다. 이렇게 캠프식의 교육 프로그램이 아니더라도 코딩이 아직까지 저변 확대가 이루어지지 않았기 때문인지 수강료가 수십만원을 훌쩍 뛰어 넘을 정도로 고가의 사교육으로 자리 잡고 있다. 코딩 교육이 2018년부터 학교에서 진행된다는 뉴스를 들은 코딩에 관한 지식이 없는 학부모는 불안함으로 수십만원을 지불하며 아이들을 학원으로 보내는 것이다. 디지털 디바이드(digital divide)이라는 용어가 있다. 교육, 소득수준, 성별, 지역 등의 차이로 인해 디지털 기기나 콘텐츠에 대한 접근과 이용에 차이가 생기게 되고 그 결과 경제사회적 불균형이 발생하는 현상을 말한다. 코딩 역시 이처럼 가진 자와 못가진 자가 접근성의 차이를 갖게 될까 걱정이다.
둘째, 코딩 교육이 단순히 코딩을 배우는 것으로 인식되고 있다. 물론 이 말이 틀린 것은 아니다. 그러나 코딩이 갖는 더 큰 중요성은 코딩을 하는 과정에서 창의적 아이디어를 어떻게 구현할 수 있을지를 고민하는 것이다. 단순한 아이디어는 결과물을 만드는 과정에서 수없이 시행착오를 겪으며 더 가치 있는 아이디어로 발전하게 되고, 코딩은 이러한 과정을 이끌어내는 하나의 도구이다. 컴퓨테이셔널 씽킹(computational thinking)과 디자인 씽킹(design thinking)과 같이 아이디어를 구체적 결과물로 구현시킬 수 있는 과정의 학습이 기반이 되어야 코딩은 의미가 있는 것이다. 따라서 몇박 몇일 식의 교육과정은 코딩에 관한 호기심을 불러 올 수는 있지만, 수백만원의 비용을 투자할 가치는 전혀 없으며, 또한 그 결과물 역시 그들의 창의성에 기반하지 못하기 때문에 적절하지 못하다.
셋째, 코딩 교육이 단순히 코드를 짜는 과정이 되어서는 안된다. 코딩은 데이터 구조와 알고리즘이 결합된 결과물이다. 따라서 인공지능이 일정 수준으로 발달하면 더 이상 인간이 코드를 짤 필요가 없는 시대가 오게 된다. 인간이 원하는 몇개의 결과물을 제시하면 인공 지능은 인간과는 비교할 수 없을 정도로 빠른 속도로 단 몇초만에 더 훌륭한 결과물을 만들게 될 날이 머지 않아 올 것이다. 그럼에도 불구하고 코딩 교육이 중요한 것은 코딩 교육의 목적이 결과물이 아닌 과정에 있기 때문이다. 창의성을 어떻게 구현할 것인가, 바로 이점이 인간만이 갖는 인공지능과의 차별점이기 때문이다.
이와 같은 문제점을 해결하기 위해서는 초급자들을 대상으로 하는 쉽고 재미있게 설명하는 유무료 온라인 코딩 학습 사이트를 다양하게 준비해야 한다. 정부는 스타트업 육성 전략을 통해 다양한 프로그램을 만드는 사업을 지원해야하고, 닷컴사들은 자신들의 비즈니스 확장을 위해 인력 육성 방안의 일환으로 프로그램을 제작해야 한다. 이렇게 해서 많은 교육용 프로그램이 소개되어야 그 중에서 사용자의 필요성에 맞는 그리고 높은 만족도를 갖는 프로그램이 선택될 수 있고, 이는 자연스럽게 사용자의 확대를 가져올 것이다. 또한 온라인 교육에만 머물면 안된다. 온라인에서 보고 배운 초급자들이 궁금하면 언제든지 찾아가서 물어볼 수 있는 오프라인 교육 공간을 만들어야 한다. 창조경제혁신센터 같이 전국적으로 몇개 안되는 큰 센터를 만들어 접근성과 효율성이 떨어지는 규모로 구성되는 것이 아니라, 걸어서 30분이면 찾아갈 수 있는 공간을 확보해서 언제 어디서든 누구나 활용할 수 있는 공간을 제공해야 한다. 코딩을 할 수 있는 대학생을 멘토로 임명해서 아르바이트 비용을 제공하는 것과 같이 대학교와 연계하는 방안도 있고, 주민센터를 활용하는 방안도 있다. 핵심은 온라인에서 배운 내용을 오프라인에서 확인할 수 있는 연계 방안을 마련해야 하는 것이다.
무엇보다도 코딩 교육을 하는 목적을 분명히 설정해야 한다. 코딩 교육을 하는 목적은 프로그래머를 만들기 위해서가 아니다. 또한 코딩으로 좋은 대학을 가려는 목적은 더더군다나 아니다. 코딩 교육은 자신의 생각과 감정을 가시적인 결과물로 나타내기 위한 준비를 하는 것이다. 이에 따라 초중등 학생들을 대상으로 하는 코딩 교육은 일반적인 학습과정이나 교육체계와는 전혀 다른 과정을 요구한다. 이는 비단 코딩 교육에 한정되는 것은 아니다. 초중고등학교 교육은 국어, 영어, 수학 등에 몰입해서 좋은 대학교를 가기 위한 교육이 아닌 인간 중심의, 그리고 학생 자신이 갖고 있는 소질을 계발하는 교육이 전제가 되어야 한다. 코딩 교육 역시 단순히 미래의 지능정보화 사회에서 살아가기 위한 기술을 가르치는 것이 아니라 자신이 추구하는 가치를 구현하는 과정으로 진행되어야 한다.
2016년 11월 세계인터넷대회(WIC) 개막식에서 알리바바 그룹의 회장인 마윈은 “미래 30년은 인터넷 기업의 천하가 아니라 인터넷 기술을 잘 활용하는 나라와 회사, 그리고 젊은이들의 천하가 될 것이다.”라고 말했다. 다음 세대를 짊어질 우리의 아이들을 위해서 코딩 교육에 대한 근본적인 성찰이 필요하다.
정동훈 광운대학교 미디어영상학부 교수