‘프로그래밍은 언제부터 배워야 할까?’
“아이들의 학습방법도 크게 바꿀 수 있어”
[SNS 타임즈- GE] 프로그래밍은 언제부터 배워야 할까? 4차산업혁명이 전세계 화두로 제시되고 있는 지금, 4차산업혁명의 근간을 이루는 소프트웨어와 프로그래밍에 대한 관심이 늘고 있다.
프로그래밍을 언제 배워야 하는지에 대해서는 의견이 분분하다. 그렇지만, 가급적 어린시절부터 배우는 것이 좋다는데 많은 전문가 들이 의견을 같이한다. 어릴 때부터 배울 수 있고, 그렇게 해야 한다는 의견이 지배적이라고 한다.
지금 세계는 보이지 않는 실체, 하드웨어를 움직이는 소프트웨어에 무게의 중심이 옮겨가고 있는 추세와 흐름이다. 점점 더 소프트웨어에 대한 중요성이 부각되는 현실에서, 세계적인 일류 기업으로 각광 받고 있는 기업 GE의 ‘프로그래밍의 시기’를 주제로 다룬 글을 소개한다.
- 편집자 주
프로그래밍 언어는 인류의 새로운 공통어입니다. 그런데 시장 조사업체 IDC에 따르면, 세계 노동 인구 약 30억 명 중에서 이 공통어를 사용하는 인구는 2,000만 명에도 미치지 못합니다.
최근 몇 년 동안 첨단 기술 업계에선 사람들에게 매일 1시간씩 프로그래밍을 배울 것을 권장하고 있지요. 미국의 버락 오바마 대통령도 연설에서 "스마트폰만 즐기지 말고, 프로그래밍도 해봅시다!"라고 이야기할 정도였습니다.
에스토니아, 핀란드, 이탈리아, 싱가포르 등에서는 이미 프로그래밍 수업이 교과과정에 포함되었지요. 영국에서도 최근 프로그래밍 수업을 필수 과목으로 지정한 학교가 늘고 있다고 합니다. 그렇다면 아이들은 몇 살부터 프로그래밍을 배워야 하는 걸까요?
▲ 이미지 출처: GE- Corbis.com
많은 전문가들은 프로그래밍은 어릴 때부터 배울 수 있고, 그렇게 해야 한다는 데에 의견을 함께합니다. 어린이는 연령이 낮으면 낮을수록 과학, 기술, 엔지니어링과 수학 과목(STEM) 등에 더 흥미를 보이는 경향이 있습니다. 그런 점에서 프로그래밍은 어린이의 마음으로 익히기에 특히 적합한 언어 가운데 하나입니다. 그럼에도 최근까지는 가장 일반적인 프로그래밍 언어(예를 들어 Python, Java, C ++)를 익히기 위해 기본적인 읽기와 쓰기 능력이 필요했기 때문에 학습 연령이 제한되는 문제가 있었습니다.
아이들을 위한 새로운 프로그래밍 언어가 나왔다
이를 극복하기 위해 읽기나 쓰기와 같은 학습 기초 단계에 있는 어린이들을 위한 새로운 프로그래밍 언어가 만들어졌습니다. 레고의 ‘위두(WeDo)’와 ‘스크래치 주니어(Scratch Jr.)’ 등의 프로그래밍 언어는 5세 어린이를 대상으로 하며, 읽기 쓰기가 아닌 시각적인 도구를 바탕으로 사용하게 되어 있습니다.
이런 언어들에서는 블록화된 코드를 차례로 분류할 수만 있으면 아주 복잡한 프로그래밍 문법을 제외한 루프 코딩도 가능하지요. 이 밖에도 시각적 도구를 사용한 프로그래밍 언어로는 구글의 ‘블록리(Blockly)’와 ‘홉스코치(Hopscotch)’가 있지만 이들은 다소 높은 수준의 독해 능력을 필요로 합니다.
‘스크래치 주니어’의 공동 개발자인 MIT 미디어랩의 미첼 레즈닉 (Mitchel Resnick) 교수는 이 프로그래밍이 이야기 형식을 취하고 있어 아이들이 "자신의 캐릭터를 스토리 속에서 활약하도록 만들 수 있다”고 말합니다.
이 프로그래밍 언어의 소스 코드는 블록 방식의 ‘키보(Kibo)’ 혹은 아이패드로 즐기는 ‘대쉬 앤 도트(Dash and Dot)’와 같이 로봇과 게임의 세계를 폭 넓게 지원하고 있습니다. ‘키보’의 개발자이자 ‘스크래치 주니어’의 공동 개발자인 터프츠대학교(Tufts University)의 마리나 우마시 버스(Marina Umaschi Bers) 교수는, 이러한 도구를 통해 아이들이 프로그래밍의 기본과 수학의 기초 능력, 그리고 건전한 논리성을 익힐 수 있다고 말합니다.
프로그래밍, 과연 학습 방법의 변화로 이어질까
아이들이 프로그래밍 도구를 사용한다는 것은, 단순히 미래사회에 필요한 기술을 갖춘 인재를 양성할 수 있다는 것만을 의미하지 않습니다. 아이들의 학습 방법 또한 이를 통해 크게 변화할 수 있죠.
유아기 컴퓨터 활용의 선구자이며 ‘로고 터틀(Logo Turtle)’의 제작자이기도 한 미첼 레즈닉과 시모어 페퍼트(Seymour Papert) 씨는 “기존 교육은 ‘맞는가 틀리는가’에 초점을 맞추기 때문에, 많은 아이들이 뒷걸음질쳐버립니다"라고 이야기합니다.
반면 컴퓨터 프로그래밍은 버그 식별에 초점을 두지요. "(프로그래밍의 세계에서) 문제는 '맞는지 틀리는지’ 여부가 아니라 ‘그 버그를 수정할 수 있는가 아닌가'의 여부에 있습니다. 지적 생산물에 대한 이러한 관점이 프로그래밍의 세계를 넘어, 더 큰 문화적 차원에서 지식과 그것의 습득에 대한 방법론으로 보편화 된다면, 우리는 실수를 두려워할 필요도 없어지겠죠."
프로그래밍 학습이 어린이의 발달에 미치는 영향에 대해서는 아직 거의 연구가 이루어지지 않았으며, 5세의 아이들에게 프로그래밍을 가르치는 것에 대한 전문가들의 의견도 일치하지 않습니다.
▲ 이미지 출처: GE- Getty Image
심리학자로 <’테크 세대를 양육하기-미디어로 움직이는 세상에 대해 아이들을 준비시키자(Raising Generation Tech: Prepare Your Children for a Media-fueled World>의 저자인 짐 테일러(Jim Taylor) 박사는 프로그래밍 교육이 아닌 다른 활동이 어린이의 발달에 기초가 되는 요소라고 설명합니다.
그는 프로그래밍을 학습시켜야 한다는 강압은 ‘아이들이 기술이라는 기차에 탑승할 때를 놓치게 되고, 그 결과 인생에서 실패하게 될 것이라 두려워하는 부모의 불안 때문에 나타나는 현상’이라고 합니다.
한편, 응용심리학과 아동교육 전문가인 뉴욕대학의 로렌스 발터(Lawrence Balter) 교수는, 프로그래밍 학습이 사회적 환경 속에서 진행되고, 다른 읽기 쓰기나 오픈 엔드 게임 같은 ‘기본적' 활동이 프로그래밍으로 대체되지 않는다고 가정하면, 어릴 때부터 프로그래밍을 배우는 것에 문제가 없다고 보고 있습니다.
또한 <연결 코드-왜 어린이들은 프로그래밍을 배워야 하는가(Connected Code: Why Children Need to Learn Programming>의 저자인 야스민 카파이(Yasmin Kafai) 씨를 비롯한 전문가들은, 활동의 균형이 중요하며 프로그래밍은 실제로 ‘아이패드 사용을 대체하는 일이 될 것’이라는 의견을 제시합니다. 프로그래밍 언어를 공부하면 아이들은 단순히 콘텐츠 소비에서 머물지 않고 컨텐츠를 제작하며 더 적극적인 역할을 할 수 있게 된다는 것이지요.
지금부터가 중요하다
아이들과 프로그래밍에 대한 논의는 계속 진행 중입니다. 버스 교수는 프로그래밍이 점차 전 세계의 학교 교과과정에 통합되는 추세가 진행되어, 어린이들이 주요 교과에서 코딩을 배우게 될 것이라고 예상합니다.
예를 들어, 어릴 적부터 프로그래밍을 할 줄 아는 아이들은 그림책에 나오는 배고픈 애벌레가 새로운 음식을 먹는 동영상을 직접 만들 수도 있겠죠. 수학시간에는 같은 반 친구가 풀어야 하는 과제가 포함된 스토리를 만들 수도 있을 겁니다. 사회 과목에서는 특정 국가의 농작물을 클릭하면 국기가 표시되는 양방향 지도를 디자인할 수 있습니다.
코드카데미(Codecademy)와 같은 온라인 기관에서는 이미 다양한 프로그래밍 언어를 가르치고 있습니다. 또한 구글과 GE에서도 어린이들이 스크래치 주니어 같은 프로그래밍 언어를 배울 수 있도록 교재와 가정 학습 프로그램을 제공하고 있습니다.
다른 많은 언어들이 그러했듯이, 프로그래밍 언어도 계속 진화할 것입니다. 시간이 흐르고 컴퓨터가 더 똑똑해질수록, 프로그래밍 언어는 더 직관적으로 변해가겠죠. 블록리(Blockly)의 개발자 한 사람이 와이어드(Wired)에서 이렇게 밝힌 바 있습니다. “모든 세대가 전보다 높은 수준의 인터페이스를 사용하게 될 겁니다. 나중엔 완전한 자연 언어로 컴퓨터에 지시를 내릴 수 있는 날이 오겠죠." 그런 시대가 오면 아이들은 기저귀를 떼기도 전에 프로그래밍의 세계에 발을 딛게 될지도 모릅니다.
- GE 코리아
- Copyright, SNS 타임즈 www.snstimes.kr