프로그래머는 왜 이렇게 까칠할까?

작년에 교보문구에서 책을 뒤지다가 매우 흥미로운 내용을 발견했다.

은밀한 설계자들 - 클라이븐 톰슨

지속적인 프로그래밍이 성격에 어떤 영향을 미치는가?

읽으면서 ‘오… 맞는말’이라고 생각했다.

갑자기 이 책을 소개하는 이유는 내가 지금 버그때문에 너무 스트레스를 받았기 때문이다…

이제 3장 본문 내용을 소개하겠다.

어떤 성격과 마음을 가져야 프로그래밍을 잘할 수 있을까?

프로그래머들은 무슨 일을 주로 할까? 그들은 시간 대부분을 버그를 찾아 해결하는 데 사용한다.

버그란 정확히 무엇일까?

  • 버그는 프로그램 속에 들어 있는 에러로 철자가 틀린 경우도 있다.
  • 버그는 프로그램의 올바른 작동을 방해한다.
  • 버그는 믿을 수 없을 만큼 아주 작고 사소하다.

프로그래머가 작성한 프로그램에 버그가 있다면, 컴퓨터는 버그가 있는 프로그램을 정확히 그대로 실행한다.

프로그래머라는 직업의 한 가지 특징은 문제해결 과정의 고통을 견딜 수 있는 사람들이 스스로 선택한 직업이라는 점이다.

조그만 실수도 인정하지 않는 매우 정밀한 기계를 가지고 일한 탓에 프로그래머는 점점 그렇게 변한다.

프로그래머는 왜 이리 까칠하게 행동할까?

사실 컴퓨터야 말로 까칠 대마왕이죠.

  • 당신이 아주 작은 실수라도 저지르면 기다렸다는 듯 틀렸다고 지적합니다.
  • 세미콜론 하나를 빠트렸을 뿐인데 말이죠

하지만 어쩌겠어요? 하나 빠트린 실수로 우주선이 불덩이가 된 일도 있으니 말이에요

  • 매리너 1호는 한 글자의 버그로, 인구 밀집 지역으로 추락 가능성이 생겨 강제 폭발시켜버렸다.

“만약 컴퓨터 같은 사람이 있다면 정말 밥맛일 거에요. 남에 대한 배려는 전혀 없죠.” 앳우드가 말했다.

  • 에러 메시지는 명확할 때도 있지만 수수께끼 같을 때도 있다.
  • 버그를 해결해야 할 때, 프로그래머는 철저히 혼자다.

프로그래머는 괴로운 상실감과 갑작스러운 행복감 사이를 빠르게 넘나들며 자존감에 상처를 받는다

하루종일 버그를 만나 고통스러워하다, 이를 해결할때 큰 쾌감을 느낀다는 것이다.

  • 마치 카지노 잭팟을 기다리는 것과 같다고 한다.
  • 프로그래밍 ‘중독’

예를들어 작성 중인 프로그래밍이 제대로 작동하지 않아 좌절한 프로그래머를 만나면, 이 세상 그 누구보다 더 낙담에 빠진 사람은 없을 만큼 우울해하며 자학하는 모습을 보게 될 것이다.

그러다 1시간 후 다시 만났는데 때마침 3주 동안 프로그래머를 괴롭히던 버그가 해결돼 있는 순간이였다면, 우쭐해서 자기 자랑을 마구 늘어놓는 프로그래머를 보며, 이 보다 더 건방지고 거들먹 거리는 사람이 있을까 싶을거다.

프로그래머는 이러한 심한 감정 기복을 경험한다.

한마디

하루종일 까칠하고 한숨 쉬며 머리 뜯다가, 어느 순간에 기뻐서 방방 뛰는 사람이 있다면 버그를 해결한 개발자일지도?…

참고


Written by@Juna
I love Node.js