본 도서는 미국 MIT 미디어랩에서 개발되어 전 세계 많은 소프트웨어 교육 현장에서 프로그래밍 도구로 사용되고 있는 스크래치(Scratch)에 대하여 필자가 직접 수업 현장을 누비며 얻은 다양한 경험과 노하우를 바탕으로 집필한 도서이다.
스크래치는 훌륭한 프로그래밍 학습 도구이다. 단순한 조작을 통해 다양한 프로그램을 만들 수 있다. 기본적인 수준의 프로그램을 완성하는 데 있어서는 많은 양의 학습을 요구하지 않는다. 단순히 블록의 기본 기능을 익히고, 블록을 결합하여 원하는 기능을 완성하면 된다. 또한 누구나 쉽게 배우고 활용할 수 있는 것이 가장 큰 장점이다. 이러한 장점이 부각되어 소프트웨어 교육의 입문과정으로 스크래치(Scratch)를 선택하는 것은 이제 하나의 공식으로 자리잡은 듯하다. 스크래치를 배우려는 학생은 물론이고 학교나 단체, 기업 등에서도 관련 교육에 대한 문의가 쇄도하고, 관련도서의 출간도 점차 증가하고 있다.
하지만 기본 수준을 조금만 벗어나면 이야기는 달라진다. 복잡한 기능을 구현하기 위해서는 더 많은 블록을 활용해야 한다. 여러 스프라이트가 오류 없이 맞물리며 정확하게 작동하기 위해서는 세부적인 블록의 기능을 알고 있어야 한다. 결국 블록의 문제일 것이다. 블록을 얼마나 잘 알고 그것을 어떻게 활용하는지의 여부가 기본 수준을 넘어서는 핵심 요인이다. 실력 향상을 위해 다시 블록을 살피는 것으로 돌아가야 한다.
‘스크래치 블록사전’은 스크래치 학습자의 실력 향상을 위해 집필되었다. 스크래치의 기본적인 원리와 활용법에 익숙해진 학습자가 다음 단계로 도약하는 데 있어서 도움을 주기 위한 것이다. 프로젝트 완성 위주로 구성된 기존의 학습서로는 부족한 블록 영역의 학습에 초점을 맞추었다.
이 책은 개별 블록의 세부적인 특성과 활용예시, 오류사항 등을 다룹니다. 하나의 블록을 단순히 하나의 기능과 연결시키는 것은 위험한다. 특정 블록이 가지고 있는 세부사항이나 다른 블록과의 연관관계 등을 놓칠 수 있기 때문이다. 또한 동일한 결과를 만들기 위해 사용할 수 있는 방법이 여러 가지 존재할 수도 있다. 시중의 스크래치 기본서라 불리는 책들은 다루지 않는 부분이다. 하지만 스크래치를 조금이라도 다루어본 사람이라면 공통적으로 느꼈던 어려움이고 답답함이다. 이러한 고민을 해소하는 데 있어 ‘스크래치 블록사전’이 조금이나마 도움을 드릴 수 있을 것이다.