Signal vs. Noise 에서 스크랩 - Christopher Alexander on the difference between a fifty-year-old carpenter and a novice.
건축이나 모터싸이클 수리 같은 아날로그 시대부터의 전통이 있는 분야가 컴퓨터 공학의 프로그래밍 쪽의 메타포로 자주 사용되는데[1] 그 중 자주 인용되는 크리스토퍼 알렉산더의 “A Pattern Language”에서 따온 부분이 37 Signals에 있더라.
Along the way, he compares the work of a fifty-year-old carpenter with the work of a novice. The difference: The experienced craftsman plans less because he has learned to do things in a way that lets him make small mistakes. This gives his work “unconcerned simplicity.”
숙련된 목수는 조금만 계획한다 — 왜냐하면 일 자체를 거의 실수하지 않는 방향으로 하는 법을 알기 때문에.
이게 바로 “unconcerned simplicity” 다.[2]
초보/초심자들이 일 — 예를 들어 프로그래밍이라거나 :p — 을 할 때 계획을 세우려고 하는 것은 “실수 했을 때 바로 잡지 못할 까 두려워하기 때문” 이라는 것. 지금의 내게 딱 맞아 떨어지는 느낌 -_-;;
이렇게 하면 잘 안될지도 모르는데, 저렇게 하면 나중에 고칠 수 없을텐데?하면서 시간을 소모하고 있는 것. 숙련된(장인?) 목수는 일단 일을 시작해도 나중에 삽질한걸 덮을 수 있다는걸 알기 때문에 대범하게 작업할 수 있고, 나같은 초짜들은… Orz
뭐 별 수 있나, 더 경험하고, 더 생각하고, 더 공부하는 수밖에…
뭐…통찰력의 레베루가 다른것이겠지요 ㅎㅎ
그 통찰력을 쌓으려면…무한한 삽질을해야…(대운하를 팔 정도의? -_-;;)
고로 이모씨는 아직도 삽질중이니 통찰력이 없다!! (이상한 결론….ㅡ _-)
Written by kalstein on May 30, 2008 at 1:20pm
kalstein / LMB를 보면 통찰력을 쌓고 삽질을 해야할텐데, 지금까지 한 짓들을 보면 뭔가 배우면서 삽질한건 아니었던 모양이에요.
Written by rein on May 30, 2008 at 1:55pm
코드를 마구 찍어내다보면 생기는 끔찍한 일을 몇 번 겪다보니
무서워서 코드가 선뜻 나오지가 않는다능 ;ㅅ; …
Written by Dish on May 31, 2008 at 1:05am
Dish / 그런 류의 얘기를 하고 있는거지.
사실 TDD처럼 “이해가 가는 범위에서 조금씩 전진”한다는 것도 우리가 다루는 시스템을 “충분히 알지 못하기 때문”인 듯도 하고;
Written by rein on May 31, 2008 at 1:10am
일전에 맥OS 개발자 세미난가에 가서 저녁 먹는 자리에서 어떤 분이 “TDD고 머고 전부 범인을 위한 겁니다”라고 하셨는데, 개인적으로 무지 공감했다는. 천재한테는 방법론이 필요 없곘지. 천재가 일을 하는 방식이 방법론일 테니 ;; 근데rein도 천재 급인 거 같은데 ㄷㄷ.
그리고 무신경한 / 무심한 정도가 제일 원래 의미에 가까운 듯. 물론 좋은 번역어는 아닌 거 같음 ㅡㅡ;;
Written by 수원 on May 31, 2008 at 3:01am
수원 / 맞는 얘기 같아요
하지만 암벽등반 쌩초보가 자일도 없이 암벽을 오를 수는 Orz
번역은 반역이라…
Written by rein on May 31, 2008 at 8:43am
아시모프의 생각... 숙련자와 초짜의 차이(숙련된 목수는 조금만 계획한다 — 왜냐하면 일 자체를 거의 실수하지 않는 방향으로 하는 법을 알기 때문에. ) ...
Pingback from silverktk's me2DAY on June 04, 08 at 10:53am
Jump to comments