더북(TheBook)

큰 그림: 이 기술로 무엇을 할 수 있는가?

나는 언제나 큰 그림을 보는 것으로 시작한다. 요즘은 구글의 도움을 받으면 웬만한 문제는 해결할 수 있다. 하지만 문제의 대상이 무엇인지 파악하지 못하면 구글 검색조차 할 수 없다. 그래서 나는 기술을 가르칠 때 그 기술의 범위는 어느 정도인지 그 기술로 무엇을 할 수 있는지에 대한 개요부터 가르친다. 이 단계에서는 아주 표면적인 수준까지만 이야기한다. 그 기술로 할 수 있는 모든 것을 알려주는 게 아니라 전체 지도상에서 관심이 갈 만한 지점만 짚어서 간단히 훑어본다.

프로그래밍 언어를 가르친다면 그 언어의 역사와 그 언어가 주로 어떻게 쓰이는지를 간략히 이야기한다. 그리고 바로 그 언어를 구성하는 모든 요소와 특징을 보여준다. 특히 그 언어 고유의 독특한 부분을 보여주는 데 집중한다. 마지막으로 해당 언어에서 일반적으로 사용되는 다양한 라이브러리를 소개하고 그 라이브러리를 어떤 작업에 어느 정도 범위로 쓸 수 있는지 알려준다.

세부적인 부분을 들여다보지 않고 지형 전체를 완벽하게 알려주는 게 핵심이다. 무엇을 모르는지 깨닫는 것이 이번 단계의 목표다. 지식이 부족한 부분을 확인해두어서 나중에 그 기술을 배워야 할 때 어디를 봐야 할지 알게 한다는 뜻이다. 당신이 “아, X로 그걸 할 수 있는지 몰랐어요!”라는 말 대신 “X로 그걸 할 수 있는 건 알고 있어요. 방법은 잘 모르지만, 방법은 나중에 배우면 되죠.”라는 말을 할 수 있게 만드는 게 내 목표다. 목공을 배우려는 사람이 전동 공구나 라우터가 있다는 걸 모른다고 상상해보라. 이러한 도구의 사용법까지는 몰라도 된다. 하지만 도구의 존재조차 모른다면 매우 불리하게 시작하는 거라고 볼 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.