이곳 삼성전자 투마로 솔루션랩에서는 자신의 아이디어를 아주 쉽게 게임, 동화책, 또는 일상생활에 필요한 발명품으로 만들 수 있다. 모두 소프트웨어 덕분이다. 지난 9월 26일 수학동아 독자 17명이 서울시 서초구에 위치한 삼성전자 사옥에 모여, 소프트웨어로 만드는 새로운 세상을 만났다.
설레는 생애 첫 코딩!
삼성전자 투마로 솔루션랩에 들어서자, 가장 먼저 높은 천장이 눈에 띄었다. 한쪽 벽면을 가득 채운 갖가지 공구와 마음껏 회의할 수 있도록 천장에서부터 내려온 커다란 화이트보드, 복층 구조가 매력적으로 보였다. 공간에는 두세 명씩 앉을 수 있게 된 육각형 책상이 빼곡히 놓여 있었다. 책상 위에는 각자 창의력을 마음껏 펼쳐볼 수 있는 PC와 ‘센서보드’, 수학동아 독자만을 위한 ‘스크래치’ 교재가 하나씩 놓여 있었다.
이번 프로그램은 초·중학생들이 소프트웨어 교육을 직접 체험해 볼 수 있도록 마련한 자리로, 수학동아와 삼성전자가 함께 준비했다. 스크래치와 센서보드를 활용해 간단한 코딩을 배우고 직접 게임을 만들어 보는 과정이었다. 스크래치를 처음 접하는 학생들이 대부분이었기 때문에 가장 기초 단계부터 수업을 진행했다. 학생들은 PC로 스크래치의 기본 기능과 용어에 대해 배우며 수업을 시작했다.
스크래치란?
스크래치는 미국 매사추세츠공대 컴퓨터공학과 미첼 레즈닉 교수가 만든 교육용 소프트웨어로, 이를 이용하면 학생들이 코딩을 쉽게 배울 수 있다. 스크래치는 명령어 블록을 조립해 자신의 생각을 소프트웨어로 구현하도록 설계할 수 있다. 스크래치는 글이나 그림으로 표현하기 어려운 과학 시뮬레이션이나 애니메이션 동화, 게임, 가상 여행 같은 창작 활동을 도와준다.
스크래치 맛보기!
이번 수업의 가장 큰 특징은 ‘센서보드’ 활용이다. 센서보드란 소리, 빛, 버튼, 슬라이드 등 외부의 자극을 감지할 수 있는 보조 장치다. 이 센서를 키보드 대신 입력 장치로 활용할 수 있다. 예를 들어 센서보드를 이용하면 빛에 따라 식물에 물을 줘야 할 때를 알려 주는 알람을 만들 수 있다.
독자들은 이런 센서보드를 가지고 먼저 2~3명이 한 팀을 이뤘다. 그런 다음 각 팀마다 리더를 뽑고, 주어진 미션을 수행하고 결과를 발표하면서 자연스럽게 스크래치 기능을 배웠다.
“처음 만난 친구들과 팀 미션을 하려니까 어색했어요. 하지만 여러 가지 미션을 수행하면서 서로 궁금한 것은 물어보고 도우면서 자연스럽게 협동심을 발휘할 수 있었어요. 가장 기억에 남는 미션은 깜토의 표정을 바꾸는 것이었어요. 스크래치는 누구나 체험할 수 있는 언어라고 하니, 여러분도 다음과 같은 순서로 따라해 보세요.” _심원초 5년 이태연 양
스크래치로 나만의 게임 만들기!
독자들은 ‘우리 팀을 소개할 수 있는 게임 만들기’라는 마지막 미션을 받았다. 시간은 단 50분. 과연 어떤 게임을 만들었을까?
1Team 용과 기사 -김윤지, 박시후, 원예린
간단한 피하기 게임을 만들었습니다. 슬라이드를 이용해 기사를 상하로 움직여 왼쪽에서 오른쪽으로 이동하는 용을 피하는 게임입니다. 용과 기사가 부딪치면 ‘으아아아!’라는 메시지와 함께 게임이 종료됩니다.
2Team 상어를 피하라! -권나영, 김동욱, 김성훈
상어와 물고기를 직접 그려서 게임을 만들었습니다. 게임의 규칙을 정하고 스토리를 기획하는 데 꽤 오랜 시간을 들였습니다. 처음에는 음향 센서를 사용했는데 물고기를 불어서 이동시키는 것이 힘들었습니다. 그래서 마지막 순간에 입력 장치를 슬라이드로 변경했습니다.
3Team 슈팅 게임 -강윤성, 은정민, 이관욱
시작 버튼을 누르면 하늘에 떠있는 적군 비행기에서 빨간 직사각형 모양의 총알이 떨어집니다. 화면 아래에 있는 비행기가 우리 비행기인데, 버튼 센서를 이용하면 총알을 발사할 수 있습니다. 노란 총알로 하늘에 떠 있는 상대편 비행기를 맞추면 점수가 올라가고, 상대 총알을 맞으면 체력지수(hp)가 떨어집니다.
4Team 공 피하기 게임 -권영재, 박준희
날아오는 공을 고양이가 피하는 게임을 만들었습니다. 고양이를 왼쪽과 오른쪽, 위와 아래로 움직여 사방에서 날아오는 공을 피하면 됩니다. 약간의 오류가 있는데 그래도 레벨이 올라갈수록 날아오는 공의 속도가 빨라져 공을 피하기 어려워지게 만들었습니다.
5Team 공 튀기기 -김현서, 이민규, 이태연
초록색 직사각형 막대를 움직여 공이 바닥에 떨어지지 않도록 하는 ‘공 튀기기’ 게임입니다. 음향 센서를 활용했습니다. 게임을 하는 사람이 센서에 바람을 불면 초록색 막대가 좌우로 움직여 공을 튀기는 원리입니다. 공을 10번 튀기면 레벨이 올라가도록 설계했습니다.
6Team 똥 피하기 게임 -배석진, 송태솔, 최석희
전형적인 똥 피하기 게임입니다. 주인공 캐릭터의 체력지수(hp)가 10부터 시작하는데, 버튼을 이용해 캐릭터를 좌우로 움직여 하늘에서 내려오는 똥을 피하면 됩니다. 똥을 10개 이상 피하면 레벨이 올라 똥이 내려오는 속도가 빨라집니다. 체력지수가 바닥이 나면 ‘Game Over’라는 종료 메시지가 뜹니다.
나에게 맞는 소프트웨어 수업 & 역량 찾기 자료 제공 삼성전자 사회봉사단
소프트웨어 교육은 크게 네 가지 역량을 기르는 데 도움이 된다. 가장 첫 번째는 창의력이다. 가장 기초 단계에 해당하는 프로그래밍 언어인 스크래치를 이용하면 자신의 상상을 코딩으로 연결시키고 이를 프로그램으로 구현할 수 있다. 게임이나 말하는 동화책 등을 스스로 기획하는 과정에서 창의력을 기를 수 있다.
두 번째와 세 번째는 문제해결력과 논리력이다. 스크래치를 익히고 난 다음, 프로그래밍 언어가 익숙해지고 더 배우고 싶은 마음이 생긴다면 조금 더 복잡한 프로그래밍 언어인 러플이나 C언어를 배우는 것이 좋다. 명령어를 익히고 사용하면서 컴퓨터가 생각하고 계산하는 원리를 배우고 알고리즘을 자연스럽게 익히면서 문제해결력과 논리력을 기를 수 있다.
마지막으로 컴퓨터뿐만 아니라 휴대전화의 다양한 센서와 LED, 자동차를 움직이는 모터 등 일상생활 속에서 사용하던 소품을 활용해 자신의 아이디어에 맞게 소프트웨어로 재탄생시키는 즐거움을 느낄 수 있다. 어떤 것부터 시작해야할지 모른다면, 삼성전자 ‘주니어 소프트웨어 아카데미’의 지도를 활용해 보자!