'프로그래밍 심리학'에 해당되는 글 1건

  1. 2008/01/06 프로그래밍 심리학 (TPoCP) (6)
Thoughts2008/01/06 18:58

"프로그래밍 심리학"이라는 유명한 책(원제: The Psychology of Computer Programming)이 이번에 인사이트에서 번역되어 나왔습니다. 워낙 오랫동안 인기있었던 책이지만, 국내에는 잘 알려지지 않은 책입니다. 출간된지 25년이 지났는데도 말입니다. 이 책의 한 부분을 인용해 보겠습니다.

최소의 비용으로 최고의 프로그래밍을 원한다면, 가능한 한 최고의 프로그래머들을 구하고 그들에게 최소한의 인원으로도 문제가 없을 만큼 충분한 시간을 주어야 한다. 이것이 프로그래밍 팀의 크기와 구성에 대해 언제나 통용되는 기본 원칙이다. 일을 더 빨리 해야 하거나 덜 숙련된 사람들과 일해야 한다면 비용과 불확실성은 더 증가하게 된다. 어쨌든, 프로그래밍 프로젝트를 수행하는 최악의 방식은 초보자들만 고용한 뒤 스트레스만 많이 주고 감독은 하지 않으면서 일을 시키는 것이다. 불행하게도 오늘날 가장 흔히 볼 수 있는 광경이기는 하지만 말이다. (148페이지)

사용자 삽입 이미지

이 부분을 읽으면 어쩐지 이집트 피라미드 한쪽 벽에서 발견되었다는 "요즘 애들 버릇없어"라는 낙서가 생각납니다. 사람들이 천공카드 대신 PC에서 프로그래밍을 하게 된지 꽤 오랜 시간이 흘렀는데도, 소위 '이 바닥'의 현실은 많이 바뀌지 않았음을, 이 고전적인 책에서 느낄 수 있습니다. 다른 부분도 한번 살펴볼까요?

우리는 물리적 환경이 프로그래밍 작업의 양과 질에 영향을 끼침을 모두 알고 있다. 그러나 산업심리학에서와 달리 이때의 물리적 환경은 소움이나 빛, 온도 등의 요소를 말하는 것이 아니다. 작업 공간의 배치를 말한다. 프로그래들의 자리를 한군데로 모아 놓으면 분명 중요한 이점이 생긴다. (사무실에 일반적으로 설치하는 파티션이 프로그래머의 생산성에 미치는 악영향은 누군가가 연구해 봐야 할 주제다. 파티션은 방해가 되는 소음이나 움직임은 그대로 놔두고 효율적인 의사소통만 방해한다) 그러나 우리가 관심을 가져야 할 부분은 작업 공간의 배치가 사회적인 상호작용에 미치는 영향이다. 그 상호작용이 다시 작업 결과에 영향을 주기 때문이다. (114페이지)
이런 구절도 있습니다.
여기까지 읽은 독자 대부분이 프로그래머들 사이의 사회적 상호작용을 강조함에 놀랐을 것이다. [중략] 아마도 대부분의 프로그래머는 고정된 장소에서 다른 사람의 방해를 받지 않고 혼자 일하는 편이 더 좋다고 대답할 것이다. 그런 생각이 프로그래밍을 향상시키는 데에 가장 무서운 장벽이다. (117페이지)

이런 이야기들이 실제로 나오기 시작한 것이 25년 전이라는 뜻입니다. XP나 Agile 방법론이 각광받기 시작한 것이 실로 최근의 일이고 보면, "개발자들 사이의 상호작용"과 "의사소통을 통한 기민성"이라는 개념이 프로그래머들 사이에 통용되는데 이십년 가까운 세월이 걸린 셈입니다.

"시간이 지나서 그 가치를 인정"받거나, "시간이 지날 수록 그 가치가 더 빛나는" 책이어야 비로소 '고전'이라는 딱지를 달 수 있다고 사람들은 생각합니다. 그렇다면 "프로그래밍 심리학"이야 말로 그런 기준에 걸맞는 책이라 할 만 합니다. 프로그래밍에 관한 여러 책을 읽어보았습니다만, "인용문이 서평을 대신할만한 책"은 실로 오랫만에 만나는 듯 합니다.

해서, "프로그래밍에 필요한 성격"에 대한 부분을 인용하는 것으로 이 글은 맺으려고 합니다. 타이핑 치면서 어쩐지 좀 뜨끔하더군요. ㅋㅋ


[전략] 프로그래밍에 필요한 성격으로 가장 쉽게 깔끔함을 떠올릴 수 있다. [중략] 조금은 강박증에 가까우리만치 문서를 잘 정리하는 성격을 말한다. 어떤 컴퓨터 회사에서는 시험을 쳐서 프로그래머 인턴을 뽑는데, 최고득점자가 아니라 답안지를 제일 깔끔하게 작성한 사람을 뽑는다.

프로그래밍에 꼭 필요한 성격에는 겸손함도 있다. 겸손함이 없는 프로그래머는 고대 그리스 희곡의 전형적인 패턴을 답습한다. 즉, 작은 성공에 자만하다가 결국 자멸하게 된다. 프로그래머가 몇 가지 간단한 기술을 익히고 스스로 전문가라 자만하다가 그로서는 어쩔 수 없는 컴퓨터의 힘 앞에 박살이 나는(데우스엑스마키나) 이야기는 소포클래스가 쓴 비극에 못지않게 눈물겹다.

겸손함과 동전의 양면처럼 대를 이루는 성격이 자신감이다. 프로그래머의 업무는 뭔가를 되게 만드는 것이라 할 수 있다. 그 과정에서 때때로 장애물을 만나면 그것을 피하거나 넘거나 타파해야 한다. 그러나 겸손함이 지나쳐 자기비하를 쉽게 하는 사람은 자신이 택한 방법이 틀릴 수도 있다는 비판 정신을 지나치게 발휘해 자신감을 상실한다. 물론, 비판정신이 없는 자신감은 브레이크 없는 기관차만큼이나 위험하다. 그러나 자신감 없는 비판 정신은 기관차는 없고 브레이크만 있는 형국과 마찬가지다. 사고의 위험도 없겠지만, 뭔가를 이루는 건 더더욱 없다. (281~282 페이지)

'Thoughts' 카테고리의 다른 글

좋은 친구들을 가진다는 것  (2) 2008/01/29
자기 수련  (8) 2008/01/20
프로그래밍 심리학 (TPoCP)  (6) 2008/01/06
자화상  (0) 2008/01/05
LaTeX 관련된 유용한 정보들  (0) 2008/01/03
이명박 당선자의 교육 공약과 정책  (10) 2007/12/28


Posted by 이병준

TRACKBACK http://www.buggymind.com/trackback/100 관련글 쓰기

  1. 프로그래밍 심리학  삭제

    2008/01/15 19:37TRACKBACK FROM OK 괜찮아 다 잘 될거야

    몇 일 전 인사이트 출판사에서 한 권의 책을 증정받았습니다. "프로그래밍 심리학" 제랄드 와인버그 라는 분이 쓰신 책인데, 이미 예전에 "컨설팅의 비밀" 책을 읽어서 알고 있는 분입니다. 1971년 쓴 내용을 고치지 않고, 내용만 추가해서 현재까지 출판하고 있는 책입니다. 제가 태어난 년도와 같죠. 컴퓨터라는 것은 급변하는데, 컴퓨터 프로그래밍에 대한 책의 내용이 40년 가까이 변함없이 읽혀진다는 것은 바이블급입니다. 하지만 저자는 바이블로 읽혀지기..

  2. 프로그래밍 심리학  삭제

    2008/02/04 19:18TRACKBACK FROM The note of Legendre

    프로그래밍 심리학(원서명:The Psychology of Computer Programming, POCP)을 읽었습니다. 이 책은 25주년 기념판이 번역된 것인데요, 제랄드 M. 와인버그가 기념판을 펴낼 때 원서 자체에서 내용을 덧붙이는 형태로 펴냈기 때문에 예제로 사용되었던 PL/1이나 APL 언어들을 볼 수 있습니다. 지금으로서는 찾아 보기 힘든 천공카드에 대해 얽힌 이야기라거나, 실행시켜볼 코드를 보내놓고 회송시간을 기다린다거나 하는 이야기들이..

댓글을 달아 주세요

  1. 저도 읽으면서 뜨끔...

    2008/01/06 21:03 [ ADDR : EDIT/ DEL : REPLY ]
  2. 비밀댓글입니다

    2008/01/07 13:38 [ ADDR : EDIT/ DEL : REPLY ]
  3. 일찍 다 보셨군요.
    이제 엉금엉금 보고 있습니다.
    글 잘 읽었습니다.
    트랙백 겁니다. ^^

    2008/01/15 19:36 [ ADDR : EDIT/ DEL : REPLY ]