Thursday, September 14, 2006

어떤 개발툴이 좋은 개발툴인가?

어떤 개발툴이 좋은 개발툴인가?


내가 자유게시판을 두루 읽었다는 사실은 지난 번의 글에서 밝혔다.
그렇다. 나는 자유게시판을 처음부터 끝까지 읽었다.

할일이 없었던 것일까?
그랬었다. 회사에 입사하고선 할 일이 없었었다.

...


자유게시판을 들여다보니 어떤 개발툴이 좋은지 많은 말들이 오갔었다.
"명필은 붓을 가린다"에서 "둥근붓3호"에 이르기까지 여러 의견이 있었었다.

이 자리를 빌어 나의 생각도 말해 보고자 한다.

흔히 소프트웨어 개발은 건축의 그것에 많이 비유되곤한다.
디자인 패턴도 건축의 역사에서 나온 것이라고 한다.
집을 짓기 위해 설계를 하고 그 설계를 기초로 하여 뼈대를 만들고
벽을 쌓고 ... 내장재로 마감을 하고 문도 달고 그래서 집이 완성된다.
SI는 맞춤형 집짓기, 팩키지개발은 복사할 수 있는 가구 만들기?

그렇다면 개발자는 목수쯤 되지 않을까?

목수는 톱도 쓰고 망치도 쓴다.
개발자도 개발툴을 쓴다.

어떤 톱을 쓰십니까? 어떤 망치를 주로 사용하십니까?
어떤 개발툴로 주로 개발하십니까?

뭔가 비슷하지 않는가?

요즘은 일반톱 대신 기계톱(또는 전기톱)을, 보통 망치 대신 에어로 못을 쏴주는 망치를 많이 쓴다.
생산성이 비교가 안되기 때문이다.

요즘은 개발툴을 주로 4GL을 많이 쓴다.
생산성이 비교가 안되기 때문이다.


그러나, 나무를 어떻게 재단하여 어디를 얼마만큼 잘라야 제대로 된 집을 지을 수 있는지
설계자는 왜 이곳에 버팀목을 두는 것인지, 전기배선이 먼저 되고 콘크리트를 칠 것인지,
수도배선을 언제 들어가야 하고, 하수도와 상수도는 분리 해야 하는 것인지 아닌지 등에
관해서 말하자면 기계톱이든 어떤 브랜드제품의 톱이든 상관이 없다.

마찬가지로 손 망치든 에어망치든 못을 어디에 박아야 하는지 어떻게 박아야 튼튼하게 고정이 되는지,
왜 이곳에 못을 3개 박는지 못의 두께는 얼마짜리를 넣어야 하는지 못의 재질은 어떤걸 써야 하는지,
나사못이어야 하는지 같은 정보는 망치라는 툴과는 별개다.

새로 나온 복잡한 망치2006과 창문 톱을 잘 사용하는 법은 사용 설명서를 제대로 읽어보고
톱으로는 나무를 많이 잘라봐야 하고, 망치로는 못을 많이 박아봐야 한다.
간혹 설명서를 외우려는 사람이 있다. 물론 설명서를 읽지 않고서는 망치질 자체를 할 수 없다.
하지만, 설명서를 외운다고 망치질 고수가 되지는 않는다. 설명서를 이해하고 톱질, 망치질을 많이 하라.
나무를 잘라보고 나무의 재질을 파악해서 어떻게 잘라야 절단면이 더 잘 나올지 고민하라.
그리고 왜 그렇게 절단하는지 왜 그곳에 못을 박는지를 이해하라.
그리고 나면 어떤 톱이나 망치든 사용설명서만 읽으면 사용할 수 있을 것이다.


하지만, 손에 잘 맞는 망치와 톱은 분명히 있다. 서양 망치는 우리의 것 보다 크다.
서양 톱은 밀 때 잘리게 만들어져 있고, 우리 것은 당길 때 잘리게 되어 있다.
객관적으로 어떤 톱이 더 잘 잘린다는 데이터가 있더라도 내 손에 잘 맞는 툴이 있다면 그걸로
잘라라. 그걸로 못질을 하시라.

망치와 톱을 주로 만들든 회사의 제품이라면 손에 잘 맞을 지도 모르겠다.


PS. 톱을 사용할 때는 얼마간 자른 다음에는 쉬면서 힘을 보충하고 톱날을 세워라.
바쁘다 하면서 톱질만 계속하지 않는지 생각해보라.
매일 야근을 한다면 톱질만 계속 하고 있는 게 분명하다.

No comments: