초보자를 위한 스크래치 시작하는 방법, 블록으로 코딩 감 잡기

처음 스크래치를 만지면 좋은 이유
얼마 전 초등학생 조카가 코딩 학원 숙제를 한다며 노트북을 켜놓고 끙끙대는 걸 봤는데, 화면에 알록달록한 블록이 쌓여 있더라고요. 알고 보니 스크래치였습니다. 예전에는 코딩이라고 하면 영어 명령어부터 떠올라서 괜히 어렵게 느껴졌는데, 스크래치는 블록을 끼워 맞추는 방식이라 첫인상이 꽤 가볍습니다.
스크래치는 미국 MIT 미디어랩에서 만든 교육용 프로그래밍 도구로 잘 알려져 있습니다. 코드를 직접 타이핑하는 대신 ‘10만큼 움직이기’, ‘깃발을 클릭했을 때’, ‘소리 재생하기’ 같은 블록을 연결해서 캐릭터를 움직입니다. 그래서 초등학생도 시작하기 좋고, 코딩을 완전히 처음 접하는 성인에게도 부담이 덜합니다.
특히 좋은 점은 결과가 바로 보인다는 겁니다. 블록 하나를 바꾸면 고양이 캐릭터가 움직이는 거리나 방향이 즉시 달라집니다. 문법 오류 때문에 시작부터 막히는 일이 적어서, 코딩의 첫 단계인 ‘내가 시킨 대로 컴퓨터가 움직인다’는 감각을 익히기에 좋습니다.
스크래치 시작하려면 이렇게 준비하면 됩니다
스크래치를 시작할 때 거창한 장비가 필요하진 않습니다. 인터넷이 되는 컴퓨터나 태블릿이면 충분합니다. 다만 화면을 보고 블록을 끌어다 놓는 작업이 많아서, 처음에는 노트북이나 데스크톱처럼 화면이 넓은 기기가 편합니다.
- 컴퓨터나 태블릿 준비하기
- 스크래치 계정 만들기 또는 바로 만들기 모드 사용하기
- 기본 캐릭터와 무대 화면 익히기
- 움직임, 이벤트, 제어 블록부터 눌러보기
계정을 만들면 작품을 저장하고 나중에 이어서 작업하기 좋습니다. 아이가 사용한다면 보호자와 함께 가입 정보를 확인하는 편이 안전합니다. 공개 기능도 있기 때문에 작품을 다른 사람에게 보여줄지, 혼자 저장만 할지도 미리 이야기해두면 좋고요.
처음부터 멋진 게임을 만들려고 하면 금방 지칠 수 있습니다. 저는 첫 작품으로 ‘고양이가 오른쪽으로 걸어가며 야옹 소리를 내는 장면’ 정도가 딱 좋다고 봅니다. 블록 3~5개만 써도 움직임, 이벤트, 소리의 개념을 한 번에 맛볼 수 있거든요.
첫 작품은 아주 작게 만드는 게 좋습니다
스크래치에서 가장 먼저 익힐 만한 흐름은 이벤트입니다. 예를 들어 초록 깃발을 클릭했을 때 캐릭터가 움직이도록 만드는 식입니다. 이 구조를 알면 ‘무언가가 일어나면, 이런 행동을 한다’는 코딩의 기본 흐름이 자연스럽게 잡힙니다.
간단한 움직임 만들기
처음에는 캐릭터를 10만큼 움직이게 해보고, 숫자를 50이나 100으로 바꿔보면 차이가 바로 보입니다. 숫자가 커질수록 더 멀리 움직인다는 걸 눈으로 확인하게 되죠. 이 과정에서 변수나 좌표라는 말은 몰라도 됩니다. 먼저 감각이 생기는 게 중요합니다.
반복 블록 써보기
그다음에는 ‘반복하기’ 블록을 넣어보면 좋습니다. 같은 움직임을 10번 반복하면 캐릭터가 쭉 걸어가는 것처럼 보입니다. 사실 실제 프로그램도 비슷합니다. 사람이 일일이 10번 명령하지 않고, 컴퓨터에게 반복을 맡기는 거죠.
예를 들어 ‘10만큼 움직이기’를 10번 반복하면 총 100만큼 움직입니다. 이렇게 숫자로 결과를 예상해보면 수학과도 자연스럽게 연결됩니다. 아이들이 스크래치를 하면서 좌표, 각도, 조건을 은근히 익히는 이유가 여기 있습니다.
게임처럼 만들면 훨씬 오래 갑니다
스크래치가 재미있는 건 단순한 애니메이션에서 게임으로 넘어가기 쉽다는 점입니다. 방향키를 누르면 캐릭터가 움직이고, 장애물에 닿으면 처음 위치로 돌아가고, 점수를 1점씩 올리는 방식만 넣어도 꽤 그럴듯한 미니 게임이 됩니다.
초보자에게 추천하는 첫 게임은 ‘피하기 게임’입니다. 주인공은 마우스나 방향키로 움직이고, 장애물은 위에서 아래로 내려오게 만듭니다. 장애물에 닿으면 게임이 멈추거나 점수가 줄어들게 하면 됩니다. 구성은 단순하지만 이벤트, 조건, 반복, 변수까지 자연스럽게 들어갑니다.
- 방향키로 캐릭터 움직이기
- 장애물이 계속 내려오게 만들기
- 닿았는지 확인하는 조건 넣기
- 점수 변수를 만들어 숫자 올리기
여기서 점수 변수는 꽤 중요한 개념입니다. 게임 화면의 점수가 0에서 1, 2, 3으로 바뀌는 걸 보면 ‘값이 변한다’는 추상적인 개념이 훨씬 쉽게 다가옵니다. 나중에 파이썬이나 자바스크립트를 배울 때도 변수라는 말을 덜 낯설게 느끼게 됩니다.
막힐 때는 완성작을 따라 해도 괜찮습니다
처음 배우는 단계에서는 남이 만든 작품을 따라 하는 것도 꽤 좋은 방법입니다. 스크래치에는 다른 사람이 공유한 작품을 열어보고, 어떤 블록으로 만들어졌는지 확인할 수 있는 기능이 있습니다. 완성된 결과를 먼저 보고 안쪽 구조를 보는 방식이라 이해가 빠릅니다.
다만 그대로 베끼기만 하면 금방 흥미가 떨어집니다. 캐릭터를 바꾸거나, 배경을 바꾸거나, 속도를 다르게 조절해보면 내 작품이라는 느낌이 생깁니다. 예를 들어 같은 피하기 게임이라도 우주 배경으로 만들면 운석 피하기가 되고, 바닷속 배경으로 만들면 물방울 피하기가 됩니다.
아이와 함께 한다면 “왜 여기서 멈췄을까?” “속도를 2배로 하면 어떻게 될까?”처럼 가볍게 물어보는 것도 좋습니다. 답을 바로 알려주는 것보다, 블록을 하나씩 눌러보면서 원인을 찾는 시간이 더 오래 기억에 남습니다.
스크래치 다음 단계는 자연스럽게 고르면 됩니다
스크래치에 익숙해지면 텍스트 코딩으로 넘어가야 하는지 고민하는 분들이 많습니다. 솔직히 서두를 필요는 없습니다. 스크래치로도 조건문, 반복문, 변수, 이벤트 같은 핵심 개념을 충분히 다룰 수 있습니다. 오히려 이 개념들이 익숙해진 뒤에 파이썬이나 자바스크립트를 보면 훨씬 덜 막막합니다.
기준은 간단합니다. 아이가 스스로 게임 규칙을 바꾸고 싶어 하거나, 캐릭터 여러 개를 동시에 움직이고 싶어 하거나, 점수와 레벨을 직접 설계하려 한다면 이미 꽤 좋은 단계에 온 겁니다. 그때부터는 조금씩 텍스트 코딩을 곁들여도 괜찮습니다.
스크래치는 코딩을 시험 문제처럼 외우게 만드는 도구라기보다, 내가 생각한 장면을 화면 위에서 움직여보는 놀이터에 가깝습니다. 처음부터 잘 만들 필요는 없습니다. 블록 하나를 붙였더니 캐릭터가 움직이고, 숫자 하나를 바꿨더니 결과가 달라지는 경험이 쌓이면 그 자체로 충분히 좋은 출발입니다.
