초·중등 SW교육의 필요성

날짜2015.11.19
조회수19619
글자크기
    • 길현영 소프트웨어정책연구소 선임연구원
    • “왜 초·중등 아이들에게 SW교육을 해야 하나요?”
    • SW교육을 이야기하면 가장 많이 듣는 질문이 바로 보편교육으로서 SW를 교육해야하는 필요성에 대한 것이다. 선진국들이 어릴 때부터 SW교육을 시행하고자 하는 최근 사례들이 SW교육의 시급성을 반증하지만, 우리나라의 경우 아직 사회적 공감대가 형성되지 못한 채로 교과 개편이 이루어지다보니 이런 날선 질문이 SW가 낯선 학생과 학부모, 일반교사 뿐만 아니라 SW수업을 담당하는 교사들에게서도 나오곤 한다. 그러나, 이런 원론적 질문이 차라리 반가운 이유는 한번쯤 짚고 넘어감으로써 SW교육이 왜, 그리고 얼마나 필요한 것인지에 대해 말할 수 있는 기회이기 때문일 것이다.
    • 우선 SW가 무엇인지부터 짚어보자. SW란 사람이 컴퓨터를 다룰 수 있는 방법이자, 컴퓨터를 사용하여 문제를 해결하는 도구다. 컴퓨터가 특정한 일만 할 수 있던 기존 도구들과 달리 보편만능의 도구1)로서 우리 생활 전반에서 스며들 수 있던 이유는 컴퓨터라는 딱딱한 기계 안에서 컴퓨터를 움직이고 있는 SW라는 존재 때문이다.
    • 컴퓨터를 악기라 한다면 SW는 악기가 어떤 음을 내야하는지 알려주는 악보이다. 작곡가의 머릿속에 있던 감성을 담아 악기란 매개체를 통해 만들어지는 무궁무진한 음악처럼, 우리는 머릿속에 있던 아이디어를 SW에 담아 컴퓨터를 무한 용도로 쓰일 수 있게 한다. 이러한 SW는 우리가 문제를 풀어내는 방식(알고리즘)을 컴퓨터가 이해할 수 있는 언어(프로그래밍 언어)로 표현하여 만들어진다. 그런데 컴퓨터는 SW를 무비판적으로 실행한다. SW에 담긴 사람의 문제풀이 방법이 똑똑하면 똑똑한대로 어리석으면 어리석은대로 컴퓨터는 여과없이 그대로 실행하여 눈앞에 보여준다.
    • 따라서, 프로그래머들은 사람이 지금까지 쌓아온 현명한 아이디어들을 담아 SW를 만들고자 노력해왔다. 그 아이디어들은 단순히 외운 지식의 더미에서 만들어진 게 아니라, 사람의 지식과 경험을 토대로 한 창의적이고 논리적인 생각의 과정을 통해서 만들어졌다. 생각의 과정을 거치면서, 실제 문제는 단순하지만 핵심을 담고 있는 미니어처가 되고 그 속에서 최적화된 해결안은 컴퓨터(HW+SW)가 실행할 수 있는 언어로 표현되어 실제 문제를 푸는 솔루션이 된다. SW교육은 이러한 생각의 과정 속 기술(컴퓨팅 사고력)과 컴퓨터와 소통할 수 있는 언어를 우리 아이들에게 전달하는 것이다. 잡은 물고기를 주기보다는 앞으로 물고기를 잡을 수 있는 법을 알려주고자 함이다. 그리고 모든 사고력과 언어 능력은 어릴 때 훨씬 쉽게 받아들여지고 함양될 수 있기에 세계 여러나라들이 어릴 때부터 이러한 SW교육을 의무화시키고 있다.
    • 그렇다면 왜 기존의 과목들이 아닌, SW라는 새로운 매개체를 통한 교육을 하려 하는가? 그 이유는 우리 아이들이 살아갈 미래 디지털 사회는 지금과는 다른 모습의 사회이며, 그 변화를 주도하는 것이 바로 SW이기 때문이다. 짧은 역사 속에서도 SW는 우리 세상을 상상 이상으로 바꾸고 있다.
    • 인터넷은 지구촌 반대편 사람과 함께 실시간으로 이야기할 수 있고 스마트폰으로 언제 어디서나 다른 이들과 소통하고 업무를 처리할 수 있다. 이전에는 불가능하다고 생각했던 인간의 유전자 염기 서열이 SW를 이용하여 분석되고 날씨나 태풍의 이동경로를 정밀하게 예측할 수 있게 되었다. 복잡하고 많은 양의 데이터를 지치지도 않고 빠르고 정확하게 처리해 내는 컴퓨터의 사용은 이제는 너무나 당연한 일이다. 더 나중에는 이런 현상이 더 심해질 것이다. 문제들은 더 크고 복잡해질 것이며, 많은 일들은 발달된 인공지능 로봇(SW)에 의해 수행될 것이다. 이러한 SW를 알고 다룰 수 있는 능력은 개인·사회·국가의 경쟁력이 될 것이다.
    • 또한, SW교육은 미래사회가 필요로 하는 새로운 역량을 키우는데 매우 효과적인 교육수단이다. 상상 이상의 변화가 지리적 한계를 넘어 일어나는 글로벌 사회에서 단순히 기존 지식이나 방법을 외우고 설명할 수 있는 능력은 그다지 의미가 없다. 왜냐하면 이런 부류의 일은 로봇이 사람 대신, 아니 사람보다 더 잘 할 수 있는 일이기 때문이다.
    • 그렇다면, 미래 인재의 역량은 무엇인가? 많은 연구에서 미래 인재의 역량으로 창의성과 논리성을 갖춘 문제해결력, 그리고 다른 이와 공유와 협업, 소통할 수 있는 능력이 강조되고 있다. SW교육, 특히 프로그래밍은 이런 역량을 키우는데 매우 효과적이라는 점 역시 다양한 연구들을 통해 밝혀지고 있다. 프로그래밍을 통해 학생은 논리적으로 문제를 파악하고 나만의 창의적인 해결방안을 만들어낼 수 있다. 내 머리 속의 추상적 아이디어를 프로그램으로 구체화하고 실제로 사용까지 하면서 자신의 노력에 대한 성취감을 느낄 수 있으며, 디버깅 과정을 통해 문제점을 찾고 고쳐가며 점진적 발전의 희열을 느낄 수 있다. 자신이 만들어낸 코드나 프로그램을 나 혼자 소유하기보다는 다른 이와 공유하고 협업하면서 서로의 생각을 나누는 소통의 능력 역시 SW교육의 주요 산출물이라 하겠다. 기존의 다른 과목들로 이러한 역량이 효율적으로 함양될 수 있는가? 단언컨대, 100년 전과 똑같은 교육을 하고 있는 지금 교육 시스템으로는 어렵다.
    • SW는 단순한 기술이 아니다. 사람이 그동안 쌓여온 오랜 지혜를 기반으로 하여 만들어낸 최고의 창조물이다. SW교육의 목적은 이 지혜를 우리 아이들에게 알려주어 미래 사회에서 성공적으로 살아갈 수 있는 힘을 주고자 함이다. SW개발자의 대량 양산은 초·중등 SW교육의 기대효과는 되겠으나, SW교육의 근본 목적은 아니다. SW교육의 근본 목적은 세상의 일부가 되어버린 컴퓨터를 다루는 방법과 현명하게 사고하는 방법을 통해, 우리 아이들이 디지털 사회에 적합한 능력과 인성을 함께 가진 사람으로 성장할 수 있도록 도와주는 것, 그 이상도 이하도 아니다
    • 1) univeral machine의 번역 (출처: 컴퓨터과학이 여는 세계, 이광근)