요즘은 essay, 자서전, 방법론 같은 책들을 많이 읽고 있다.
대학 때까지만 해도 그런 건 절대 읽지 않았다.
왠지 시간 낭비처럼 보였기 때문이다.
교과서나 유명한 논문을 보기도 바쁜데, 그런 군더더기가 많은 essay나 자랑만 늘어놓는 자서전
따위는 필요없다고 생각했다. 방법론은 멍청하고 의욕도 부족한 바보들이나 본다고 생각했다.
대학에 와서 나는 바보가 되었다. 더 이상 앞으로 나아갈 수가 없었다.
왜 그것을 해야할지(why), 어떤 것을 먼저 봐야 할지(what), 어떤 식으로 봐야할지(how) 도무지
알 수가 없었다. 학습 자체가 중요한 것이 아니라 학습의 방향을 잡을 수가 없었다.
수업시간에 나오는 내용들이나 journal이나 news group등에 적혀있는 내용이 전부가 아니었다.
머리를 쥐어뜯고 고민을 해도 그것만 가지고는 쉽게 이해할 수 없는 내용들이 많았다.
그렇게 대학 3년 내내 고민을 했다.
"나는 바보일까?", "왜 이렇게 이해할 수가 없지?", "도대체 이 글과 강의는 무슨 이야기를 하고 있는 걸까?",
"과학자들은 어떻게 활동하는 거지?", "학문 자체가 아닌 이런 외적인 문제들은 어떻게 해결하지?"
더 이상 앞으로 나아갈 수 없었기 때문에 교과서만 읽는 건 별 도움이 되지 않는 것 같았다.
다행히도 우연한 기회에 essay들과 자서전을 많이 접하게 되었다.
(회사 내부 메일이라든지, news groups들을 통해서 였다.)
각 분야의 선구자들은 왜 그것을 시작했는 지, 무엇을 얻고 싶었는 지, 어떻게 했는 지,
어떤 것이 성공했고, 어떤 것은 실패했는 지, 어떤 기회를 잡았는 지, 놓친 기회는 무엇인지,
왜 이런 이해할 수 없는 결과가 나왔는 지(historical한 문제들을 설명.),
슬럼프는 어떻게 극복했는 지, 자기는 어떤 면이 잘났고, 어떤 면이 부족한지..
이런 것을 알고 있었고 그들을 보면서 나는 어떤 점이 그들과 비슷한지 찾아보고 있다.
-----------------------
예를 들자면 생물학 개론 책을 공부하면 'DNA가 이중나선이다'라는 사실을 알 수 있지만,
그것을 어떻게 알아냈는 지, 어디서부터 논의가 시작되었는 지, 그래서 우리가 얻을 수 있는 점은 무엇인지는
생물학개론 책에 나오지 않는 다. 우리는 왓슨과 크릭의 essay들을 읽어야만 한다.
고등학교만 나와도 사람들은 다윈의 진화론을 대충 알 수 있지만 다윈은 '왜 그런 생각을 했는 지' 같은 걸 알려면
다윈의 다른 책들을 봐야한다.
C언어의 문법을 알기 위해서는 "C언어 21일 정복", "C Bible"같은 책을 보면 되지만,
C언어는 왜 이런 언어가 되었을 까? Array는 왜 만들었을까? pointer는 뭘까?
왜 garbage collection을 지원하지 않을 까? header file과 source file은 왜 나눌까?
왜 return 값은 1개인가? string type을 지원하지 않는 이유는 뭘까?
array boundary check는 왜 하지 않을 까? C++은 또 왜 만들었을 까?
왜 compiler마다 다른 행동을 보일까? Ansi C는 뭐고 C99는 또 왜 있나?
이런 사실들을 알려면 kernighan이나 straustrop의 다른 책들과 essay를 봐야 한다.
댓글 없음:
댓글 쓰기