코딩의 귀환. 야스민 B.카파이 & 퀸 버크.p268
아이들이 프로그래밍을 배워야 하는 이유
모든 교육에는 철학이 있어야 하고 그것을 세우려면 먼저 그 정체를 바로 알아야 합니다. 아이들이 프로그래밍을 배워야 하는 이유가 무엇이라 생각하십니까? 창의력이라고 대답하신다면 1도 모르시는 겁니다. 여기 그 정체가 있습니다.
#코딩의 귀환
컴퓨팅적 사고 computational thinking
“시스템을 설계하고, 문제를 해결하고, 인간의 행동을 이해하는 방법(행위에 관한 모든 측면)”
구글이 개설한 웹사이트, ‘컴퓨팅적 사고 탐험’
아마 가장 놀라운 대목은 컴퓨터 없이 컴퓨팅적 사고를 가르치겠다는 결정이었다.
자넷 윙은 사람들이 자바Java로 프로그램을 제작하는 일과 컴퓨팅적 사고를 동일시하지 않기를 바랬다.
컴퓨터를 이용한 참여로 확대.
정보와 아이디어를 공유하기 위해 창의적이고 비판적인 네트워크를 발전시키는 모습은 더욱 협력적이고 개방적인 사회를 만들고자 하는 학생들에게 모델이 된다.
컴퓨터를 사용한다는 말이 무슨 의미인지 개념적으로 해석하고자 한다.
#연결된 학습
페퍼트는 학습을 개인적으로나 사회적으로 관련 있는 인위적인 결과물을 탄생시키고, 오래된 지식과 새로운 지식을 결합하고, 타인과 교류하는 과정으로 바라보았다.
학습은 얼굴을 맞대고 진행되든 네트워크로 연결된 공동체 안에서 일어나든 사회적인 과정이다.
실체적 요소. 거북이로 원 그리기는 원이 자신의 신체에 대한 아이들의 생각 및 지식과 단단하게 관계를 맺는 신체 동조적 행위다.
#코드에서 애플리케이션으로
자신의 프로그래밍 프로젝트에 완전히 몰두.
학생들은 자신이 프로그래밍을 배운다는 사실을 머릿속에서 반드시 인식할 필요 없이 학교에서 프로그래밍을 배웠다…코딩 방법을 배우는 대신 자신만의 소프트웨어 애플리케이션을 설계하면서 프로그램 제작 방법을 익혔다.
학교에 등장한 게임 설계 교실과 글쓰기 워크숍
“글쓰기가 마법처럼 보일 수 있다. 하지만 마법이 아니다. 글쓰기는 과정이며 길이와 마감 시간, 심지어 장르와 상관없이 글을 쓰는 모든 사람이 이성을 바탕으로 내리고 거치는 연속적인 판단과 절차다.”
#도구에서 커뮤니티로
프로그래밍 도구. 어린 사용자가 선택하는 도구일 때는 다음과 같은 세 가지 측면을 깊이 고민하고 따를 필요가 있다.
- 낮은 바닥(누구에게나 쉽고 직관적이어야 한다)
- 높은 천장(경험 풍부한 사용자는 난해하고 미세한 차이 나는 복잡한 애플리케이션을 제작할 수 있어야 한다)
- 넓은 벽(다양한 프로젝트를 수행할 수 있는 환경을 제공, 자신만의 관심사나 배경을 대변하는 독특한 프로그램을 설계하고 개발할 수 있어야 한다)
온라인 커뮤니티에 탄생에 필요한 원칙?
개인에게 기회를 극대화하라/ 평범한 사람이 일반적으로 가정하는 수준보다 더 영리하고 창의적이라 가정하라/ 최소한의 기준, 컨텐츠의 질을 유지하라/ 학습을 지원하는 기반을 구축하라
사회화. 도구는 커뮤니티다.
공유 유도 객체, 공유 가능한 애플리케이션.
제작은 곧 연결이다.
“실제로 사람들이 선의에서 하는 일이 아니에요. 흥미에서 비롯한 일이지요. 그렇게 열광하는 대상이 있다는 것은 언제나 좋아요. 어떤 일을 계속하게 할 수 있는 유일한 힘이니까요…”
“가장 훌륭한 점이요? 만남이요. 전 새 친구들을 엄청나게 많이 사귀었어요. 제가 혼자 프로젝트를 진행할 때보다는 다 같이 프로젝트를 진행할 때 정말 신이 나요.”
아이들이 참여하는 DIY 공동작업
#빈 화면으로 시작하기에서 리믹스로 시작하기로
스크래치 웹사이트에서 사람들을 자극하는 원인을 찾다
리믹스는 스크래치 웹사이트에서 중요한 위치를 차지한다.
“저는 이렇게 말할 수밖에 없어요. 리믹스가 아니었다면 속도나 스크롤을 절대 이해하지 못했을 거라고요.”
#스크린으로 보는 단계에서 만질 수 있는 단계로
#연결된 교육
교육 역사학자 래리 큐반이 언급했듯이
학교는 ‘컴퓨터로 가르치기’보다는 ‘컴퓨터를 가르치기’를 고집한다.
기본 기능에 초점을 맞추고 컴퓨터를 교육에 필요한 수단이 아닌 목표로 삼은 까닭에 유치원, 초·중·고등학교에서 실시되는 컴퓨터 교육이 컴퓨터 자체를 제외하면 실질적인 내용이 전혀 없는 교육으로 남았다.
컴퓨터를 이용한 제작 활동은 학습을 추상적인 영역에서 끌어내 구체적인 영역으로 밀어 넣는다. 이때 자신이 만든 작품은 동료 메이커가 모인 더 넓은 네트워크 안에서 마치 화폐처럼 유통될 수 있다.
듀이는 아이들이 학교에서 장려하는 학습 활동을 교실 밖에서 경험하는 세상에서 응용하고 확인할 수 있어야 한다고 생각했다.
교육은 교실과 현실 세계를 연결해야 한다.
#모두를 위한 코딩
“모든 사람이 컴퓨터 프로그래밍을 배워야 합니다…컴퓨터 프로그래밍 방법은 여러분에게 생각하는 방법을 가르치기 때문입니다.”-학교에서 가르치지 않는 것들
컴퓨터를 이용한 참여로 나아가는 길
우리에게는 새로운 교육 과정을 실행할 수 있는 교사와 학생들을 교육과정으로 인도할 수 있는 상담 교사가 필요하기도 하다.
코딩은 연결 중이다.
디지털 기술은 우리가 생활하고, 일하고, 놀고, 다른 사람과 어울리고, 배우고, 가르치는 방식에 들어 있다. 우리는 우리가 사는 디지털 세상에 참여할 뿐만 아니라 디지털 세상을 만든다. 이렇게 하려면 코드에 대한 개인적·사회적·문화적·물리적 연결 고리를 이해해야 한다.
파울로 프레이리는 “글 읽기가 곧 세상 읽기”라고 말했다. 우리는 코드 읽기가 우리가 사는 디지털 세상을 이해하고, 바꾸고, 다시 만드는 일과 관련이 있는 만큼이나 세상 읽기와 관련이 있다고 생각한다.
시모어 페퍼트는 컴퓨터를 프로테우스처럼 무엇으로든 변신할 수 있는 기계이자 지적으로 풍부하게, 개인적으로 의미있게, 문화적으로 다양하게, 사회적으로 연결되게 생각 유도 객체를 구성하는 보편적인 장치로 생각했다.
좋은 책을 소개해 주시니 감사합니다. 저는 약사,선교사,수학 과외교사,아마추어 프로그래머입니다. 선교지의 아이들에게 코딩을 가르치고 싶지만 아직 성공하지 못했고 후원교회에서 가르쳐봤습니다. 아이들에게 코딩을 가르치신다면, 순수함수형 언어 haskell 이 좋습니다. 이 언어가 지금은 미약하지만 미래에는 순수함수형 언어가 대세이리라 예측합니다. 현재는 미국 금융기관에서 가장 많이 쓰인다합니다. 그러나 이 언어는 범용 코딩 언어입니다. 문법이 단순하고 깔끔합니다. 지저분한 땜질이 없죠. 초보자라면 무수한 error message 를 만나게 됩니다만 그걸 읽을 필요 없이 어디를 고쳐야 할까 곰곰히 생각하는 것만으로 error를 없애면서 실력이 늘어납니다. 참 멋있는 언어입니다. I love haskell and vim.
Vim은 코딩에 좋은 도구이면서, 일반적인 text editor로도 훌륭합니다. 저는 직업적인 프로그래머가 아니지만 컴퓨터를 켤 때마다 매일 사용합니다. 용도가 무궁무진하죠. 가볍고 작은 software이고 무료, 지속적 update!
I love haskell and vim!