년초 포스팅에서 계획 했었던 어린이를 위한 쉬운 프로그래밍 강좌를 해보려고 합니다. 이런 생각을 한 이유는 제가 어린이 교육에 관심이 깊다거나 하는 거창한 이유가 아닌, 일차적으로 제 어린 아들을 위해서 입니다.

제 아이는 프로그래밍에 관심을 많이 가지고 있습니다. 프로그래밍이라기 보다는 자신이 그린 캐릭터들이 움직이는 것에 관심이 많습니다. 목표는 본인 스스로 게임을 만들어 보는 것입니다. 그동안 플래쉬와 스퀵, 스크래치 등의 툴들을 사용했지만 너무 어렵고 영어라는 제약을 뛰어 넘지 못하고  늘 어느선에 머물렀습니다.

사용자 삽입 이미지
좌측은 제 아들이 스크래치로 최근에 만든 것입니다. 스테이지, 레벨업, 무기 변경, 난이도 변경 등을 하고 싶어 하지만 구현하지 못하고 있습니다.  실제로 동작하는 모습은 스크래치 프로젝트 페이지에서 보실 수 있습니다.
 
초등학교 3학년 아이가 혼자서 만들기엔 어렵고 한글로 된 참조할 자료가 없기 때문에 더 이상 진행을 못하고 있는 것 같습니다.


그래서 일차적으로 제 아들을 위하여 그 다음은 저와 비슷한 관심을 가지고 있는 부모님들과 어린이들을 위해 강좌를 해보려고 합니다. 초등학교 4학년 이상이면 따라해 볼 수 있도록 가능하면 쉽게 해보려고 합니다.

0. 어린이와 프로그래밍


사용자 삽입 이미지
아이들은 일반 언어도 그렇고 어른들과 다르게 흥미있는 지식은 물 묻은 스폰지처럼 빠르게 흡수합니다. 그래서 오래전부터 제 아이에게 어렸을 때에 프로그래밍을 가르쳐 보려고 생각하고 있었습니다.

가르치려는 이유는 아이가 성인이 되어서 프로그래머가 되기를 바래서가 아니라 아래와 같은 효과가 있을 것 같기 때문입니다.

(사진출처: 스퀵랜드)

1) 창의력과 논리력이 향상됩니다.
프로그래밍은 무에서 유를 만들어 가는 과정입니다. 레고와 같은 유형의 교육용 장난감들도 이런 역할을 수행 합니다. 하지만 컴퓨터는 양이나 범위, 방법에 관해 어떠한 제한도 없이 생각하는 모든 것을 구현할 수 있습니다. 게다가 무료입니다.

사용자 삽입 이미지
아이들은 프로그래밍이라는 딱딱하고 어려운 작업이 아니라 레고를 가지고 놀듯이 명령어들을 조합하여 원하는 결과물을 다양하게 만들어 낼 수 있습니다. 실제 레고사에서는 스크래치에서 사용할 수 있는 좌측과 같은 이미지의 레고 이미지 팩을 기증(?)하였습니다.

학생 본인 또는 부모님이나 선생님들의 작은 노력만 있다면, 생각한 대로 가지고 놀 수 있는 가장 값어치 있는 장난감을 손에 넣을 수 있습니다.

2) 깊은 성취감을 느낄 수 있습니다.
개발자들이 가장 기쁨을 느끼는 순간이 코드가 컴파일되고 생각한대로 실행되는 모습을 확인할 때 입니다. 이는 아이들도 마찬가지로 여러 명령어 조합을 맞춰 보고 제대로 실행되었을 때 컴퓨터로 본인 스스로 무엇인가를 만들었다는데 대해서 깊은 성취감과 자신감을 가질 수 있습니다.

3) 컴퓨터의 생산적인 사용방법을 습득할 수 있습니다.
대부분 아이들이 컴퓨터를 게임기로 사용합니다. 오락적인 요소도 중요하지만 컴퓨터로 원하는 일을 할 수가 있고 이를 위한 도구로서 이용할 수 있게 만듭니다.

게임을 하거나 재미있는 글과 사진, 동영상을 보기 위한 소비적인 이용뿐만 아니라 스케치로 원하는 결과물을 만들어 내는 생산적인 이용을 가능하게 합니다.

4) 자발적으로 영어와 친숙해 질 수 있습니다.
홈페이지와 스크래치의 모든 명령은 영어로 되어 있습니다. 사용되는 영어와 명령어 수가 많지 않기 때문에 쉽게 외우고 사용할 수 있습니다.

뒤에서 자세히 설명하겠지만 스크래치 홈페이지에서 프로젝트를 올리고 평가하고 공유하며, 또한 놀면서 외국의 아이들과 의견을 교환할 수 있습니다. 의사소통을 위해 자발적으로 기분좋게(?) 영어를 배운다면 아이에게도 즐거운 일일 것 같습니다.

5) 프로그래밍 기본개념 습득
스크래치는 아이들의 놀이/학습뿐만 아니라, 프로그래밍을 처음 접하는 성인들도 프로그래밍에 대한 기초와 개념을 쉽게 가지게 해줄 수 있는 툴입니다. 프로그래밍에 대한 기본 지식을 습득하면 나중에 직접 타이핑을 해야 하는 프로그래밍 언어와 툴들도 쉽게 적응할 수가 있습니다.

1. 스크래치란?

사용자 삽입 이미지
스크래치는 스퀵을 기반으로 MIT Media Lab에서 개발한 8세 이상의 어린이들의 개발을 위한 툴입니다. 8세라는 것은 스크래치 사이트에 나와있는 내용이며 영어권 국가의 기준입니다.

"우리나라와 같이 비영어권 국가에서는 초등학교 저학년의 경우에는 부모님의 도움이 필요할 것 입니다. 스크래치에서 사용하는 영어는 간단하고 얼마 되지 않으니 5/6학년 정도의 고학년 어린이들은 이 블로그의 내용만 보고 따라할 수 있을 것으로 생각됩니다."

스크래치는 위 로고의 아래  내용처럼 생각한 내용을 애니메이션, 게임, 음악 등으로 쉽게 표현할 수 있고 웹을 통해서 다른 사람들과 공유할 수 있게 해줍니다. 스크래치 프로젝트는 스크래치에서 바로 홈페이지로 업로드할 수 있으며, 개인의 홈페이지나 블로그에서도 올릴 수 있습니다.

스크래치의 결과물은 자바 애플릿을 이용하여 웹상에서 바로 실행될 수 있습니다. 윈도우즈일 경우에는 JRE가 설치되어 있어야 합니다. JRE가 없으면 이곳에서 설치할 수 있습니다.

2006년 3월을 시작된 스크래치 홈페이지는 현재 회원수가 6만명이 넘을 정도로 빠르게 사용자가 늘어 가고 있습니다. 제가 본 무료로 배포되는 교육용 프로그램 중에서는 가장 사용하기가 쉽고 완성도 높은 것으로 생각됩니다.

사용자 삽입 이미지
스크래치는 스퀵으로 작성되었습니다. 스퀵으로 만든 결과물 중에 가장 훌륭한 것이 아닐까 생각됩니다. 스크래치의 소스는 홈페이지에 공개되어 있으며 이곳에서 다운로드 받으실 수 있습니다.
스퀵은 스몰토크-80으로 작성되었으며, 스퀵 그 자체에 스몰토크-80과 기본 라이브러리를 가지고 있는 개발툴입니다.


2. 회원가입 및 설치

1) 회원 가입
스크래치를 다운로드 받기 위해서는 스크래치 홈페이지를 방문해야 합니다. (사이트는 영어, 독일어, 프랑스어를 지원합니다.) 스크래치를 다운로드 받기에 앞서 회원가입을 먼저 합니다.

사용자 삽입 이미지
회원가입은 좌측과 같이 이메일을 제외하고는 중요한 개인정보를 요구하지 않습니다.

스크래치를 적극적으로 활용하고, 다양한 활동을 위해서는 가입을 하시는 것이 좋습니다.



사용자 삽입 이미지
회원가입을 하시면 포럼에 참여할 수 있으며 스크래치로 만든 프로젝트를 해당 사이트에 등록할 수 있습니다.

만든 프로젝트를 등록하면 좌측과 같이 다른 이용자들과 공유하며 다양한 평가와 의견을 받을 수 있습니다.

마찬가지로 다른 사람이 올린 프로젝트들에 대하여 평가하고 즐겨찾기로 등록할 수 있습니다. 프로젝트를 다운로드 받으면 다른 사람들이 구현한 노하우를 쉽게 참조할 수 있습니다.





2) 다운로드 및 설치
현재 버전은 1.2.1입니다. Mac OS X와 Windows용이 있습니다. (Linux 버전은 현재 작업중이라고 합니다.) 사용하는 OS 버전별로 다운로드를 받으시면 됩니다. 최소 설치 사양은 아래와 같습니다.
  • 해상도 :  1024 x 768이상, 16비트 컬러 이상
  • OS : MS 윈도우 98 이상, 맥 OS X 10.3 이상
  • 하드디스크 : 120MB 이상

맥에서는 압축만 풀고 바로 사용할 수 있습니다. 윈도우에서는 인스톨 버젼(exe)를 실행하시면 됩니다.

현재 스크래치에서 지원하는 언어는 아래와 같습니다. 생소한 언어들도 있는데 한국 뿐만 아니라 중국, 일본도 없습니다. 로컬화는 매우 쉽습니다. 하지만 이전에 한글화를 시도해 본적이 있었는데 깨져서 나왔습니다. 아쉽지만 1byte 코드를 사용할 수 없는 언어들은 표시할 수가 없는 것 같습니다. 그래서 한글과 같은 아시아권 언어가 없는 것 같습니다.

Català, Cesky, Dansk, Deutsch, English, Español, Français, Galego, Italiano, Magyar, Nederlands, Norsk, Polski, Português, Româna, Slovencina, Suomi, Svenska

이제 스크래치 아이콘을 클릭하여 실행하여 봅니다. 아래와 같이 실행되면 스크래치를 사용하여 작업을 할 준비가 완료된 것입니다.

사용자 삽입 이미지


3. 기타 유용한 정보

1) Board
사용자 삽입 이미지
PC와 연결해서 입력을 받아 스크래치로 전달하는 보드입니다. 슬라이드와 버튼이 있어 스크래치로 만든 게임등의 프로젝트에서 입력 받을 수 있습니다.



이외에도 라이트와 사운드 센서가 있고, 전기저항을 감지할 수 있는 악어클립으로 사용자가 입력을 커스터마이징 할 수 있습니다.  

PC와의 연결은 USB를 이용하며, 맥 OS X와 윈도우 드라이버를 제공합니다. 가격은 25달러(US)이며, 운송비로 미국내에서는 5달러, 그 외의 나라들은 20달러가 추가 됩니다. 우리나라에서 주문을 하려면 45달러가 듭니다. 

2) Card
사용자 삽입 이미지
PDF로 되어 있는 스크래치의 중요 동작들에 대한 카드입니다. 앞면에는 동작의 예가 있으며 뒷면에는 구현방법에 대한 설명이 있습니다.

아래와 같이 칼라 프린트로 출력한 후에 오려서 코팅을 해주면 아이들이 오래도록 잘 사용할 수 있을 것 같습니다.

사용자 삽입 이미지

3) 참조할 내용
사용자 삽입 이미지
홈페이지의 support메뉴를 클릭하시면 스크래치를 사용하는데 도움이 되는 다양한 자료들을 보실 수 있습니다.

이곳에서 레퍼런스 가이드를 다운로드 받거나 동영상 강좌를 보실 수 있습니다. 이외에도 다양한 자료들이 있으니 방문하셔서 확인해 보시기 바랍니다.





마지막으로 제가 이전에 작성한 관련 포스팅들을 링크하고 마치겠습니다. 다음 장부터 본격적인 스크래치의 사용법에 대해서 알아보겠습니다.
AND