알라딘

헤더배너
상품평점 help

분류

이름:조너선 스타인하트 (Jonathan E. Steinhart)

최근작
2021년 4월 <한 권으로 읽는 컴퓨터 구조와 프로그래밍>

한 권으로 읽는 컴퓨터 구조와 프로그래밍

매스매티카(Mathematica)와 울프람(Wolfram) 언어를 만든 스티븐 울프람(Stephen Wolfram)이 쓴 '어떻게 컴퓨팅 사고를 가르칠까?(How to Teach Computational Thinking)'라는 블로그 글에는 프로그래밍을 가르치는 방법에 대한 흥미롭지만 상당히 반대되는 관점이 들어 있다. 울프람은 컴퓨팅 사고를 "컴퓨터가 할 일을 지시하기 위해 충분히 명확하게, 충분히 시스템적으로 사물을 수식화하는 방법"이라고 정의했다. 나도 이 정의에 완전히 동의한다. 사실 이 주장은 내가 이 책을 쓰게 된 계기 중 큰 부분을 차지한다. 하지만 프로그램을 배우는 사람이 컴퓨팅 사고를 개발하기 위해 토대가 되는 기술을 배우는 대신, 자신이 개발한 강력한 고수준 도구 등을 사용해야 한다는 울프람의 주장에는 강하게 반대한다. 예를 들어, 미적분학보다 통계학에 대한 관심이 늘어난다는 점을 보면 '데이터 주무르기(data wrangling)'가 점점 더 중요한 분야가 되고 있음이 분명하다. 하지만 사람들이 멋진 프로그램에 엄청난 양의 데이터를 입력하는데 이 데이터를 전혀 이해하지 못한다면 어떤 일이 벌어질까? 이럴 경우 한 가지 가능성은 사람들이 재미있어 보이지만 의미가 전혀 없거나 틀린 결과를 만들어내는 것이다. 예를 들어, 마크 지만, 요탐 에렌, 아쌈 엘오스타가 발표한 최근의 연구(「과학 문헌에 유전자 이름 오류가 널리 퍼져 있다(Gene Name Errors Are Widespread in the Scientific Literature)」)에 따르면, 유전학 논문 중 5분의 1가량에 스프레드시트를 잘못 사용해서 생긴 오류가 있다는 사실이 밝혀졌다. 이런 종류의 오류를 생각해보고, 더 강력한 도구가 더 많은 사람들 손에 들어갔을 때 생길 결과를 생각해보라! 사람의 생명에 영향을 끼치는 경우라면 이런 일을 바로잡는 일은 더욱 중요해질 것이다. 하부 기술을 잘 이해하면 무엇이 잘못되고 있는지 알아차리는 능력을 계발할 수 있다. 고수준 도구만 알면 잘못된 질문을 던지기 쉽다. 전동 공구를 사용하려면 먼저 망치 쓰는 법부터 익혀야 한다. 하부 시스템과 도구를 배워둬야 하는 또 다른 이유는 이를 통해 여러분이 새로운 도구를 만들 수 있는 능력을 가질 수 있다는 점이다. 새로운 도구를 만드는 사람은 언제나 필요하며, 도구 사용자가 늘어나면 늘어날수록 이런 사람의 중요성은 더 커진다. 컴퓨터를 잘 이해함으로써 프로그램의 동작에 대한 수수께끼가 풀린다면, 여러분은 분명히 더 나은 코드를 작성할 수 있다.

가나다별 l l l l l l l l l l l l l l 기타
국내문학상수상자
국내어린이문학상수상자
해외문학상수상자
해외어린이문학상수상자