preLoad Image preLoad Image
검색 바로가기
주메뉴 바로가기
주요 기사 바로가기
다른 기사, 광고영역 바로가기
중앙일보 사이트맵 바로가기
닫기
닫기

[커버스토리] 블록 쌓듯 명령어 연결하자 상상 속 프로그램이 현실로



올해 초등학교 3학년은 앞으로 5·6학년이 되면 학교에서 새로운 것을 배우게 됩니다. 소프트웨어 교육이 그것입니다. 중학생이 되는 2018년엔 소프트웨어 과목도 생긴다고 합니다. 소프트웨어 교육이란 프로그램을 짜는 코딩 교육을 말합니다. 왜 코딩을 배워야 할까요? 버락 오바마 미국 대통령은 미국 학생들에게 “게임만 하지 말고, 직접 만들어보세요”라고 말했죠. 그렇다면 게임을 직접 만들자는 게 교육의 목적인가요? 꼭 그렇지는 않습니다. 정확하게는 코딩을 배워 이를 도구처럼 잘 활용하자는 것입니다. 어디다 쓰냐고요? 소중은 앞으로 코딩을 활용해 할 수 있는 여러 가지 흥미로운 것들을 여러분께 소개하려 합니다. 첫 번째 시간은 컴퓨터와 대화할 수 있는 방법, 스크래치(Scratch)입니다.

코딩으로 컴퓨터랑 놀자 ① - 교육용 컴퓨터 언어, 스크래치





스크래치를 이용해 이야기가 있는 생일카드를 만들어낸 김동건군.


삼성전자 소프트웨어센터 SE팀 조형헌(37) 책임연구원과 제주대 교대부속초 4학년 김동건군이 코딩 대결을 벌였다. 대결 미션은 간단한 애니메이션과 음악을 활용해 생일카드를 만드는 것. 김군은 생일 축하노래와 사진을 활용해 이야기가 있는 생일카드를 만들었다. 조 책임연구원은 마우스를 움직이면 생일 축하노래가 흐르고 순차적으로 축하메시지가 나오는 생일카드를 만들었다. 노래가 나오는 타이밍과 축하메시지가 나오는 순서 등 섬세함에 있어서는 조 책임연구원의 카드가 좋았지만 구성면에서는 사진과 애니메이션을 활용한 김군의 카드도 뒤지지 않았다. 코딩을 배운지 이제 3년차인 김군은 어떻게 조 책임연구원과 비등한 생일카드를 만들 수 있었던 걸까. 그 답은 컴퓨터 언어에 있다.



김군이 생일카드를 만들기 위해 사용한 언어는 스크래치다. 누구나 쉽게 코딩을 할 수 있도록 만든 교육용 컴퓨터 언어다. 2007년 1월 미국의 매사추세츠 공과대학(MIT) 미디어 랩 레스닉 교수팀이 개발했다. 복잡한 프로그래밍 언어를 입력하는 대신 명령어가 새겨진 블록을 마우스로 끌어와 레고 블록처럼 쌓는 방식으로 코딩하기 때문에 초보자들도 쉽게 배울 수 있다. 또 동작ㆍ제어ㆍ형태ㆍ소리 등 8개의 그룹, 100여 개의 블록을 가지고 조합하는 것으로 게임은 물론이고 애니메이션, 미디어 아트까지 다양한 프로그램을 만들 수 있어 인기가 높다.



HTML5로 만든 생일카드를 조형헌 책임연구원이 자신의 컴퓨터 화면에 띄우고 있다.


교육용으로 만들어졌지만 성능과 기능면에서도 전문 컴퓨터 언어 못지않다. 전 세계 컴퓨터 언어 사용 순위를 알려주는 TIOBE(www.tiobe.com)에 따르면 스크래치는 교육용 컴퓨터 언어임에도 불구하고 50위 밖으로 밀려난 적이 없다. 2013년 5월 웹 브라우저에서 직접 프로그램을 제작하고 제작한 프로그램을 전 세계 사람들과 공유할 수 있는 인터넷 기반의 2.0 버전을 발표한 이후에는 꾸준히 순위가 상승하는 중이다. 무엇보다 스크래치의 가장 큰 장점은 무료라는 점이다. 사이트(http://scratch.mit.edu)에 접속해 가입만 하면 된다. 조 책임연구원은 “스크래치는 영어와 수학 때문에 복잡해 보이는 코딩을 직감적으로 쉽게 접근할 수 있어 프로그래밍 세계에 입문하기 좋은 컴퓨터 언어”라며 “영상ㆍ애니메이션ㆍ음악 등 다양한 미디어를 별도의 코딩 작업 없이 바로 사용할 수 있어 새로운 것을 만들기 공유하기 좋아하는 아이들이 훙미롭게 코딩을 배울 수 있다”고 설명했다.



스크래치 활용한 코딩 교육 현장 가보니



서울 영훈초에서 진행하는 `삼성전자 주니어 소프트웨어 아카데미` 수업 모습. 초등학교 4~6학년 학생 20여 명이 매주 코딩 교육을 받으며 프로그래밍의 기초를 쌓고 있다.


지난 16일 서울 영훈초등학교에서 열리고 있는 방과후 코딩 교실을 찾아갔다. 수업의 정식 명칭은 ‘삼성전자 주니어 소프트웨어 아카데미’. 지난 3월부터 시작해 매주 화요일 오후 3시부터 2시간 동안 이뤄지는 교육이다. 초등학생에게 다소 긴 시간이지만 학생들이 각자 컴퓨터를 이용해 수업에 참여하기 때문에 집중도가 높다.



“오늘은 명령어를 컴퓨터에 입력해 화면 속 집 조명의 밝기를 조절하고 소리를 제어하는 활동을 하겠습니다.”



영훈초 김봉화(36) 교사가 컴퓨터를 켜기 전 학생들에게 종이 한 장씩 나눠줬다.



“수업에 앞서 각자 종이비행기 하나씩을 만들 거예요.”



수업이 시작되면 바로 프로그래밍 교육을 하는 것이 아니라, 두뇌회전을 위한 간단한 활동을 20분 동안 한다. 종이비행기 멀리 날리기, 카드 높이 쌓기 등의 활동이다. 코딩은 창의적인 생각을 바탕으로 하기 때문이다.







본격적인 수업이 시작되자 학생들의 컴퓨터 화면에 블록 쌓기 형태의 도구들이 나타났다. 스크래치의 실행 화면이다. 학생들은 김 교사의 설명에 따라 코딩을 시작했다. 빛ㆍ소리ㆍ저항 등의 6가지 센서가 달린 ‘센서보드’를 컴퓨터에 연결한 후, 스크래치로 레고 블록처럼 생긴 명령어를 순서대로 입력하는 과정이다. 약 1시간에 걸친 코딩이 끝나고 테스트가 시작됐다. 학생들은 일제히 탄성을 질렀다. 센서보드를 손가락으로 만지자 모니터 속 집 조명이 변했기 때문이다. 스크래치로 입력한 변수의 값이 센서보드와 연결돼 조명의 밝기를 조절할 수 있는 원리다. 김 교사는 “스크래치는 아이들이 좋아하는 레고 블록을 응용해 코딩하기 때문에 변수·반복·조건문 같은 성인들도 이해하기 어려운 개념에 쉽게 접근할 수 있다”며 “행동에 순서를 붙이고 조건을 넣는 과정을 익히다 보면 논리적으로 생각하는 법도 알게 된다”고 설명했다.



창의력, 논리적 사고를 키우는 코딩 교육



한 학생이 컴퓨터에 센서보드를 연결해 성능을 시험하고 있다.
최근까지 학교 컴퓨터 수업은 대부분 워드 프로그램을 배우는 ICT(정보통신기술) 활용 교육 위주로 진행됐다. 이런 교육은 발표 자료나 보고서를 만드는데에는 도움이 되지만 창의적으로 사고할 수 있는 능력을 키우기에는 역부족이다. 새로운 창조물을 만드는 코딩 교육은 대부분 정보통신분야 영재들만을 대상으로 했다. 하지만 스크래치 같은 누구나 쉽게 배울 수 있는 교육용 컴퓨터 언어가 등장하면서 수학·과학·국어와 같은 교과과목을 연계한 수업부터 나만의 게임을 만들어보는 수업까지 다채로운 방식의 코딩교육이 일선에서 이뤄지고 있다.



스크래치와 게임튜브를 연결해 코딩교육을 하는 대디스랩의 송영광 대표는 “코딩 수업은 상상만 하는 수업이 아니다. 상상한 것을 직접 만드는 수업이다. 아이들은 상상을 현실화시키면서 상상했던 것과 무엇이 다른지 또 문제가 무엇인지를 깨닫고 해결하며 재창조한다”고 말했다. 제주대 교대 김종훈 교수는 “컴퓨터 교육의 핵심은 알고리즘이다. 알고리즘은 문제 해결 절차를 말하는데, 코딩을 하다 발생하는 무수한 문제들을 해결하면서 아이들은 자연스럽게 논리적으로 사고하고 창의적인 방법으로 문제를 해결하게 된다"고 설명했다. 애플의 창업자 스티브 잡스도 생전에 “모든 국민은 코딩을 배워야 한다. 코딩은 생각하는 법을 가르쳐주기 때문이다”라고 말했다.





코딩 대결 동영상 보려면
글=황정옥·김록환 기자 사진=장진영·우상조 기자
AD
온라인 구독신청 지면 구독신청

태그

PHOTO & VIDEO

shpping&life

많이 본 기사

댓글 많은 기사