놀면서 배우는 프로그래밍? 구글 블록스 프로젝트
맛있는 IT
최근 몇 년 사이 프로그래밍에 대한 관심이 높아지고 있습니다. PC는 물론 스마트폰이 세상을 움직이는 중요한 도구가 되어가고 도구를 채울 새로운 소프트웨어는 아직 무궁무진한 가능성을 가지고 있기 때문이죠. 하지만 그보다 프로그래밍은 생각하는 방법을 가르쳐줍니다. 물론 제가 한 말이 아니라 스티브 잡스가 생전에 한 말입니다.
IT 업계의 선두주자들뿐만 아니라 스포츠 스타, 연예인의 목소리를 들어봐도 프로그래밍의 중요성을 이유를 생각해볼 수 있습니다. 무료로 프로그래밍을 배울 수 있는 code.org의 2013년 홍보 영상인데 이쯤부터 프로그래밍에 대한 관심이 커지기 시작하기도 했습니다. 애플은 지난 세계개발자컨퍼런스인 WWDC16에 호주의 9살 소녀 안비타 비제이를 초대하기도 했었죠. 지금까지 WWDC에 초대된 학생 중 최연소이기도 하지만 직접 개발한 앱이 이미 2개가 넘는 당당한 개발자이기도 합니다.
프로그래밍이 주목 받은 큰 이유는 인력부족입니다. 빠른 속도로 발전해가는 산업에 비해 고급 인력이 많이 필요한데 아직은 부족하다는 게 현실이기 때문입니다. 미국만 하더라도 실리콘밸리의 많은 프로그래머가 외부에서 영입된 사람들입니다. 한국, 인도, 일본, 중국 등 다양한 곳에서 유능한 인력을 보충하고 있죠. 실제로 인도와 아시아권 국가들의 경우 조기 프로그래밍 교육 덕분에 우수한 인재들을 많이 갖추고 자국과 해외에서 높은 수준의 프로그래밍 실력을 보여주고 있습니다. 1세대들의 활약 덕분인지 점점 아이들에 대한 프로그래밍에 관심이 높아지기 시작한 것이죠.
물론 이러한 이유 때문에 아이들에게 프로그래밍이 좋은 것만은 아닙니다. 저도 어릴 적 GW-BASIC, QUICK BASIC, FORTRAN, COBOL, DATABASE, C 등의 언어를 배우며 직접 프로그램을 만들어보기도 했습니다. 요즘은 참 생소한 언어들입니다만 초등학교 시절부터 컴퓨터 언어를 배우고 프로그래밍을 해봤던 것이 지금도 상당히 큰 도움이 되고 있습니다. 플로우차트(Flow Chart)를 그리면서 일의 흐름을 도식화하는 방법을 배웠고 논리적인 생각이 아니면 에러를 만난다는 것도 배웠습니다. 가장 크게 남아있는 것은 문제가 생겼을 때 문제점을 찾아내고 수정(디버깅)하는 과정을 손쉽게 익힐 수 있었다는 점이죠. 물론 작은 것이라도 하나를 완성해보면 성취감과 자신감이 점점 쌓이게 되더군요.
이러한 시점에서 구글이 상당히 재미있는 프로젝트를 발표했습니다. 프로젝트 블록스(Project Bloks)는 아이들이 레고처럼 블럭을 끼워 맞추며 놀면서 코딩의 기본을 배우게 한다는 프로젝트입니다. 블록스라는 이름의 제품들이 보여줬던 모습처럼 손쉽게 연결하고 결과를 직관적으로 확인할 수 있다는 게 장점입니다.
쉽게 놀이로 익숙해지는 구조
프로젝트 블로스의 가장 큰 장점은 역시나 놀이처럼 즐겁게 놀면서 자연스럽게 배울 수 있다는 점입니다. 아이들이 단순한 블록들을 쌓으면서 배우는 것처럼 모듈화된 부품 하나하나를 놀이처럼 붙여가며 익히고 새로운 것을 확장할 수 있는 것입니다.
예를 들어 센서의 작동을 만들어보고 싶다면 위와 같이 직관적인 블록들을 조립하면 됩니다. 온도계의 온도에 따라 전구와 선풍기가 켜지도록 만들 수도 있고 볼륨 조절 모듈을 붙여 마음대로 조절해볼 수도 있는 것이죠.
이 외에도 간단한 흐름을 통해 프로그램의 기본을 익힐 수 있는 코딩도 가능하게 준비하고 있습니다. 단순하지만 프로그래밍의 기본이 되는 플로우차트(flow chart)를 모형으로 만들어놓은 듯 합니다. 여기에 창의적으로 여러 가지 조건이나 환경을 덧붙여가며 코딩을 익혀가게 되는 것이죠.
프로젝트 블록스는 구글과 아이데오, 스탠포드 대학교, 치앙마이 대학교가 2013년부터 준비한 프로젝트로 시각화 되고 체험할 수 있는 '텐저블(tangible)' 프로그래밍을 지향하고 있습니다. 구글은 앞으로 플랫폼을 지원하며 다양한 곳에서 활용할 수 있도록 제공할 예정이라고 합니다.
프로젝트 블록스는 아직까지 완제품의 형태로 판매되는 제품이 아닙니다. 대신 프로젝트 블록스는 홈페이지(바로가기)에서 등록을 받고 있으며 교육관련, 제조사, 연구원 등에 테스트 제품을 보내주고 피드백을 받고 있습니다.
지금보다 앞으로의 발전이 기대
|
사실 프로젝트 블록스를 보면서 가장 먼저 떠오른 제품은 리틀비츠(LittleBits)였습니다. 공교롭게도 2013년 출시된 제품이더군요. 리틀비츠는 모듈화된 부품을 이용해 전기회로의 흐름을 손쉽게 만들고 변형할 수 있는 제품입니다. 투박하지만 전기 제품의 속을 직접 보면서 손쉬운 설명으로 조립이 가능하다는 점이 장점이라고 말할 수 있습니다. 아쉬운 점은 전기회로에 국한되어 프로그랭을 배우기는 쉽지 않다는 점입니다.
애플도 어린이들이 프로그래밍을 손쉽게 배울 수 있도록 스위트트 플레이그라운드를 선보였습니다. 물론, 이 외에도 홉스코치(Hopscotch) 등 어린이용 프로그래밍 앱들이 등장한 가운데, 프로그래밍은 더이상 특별한 분야가 아니라 놀이처럼 점점 발전해가고 있습니다.
구글 블록스는 리틀비츠의 모듈화와 프로그래밍 앱의 확장성 등 장점들을 잘 뽑아 만들어놓은 제품입니다. 그리고 오픈소스 형태를 취하고 있기 때문에 앞으로의 발전을 더 기대해볼 수 있을 듯 합니다. 텐저블 프로그래밍에 관심 있으신 분은 구글 홈페이지를 방문해보시면 좋을 듯 합니다.