|
저는 워드와 짝 프로그래밍 경험이 몇 번 있습니다. 제 공력 증진에 큰 도움이 되었다고 생각하고 있습니다. 오늘은 여러분들을 위해 그 경험에서 배운 것, 특히 워드가 여타의 프로그래머들과 다른 점에 대해 이야기해드리려고 합니다. 아마 프로그래머가 아닌 분들에게도 많은 계발을 주리라 생각합니다.
우선은 수학자 이야기를 잠깐 하겠습니다. 폴 에르되시라는 수학자가 있습니다. 그는 누구든지 그의 마음에 드는 주제를 가지고 온 수학자라면 함께 논문을 썼다. 결과적으로 거의 1500개의 공동 논문을 내, 지금까지의 역사상 가장 공동연구를 많이 한 수학자가 될 것이다. 그와 공동연구를 했던 수학자들은 에르되시 수(Erdős number)란 말까지 만들어 냈다.에르되시 수라는 개념이 재미있습니다. 에르되시와 공동 논문 저술을 했으면 에르되시 수가 1이 됩니다. 에르되시 수가 1인 사람과 공동 저술을 했다면 그 사람은 에르되시 수가 2가 됩니다. 에르되시 수가 낮으면 그만큼 자랑거리가 됩니다. 워드 커닝햄이라는 프로그래머에게도 워드 수라는 개념이 붙었습니다. 워드와 짝 프로그래밍(둘이 한 컴퓨터 앞에 앉아서 키보드를 번갈아가며 협력해서 프로그래밍 하는 것)을 하면 워드 수가 1이 됩니다. 그만큼 워드와의 짝 프로그래밍 경험을 인정해 준다는 말이기도 합니다. 워드도 에르되시처럼 프로그래밍을 사회적 활동으로(괴팍한 천재가 어두운 골방에서 기똥찬 프로그램을 만드는 것이 아니라) 만든 사람으로 볼 수 있습니다. 제가 워드와 짝 프로그래밍을 하면서 발견한 그의 탁월한 점은 여러가지가 있는데 오늘은 두 가지만 이야기해보겠습니다. 첫번째입니다. 우리가 생각하는 것보다 훨씬 더 작은 발걸음을 할 수 있다 -- 심지어는 다른 규칙을 어기면서까지. 전문가 연구에서 이런 실험을 한 적이 있습니다. 발레를 두 집단에게 보여줍니다. 한 집단은 무용 전문가들이고 다른 집단은 그렇지 않습니다. 그들에게 전자 버튼을 하나씩 주고, 춤을 보다가 의미있는 동작 단위로 나눌 수 있는 시점에 버튼을 누르라고 주문했습니다. 결과는? 전문가가 훨씬 더 촘촘하게 나눕니다. 그러면서도 동시에 전문가는 훨씬 더 크게 나눌 수도 있었습니다. 예를 들면 일반인은 대충 1~2분 단위로 나눈다면 전문가는 1~2초 단위로 나눌 수도 있고, 또 10~20분 단위로 나눌 수도 있다는 이야기입니다. 다음은 제가 "단락개념"이라는 위키 페이지에 썼던 글입니다. 상급자와 중급/초급자 사이에는 이 단락개념에 차이가 있다.워드는 제가 생각했던 것보다 훨씬 더 작게 단락을 나눌 수 있었습니다. 예를 들어 현재 A라는 지점에서 프로그래밍을 하고 있고 B로 나아간다고 했을 때 제가 2 단계로 갈 것을 생각하면, 워드는 그걸 4단계로 나눌 수 있었습니다. 저는 나름대로 주변의 프로그래머들에 비해 그런 분절 유연성이 뛰어나다고 생각하고 있었는데 워드를 만나면서 놀라게 되었습니다. 특히나, 저의 2단계를 워드의 4단계로 쪼개기 위해 일시적으로 찝찝한 코드의 상태를 지나쳐야 하는데, 워드는 그런 결정을 할 수 있다는 것도 놀라웠습니다. "이런 코드는 더러워, 초보자들이나 쓰는 코드지"라고 생각할만한 코드를 워드는 아무런 거리낌없이 쓰고 사용합니다 -- 물론 나중에는 그 코드가 좀 더 아름다운 코드로 변모하게 됩니다. 아, 이 사람은 추함과 아름다움의 통념적 경계를 넘나들며 양쪽을 모두 사용하는구나 하는 생각. 두번째는 좀 더 충격적이었습니다. 예상 못한 상황을 맞닥뜨렸을 때 반응이 다르다. 워드 역시 코딩을 하다보면 예상치 못한 상황을 접합니다. 그렇지 않다면 학습을 하고 있지 않은 것이죠(안전 영역으로만 다니는 겁니다). 다른점은 그 상황에서의 반응과 태도입니다. 코딩을 주욱 합니다. 실행 시킵니다. 당연히 멋지게 결과가 나오리라 생각하며 엔터를 누르는데, 어라라랏! 에러가 뜹니다. 머리 속이 깜깜해집니다. 심박이 높아집니다. 주변에 누가 볼까 걱정도 듭니다. 머리에 열이 나기 시작합니다. 5분 정도 지나고 나면 나도 몰래 똑같은 짓을 반복하고 있고(삽질이라고 합니다) 될듯 될듯 뭔가 풀리지 않습니다. 이게 일반적인 프로그래머입니다. 워드는? 뭔가 이상한 에러가 났습니다. 워드가 말했습니다. "Hm... That's interesting." 흠, 이거 흥미롭군요. 엄청난 차이입니다. 저는 워드에게 이런 말을 해줬습니다. "Every unexpected event is a path to learning for you." 예상 못한 사건 하나 하나가 당신에게는 학습으로 가는 길이다. 뭐랄까, 워드 주위에는 차분함의 필드가 존재하는 것 같습니다. 그 사람과 짝 프로그래밍을 하고 있으면 스트레스를 별로 받지 않습니다. --김창준
|
메모장
이글루 파인더
최근 등록된 덧글
이번 모임도 기대하고..
by 청하 at 11/26 회사가 크고, 낮은 .. by Klaus at 11/26 그 분 모시고 장병두.. by 이창현 at 11/21 글 늘 잘 읽고 있습니.. by edge at 11/19 안타까운 소식이네요.. by Klaus at 11/17 최근 회사내 발표회에.. by 청하 sozu at 11/16 상향식, 하향식 어떤.. by Max at 11/13 꼭 그렇게만 생각할 .. by 영록 at 11/13 벌써 1년이군요. PNA 2.. by 최승준 at 11/13 정말이지 안타까운 .. by dongmyo at 11/11 최근 등록된 트랙백
똘똘한성군의 생각
by sungdh86's me2DAY 가로줄무늬의 생각 by garnet5's me2DAY 태을사자의 생각 by shiva83's me2DAY 정찬명의 생각 by naradesign's me2.. 소집통지서의 생각 by sub's me2DAY SGcom의 느낌 by quisa137's me2DAY 우엉의 생각 by oldtype's me2DAY 펭도의 생각 by pengdo's me2DAY 현재 생산성 by Confluence: SF2 .. 이전블로그
2009년 11월
2009년 10월 2009년 09월 2009년 08월 2009년 07월 2009년 06월 2009년 05월 2009년 04월 2009년 03월 2009년 02월 2009년 01월 2008년 12월 2008년 11월 2008년 10월 2008년 09월 2008년 08월 2008년 07월 2008년 06월 2008년 05월 2008년 04월 2008년 03월 2008년 02월 2008년 01월 2007년 12월 2007년 11월 2007년 10월 2007년 09월 2007년 08월 2007년 07월 2007년 06월 2007년 05월 2007년 04월 2007년 03월 2007년 02월 2007년 01월 2006년 12월 2006년 11월 2006년 10월 2006년 09월 2006년 08월 2006년 07월 2006년 06월 2006년 05월 2006년 04월 2006년 03월 2006년 02월 라이프로그
| |||