** 우리가 원하는 것을 성공적으로 이루고자 하는 과정들을 생각할 때 ‘왜(Why)’를 탐구하는 것은 많은 도움이 됩니다. 교사 여러분 역시 교육 분야에서 경력과 전문성을 쌓는 이유에 대해 스스로에게 묻기도 합니다. 이 질문에 대한 여러분의 답은 매우 다양할 것입니다.
‘학생들이 건강한 삶을 살고, 직업을 성공적으로 선택하는 데 도움을 주기 위해서’, ‘우리가 사는 이 세상을 더욱 살기 좋은 세상으로 만들기 위해서’와 비슷한 답을 했을지도 모릅니다.
교육현장에서 ‘왜(Why)’를 염두에 둔다면 교육 목표를 달성하는 방법뿐 아니라 효과적이고 실제적인 학습활동의 면모를 안쪽에서부터 바깥쪽으로 두루 고민할 수 있습니다.
** 많은 학생이 자신의 생각을 들여다보는 것을 어려워하고 글을 쓰는 것 역시 두려워합니다. 만약 이러한 학생들이 코드 작성하는 방법을 배운다면 자신의 생각을 구체화하고, 생각을 잘 정리할 수 있으며, 앞서 생각한 것들을 실제 행동으로 옮길 수 있습니다.
** 어린아이들은 다양한 기회가 주어지기 때문에 실수나 실패를 두려워하지 않습니다. 그런데 나이가 들어 성인이 된 이후에는 실수나 실패할 것이 두려워 창의력을 잃어버리게 됩니다. 그러므로 코딩을 하면 잘못될 것을 염려하지 않고 얼마든지 창의적인 활동을 할 수 있습니다. 만약 코딩의 결과물이 예상대로 잘 작동하지 않으면 무엇이 잘못되었는지, 왜 작동하지 않는지를 분석하고 이를 해결하기 위한 방법들을 찾아 실제로 어떤 방법을 적용할 것인지 선택해야 합니다. 코딩은 수많은 실수와 실패를 경험하고, 이들을 통해 새로이 배우며 해결해 가는 과정이기 때문입니다.
** 인간의 두뇌는 마치 복잡한 컴퓨터와 비슷합니다. 주어진 문제를 작은 단위로 분해하고, 문제를 해결하기 위한 절차와 방법을 고안하여 직접 실행해 보고, 그 결과를 분석하여 최종 결과로 받아들일 것인지를 판단합니다. 즉, 우리는 문제를 해결하기까지 분해(Decomposition), 알고리즘과 절차(Algorithms & Procedures), 데이터 수집(Data Collection), 데이터 분석(Data Analysis), 그리고 데이터 표현 및 추상화(Data Representation & Abstraction) 과정들을 거칩니다.
** 기존의 교과 계획에 코딩을 어떻게 통합할 수 있을까요? 대부분의 교사들은 이미 컴퓨팅 사고의 기초 요소들을 가르치고 있습니다. 다만, 교사들이 이 사실을 인지하고 있지 못할 뿐입니다. 교사가 학생들에게 이야기를 읽어주고 이야기에 등장한 사건들을 순서대로 배열하도록 과제를 주는 것 역시 문제 분해하기, 데이터 분석하기, 데이터 표현하기 등 프로그래머가 경험하는 문제해결 과정과 비슷한 과정을 학생들이 경험하도록 하게 하는 것입니다.
** 수많은 자료들이 컴퓨팅 사고를 가르치는 방법에 대한 아이디어를 다루고 있지만, 이 책은 컴퓨팅 사고를 조금 다른 시각으로 바라보고 있습니다. 이 책은 유치원부터 초등학교 5학년 학생들을 가르치는 교사들이 이미 자신이 담당하는 교육과정에서 컴퓨팅 사고의 개념과 기술들을 가르치고 있지만, 아울러 컴퓨팅 사고를 전체적으로 바라볼 수 있어야 한다는 점을 강조합니다.
--- 본문중에서