우매함의 봉우리를 빠르게 경험하는 SW교육

스플래시는 어떤 일을, 왜 하고 있을까요?

by 김동우



안녕하세요. 스플래시의 김동우입니다.


빠르게 변화하는 세상에서 미래 교육에 대한 답을 찾고자 하는 관심이 집중되고 있습니다.

그중 코딩 교육은 미래에 몰라서는 안될 지식이라며 엄청난 관심을 받고 있습니다. 그렇다면 코딩은 왜 배워야 할까요? 설리번 프로젝트에서 한번 이 주제를 다루어 본 적이 있습니다.(만들고 싶은 것을 만들어야 하는 이유)


왜 코딩을 배울까요?


이번에도 한 가지 사례를 가지고 왔습니다.

일본 대지진의 여파로 후쿠시마 원전이 폭발하였을 때, 방사능 피해량을 측정하지 못해 세계가 불안에 떨었습니다.

일본 정부에서도 빠른 피해 상황 파악을 해야 했지만 수많은 피해 상황에서 상황이 지연되고 있었죠. 이 상황에서 메이커가 재빠르게 움직였습니다.

1*zGGDetocEQ1TmLW_umb-JA.png


방사능 누출 정보를 수집하는 센서가 달린 보급형 센서 키트를 만들었습니다. 그리고 일본과 전 세계 사람들에게 보급했죠. 이 센서 키트는 수집된 정보를 서버로 보내 어디에서 어느 정도 수준의 방사능이 측정되는지를 지도에 실시간으로 맵핑하고, 그 정보는 실시간으로 전 세계에 공유되었습니다.(관련 영상)


정확도는 떨어질지 몰라도, 적어도 어느 정도 범위에서 피해가 확산되고, 피해상황이 차이가 나는지 빠르게 알 수 있었죠. 이처럼 프로그래밍을 배운다는 것은 가장 강력한 문제 해결 도구를 하나 가지는 것입니다.


IT 기술을 배운다면 우리는 조금 더 빠르고, 파급력 있게 문제를 해결할 수 있습니다. 그런데, 지금 도입되는 IT 교육에서 문제를 발견하고, 해결하는 과정을 배울 수 있을까요?


우리가 해결하려고 하는 문제


우리가 해결하고자 하는 문제는, 정말 IT 기술로 문제를 해결하는 과정을 경험할 수 있는 SW 교육이 별로 없다는 문제입니다. 학생들은 살면서 수많은 SW와 마주칩니다. 자연스럽게 눈높이도 높아져 있는데 언제까지나 기초 단계만 하고 있을 수는 없습니다. 학생들의 흥미가 떨어지지 않으려면 학생들의 기대치를 충족시켜주어야 합니다.

1*Pa2CbjeoVGdrBORvkoP2kA.png 학생들의 기대와는 다른 러닝 커브 — by 박재성 공동창업자


SW교육은 학교에서도 이미 의무화가 되었고 사교육 시장에서도 수많은 SW 교육이 진행되고 있지만, 실제 의미를 가질만한 SW 응용 교육은 매우 작은 범위에서만 진행되고 있습니다.
서울 등록 컴퓨터 학원 중 20%에서만 실제로 결과물을 만드는 교육을 진행하고 있었고, 그중 50% 가까이 강남에 집중되어 있었습니다. 심지어 서울 내에도 저희 기준에서 의미 있는 교육이 보급되지 않은 구 단위가 있습니다,


사실, 학교나 학원에서 SW를 가르쳐야 할 선생님들은 대부분 전문가가 아닙니다. SW를 제대로 경험해보지 못한 선생님들이기 때문에 그들도 무엇을 만들 수 있는지 잘 알지 못합니다. 실전 경험이 있는 전문가가 교육하는 경우가 없지는 않습니다만, 실전 경험이 있는 전문가들이 전국 학교와 학원에 있을 수는 없을 것입니다.


우리는 학생들의 눈높이에 맞는 결과물을 만들기 위해 만나야 할 기술적 장벽과, 비전공자 선생님들의 부족한 교육 콘텐츠의 문제를 해소하고자 합니다.


왜 지금 이 일을 하는가?


시장이 성장하면서 수많은 코딩 교육이 나타납니다. 정부에서도 빠른 움직임을 보여주며 이미 의무화가 되었지만, 시장이 더 빨리 움직였습니다. 학부모들은 누구보다 빠르게 아이를 키우고 싶었고, 학원도 빠르게 수요를 충족시켜갔죠. 요즘 컴퓨터 학원에서는 엑셀, 파워포인트 같은 자격증 교육 말고도 코딩 교육을 하나씩 진행하고 있습니다.

1*9aStndIOhSL75VnBBQrIAg.png 2017년 기준 서울시 등록 학원 자료(이런 교육이 서울에만 280개가 있었습니다) — by 공공데이터포털


코딩 교육은 너무 많은 분야로 뻗어갈 수 있어서 큰 범주로 분류를 해보았습니다. 서울시 내 코딩 관련 수업을 조사해보니 크게 언플러그드를 통한 관심 증대와 저변 확대 교육, 메이커 코딩 교육, 실제 프로그래밍 스킬을 배우는 프로그래밍 문법/알고리즘 교육으로 진행되고 있습니다.


우리는 코딩을 이렇게 배워야 한다고 생각합니다.


1. 언플러그드 활동이나 블록 코딩을 통해 관심을 갖게 하고 유발한다.

2. 학생이 무언가 만들어 보며 기술을 이해하고, 자신만의 목표에 몰입한다.

3. 목표를 이루기 위해 배워야 할 이론과 핵심 기술을 배운다.


저는 초등학교 때 처음으로 코딩을 접했습니다. 코딩을 접한 이유는 게임을 만들고 싶어서였지만, 초록창 지식인 여러분 중 열에 아홉은 C언어를 배우라고 했습니다. 책방에 갔더니 프로그래머가 되려면 C언어부터 하라고 하셔서 그렇게 코딩을 시작하였습니다.


하지만, 아직도 C언어로 제가 만들고 싶은 게임을 만들지는 못했습니다.


기초부터 시작하는 것은 매우 중요합니다. 그래프 해석학을 배울 때 미적분의 기초적인 개념을 알지 못한다면 이해하기 힘들 것입니다. 그런데, 기초의 중요성을 너무 강조해서 본질을 잊어서는 안 됩니다. 기초를 배우는 이유를 알지 못하면 금방 지루해집니다. 그게 기초 학습의 특징이니까요.


저의 사례를 하나 들어보겠습니다. 요즘 영어회화를 위해 노력하는데, 초등학교 때 배웠던 단어가 생각이 안 나서 고생하고 있습니다. 어릴 때 어렴풋이 들었던 "초등학교 단어부터 아는 것이 중요하다."라는 말을 이제야 이해했습니다. 아마 모든 선생님들도 이런 과정을 겪으셨기에, 대부분의 커리큘럼이 기초부터 시작하게 되었고, 컴퓨터 교육도 마찬가지라고 생각합니다.


어릴 때는 맞으면서도 영어 단어를 외우지 않은 제가 왜 이제 와서 영어 기초 단어에 관심을 갖게 되었을까요? 저도 외국 사람들과 토론하고 싶다는 목표가 생겼고 동기가 부여됐기 때문입니다. 초등학교 때 선생님도 왜 이 단어를 알아야 하는지 분명히 알려주셨습니다만, 그때는 별로 관심이 없었습니다.


결국 기초에 관심을 갖지 못한다면 배우는 것이 소용이 없습니다. 기초에 관심을 가지려면 완성형을 경험해 보아야 합니다.

1*HozNqkitKLD5uxPHMdgU5w.png 우매함의 봉우리를 겪어야 합니다

코딩을 공부하는 사람들은 이 그림을 보면 이유 모를 공감과 함께 웃음을 짓습니다. 정말 저런 것 같기 때문이죠. 나는 절망의 계곡에 빠졌다~ 하면서 장난스럽게 이야기하곤 합니다.


처음부터 선생님의 말씀을 잘 듣고 차근차근 공부한다면 이상적일지도 모릅니다. 그러나 왜 기초부터 배워야 하는지 경험으로 아는 것은 중요합니다. 우매함의 봉우리를 겪어 본 사람은 왜 기초적인 개념이 중요한지 알 수 있고, 어려운 내용을 배울 때도 동기부여가 더 잘 될 것입니다.


이 우매함의 봉우리를 지나 절망의 계곡으로 갔을 때 진정한 학습이 시작될 것입니다.


코딩 교육도 마찬가지여야 합니다. 나만의 결과물을 만들어 보고, 내가 SW로 이루고자 하는 목표를 가질 수 있어야 합니다. 그 목표를 이루기 위해 배워야 할 지식들이 눈에 보이기 시작할 때, 배우지 말라고 해도 알아서 학습하게 될 것입니다.


학생의 흥미를 충족시키며, 우매함의 봉우리를 넘자


일단, 흥미가 생겼다면, 나만의 목표가 생겨 동기가 부여되었다면 코딩을 배울 수 있는 곳은 많습니다. 실제로 개발자들도 매일 달라지는 개발 동향을 배우기 위해 경력에 상관없이 지식을 공유하고 배워갑니다. 그것도 무료로 풀려있는 수많은 지식들과 함께요. 동기 부여만 된다면 초보들도 고급 기술을 배울 수 있는 길은 많습니다. 그렇다면, 그 동기부여와 흥미를 어떻게 유지시킬 수 있을까요?


저희는 메이커 코딩 교육 단계가 조금 더 중요한 단계라고 생각합니다. 여기서 메이커라고 하면 하드웨어가 결합된 무언가만을 말하지 않습니다. 앱인벤터로 앱을 만들거나, 엔트리와 스크래치로 게임을 만들어 보는 것도 포함합니다.

1*fOZl_0PAzXICjk4J04KVnA.png 미세먼지 지도 만들기 — by Splash Inc.


지금까지 학생들이 만들어 보는 것은 한정적인 범위였습니다. 무언가 2% 부족한 느낌을 받을 것입니다. 미세먼지 측정 키트를 만들었다고 해서 학교 교실별 미세먼지 지도를 쉽게 만들 수는 없습니다.


학생들이 일상에서 쓰는 SW를 직접 만들어 보는 경험을 하기 위해서 넘어야 할 기술적 장벽이 있습니다. 메이커 코딩 교육에서 IoT라고 하는 분야를 자주 언급합니다. 그러나 실제로 키트와 앱 또는 웹이 인터넷으로 연동되는 교육은 흔하지 않습니다. 기술적 장벽이 있기 때문입니다.


우리는 학생들이 만든 키트를 응용하여 IoT 서비스를 만들고, 이를 PBL 수업 등에서 사용할 수 있도록 한다면 어떨지 생각해보았습니다. 심지어 새로운 전문가를 데리고 오지 않더라도 말이죠.


모든 학원과 학교에서 이미 계신 선생님들만으로 퀄리티 높은 교육을 할 수 있다면 SW교육이 조금 더 효과적으로 진행될 수 있을 것이라고 생각했습니다.


Screen Shot 2019-07-01 at 12.52.35 PM.png


이미 교육 현장에서 사용되는 수많은 콘셉트의 키트들이 있습니다. 아마 상상하는 것이 무엇이든 검색하면 구할 수 있을 것입니다. 콘셉트가 약간 달라도 머리를 조금만 쓰면 만들고 싶은 기능은 무엇이든 만들 수 있습니다.


전 세계적으로 널리 쓰이는 앱인벤터는 실제 스마트폰에서 작동하는 앱을 만들 수 있습니다. 블록 코딩 형태로 되어 있어서 비전공자 선생님들이나 처음 배우는 학생들도 쉽게 접할 수 있습니다.



우리는 정말 IT를 도구로 이용할 수 있는 교육을 보급하기 위한 첫 번째로 아두이노 키트와 앱인벤터를 서버 개발 없이 연결할 수 있는 서비스 여우비와 여우비를 이용하는 IoT 프로젝트형 교육 키트/콘텐츠를 만들고 있습니다.



우리는 아직 우리가 생각한 가설이 맞는지 테스트하고 있습니다. 교사 분들과 만나며 콘텐츠를 발전해 나가고, 서비스를 살짝 공개하여 반응을 확인하고 있습니다.

교사 연수를 통해 더 많은 선생님들의 현실 반응을 얻고 있는 단계이며, 사회적기업가육성사업에 선정되어 사업을 진행하고 있습니다.


IMG_20190420_143935895.jpg


스플래시는 “만들고 싶은 것을 만들 수 있도록 돕는다."라는 비전에 맞추어 학생들이 상상하는 것을 쉽고 빠르게 만들어 볼 수 있는 세상을 만들어 가고자 합니다.


우리 팀은 많이 부족합니다. 정말 많은 분들의 도움이 필요합니다. 더 많은 학생들이 의미 있는 코딩 교육을 받는 것에 관심 있는 교사, 교육자, 콘텐츠 제작자, 디자이너, 개발자, 기획자 등 어떤 분이든 함께하고자 한다면 연락 주시기 바랍니다.


진짜 의미 있는 교육을 만들어 가고 싶다는 생각을 가지고 계신 분들은 어떤 포지션이든지 연락 주시기 바랍니다. 저희는 모든 방향으로 열려있는 팀이니까요!


긴 글 읽어주셔서 감사합니다.