뉴욕의 프로그래머 (임백준, 2007) 독후감
프로그래머의 이야기를 담고 있는 책이라서 무척이나 재미있게 읽을 수 있었다. 프로그래머들이 소프트웨어를 서비스하며 겪는 에피소드들이 무척이나 공감이 갔다. 읽다 보니 내가 겪었던 일들도 생각이 나기도 했다.
경험이 부족하거나 담력이 약한 프로그래머는 자신의 코드에서 치명적인 실수가 발견되면 심히 당황하여 정상적인 판단능력을 상실한다. 사태를 수습하기 위해서 힘을 모으는 것이 아니라 다른 사람을 비난하거나 자기를 변호하기 위해서 힘을 낭비한다. p.130
실수는 아픈 고통을 안겨주지만 성장하는 사람은 그것을 자신의 일부로 끌어안고 실수와 함께 나아간다. 실수 자체는 비웃을 일이 아니다. 다만 실수와 함께 성장하지 못하는 사람은 웃음거리가 될 만하다. p.196
예전에 게임을 서비스 중인 팀에서 투입 직전 치명적인 버그를 하나 만들어서 정말 당황했던 기억이 난다. 지금 생각해 보니 자신을 변호하기 위해 안간힘을 쓰는 어리석음은 저지르지 않아서 다행이었지만, 바보같이 판단 능력을 한순간 상실하고 멍해졌던것 같다. 경험이란 참 무시를 못하는 것 같다. 주위의 프로그래머들은 모두다 침착했었고, 도와주기 위해서 각자 자리에 앉아서 해당 소스를 보기 시작했다.
이건 내가 고쳐야 한다. 내가 벌인 일인데, 이것을 수습하지 못하면 이것보다 부끄러운 일이 어디 있겠는가.. 미친듯이 버그를 수정하기 위해 소스를 찾아보기 시작했다. 결국 내가 찾지 못하고 동료 프로그래머가 찾아서 수정을 하는 것으로 마무리 되었다. 그 땐 무척이나 내 자신이 한심스러웠다. 한편으로는 동료들의 실력이 든든하고 신뢰가 갔고 또 한편으로는 뒤쳐지지 않게 노력해야겠다는 생각이 들었다.
지금 생각해 보니 참 부끄러운 기억이다.
때로는 코드의 주인이 누구인가에 따라서 디버깅의 방향을 달리하는 것이 도움이 되기 때문이다.
겉으로 드러내놓고 말하진 않아도 한 팀에서 일하는 사람들의 마음속에는 누구를 신뢰할 수 있고 누구를 신뢰할 수 없는지 이미 정해져 있기 마련이다. 이런 속사정 때문에 다소 수상한 냄새를 풍기는 객체라도 신뢰할 수 있는 프로그래머가 작성한 코드면 일단 무혐의 처분을 받고, 그렇게 수상하게 보이지 않아도 신뢰할 수 없는 프로그래머가 손을 댄 코드면 곧바로 구속수사를 받게 된다.
이것을 단순히 편견이라고 말하긴 어렵다. 편견이 아니라 프로그래머의 경험과 직관에 근거하는 판단의 일부라고 보아야 하기 때문이다.
p.260
동감. 나 자신은 동료 프로그래머에게 신뢰를 주고 있을까?