역시 세상은 자동화되어야 한다.

1. 오늘 아침 오랜만에 뱅뱅사거리에 가야 할 일이 있었다. 뱅뱅사거리보다 조금 북쪽에 있는 강남역 근처는 아침부터 사람이 많지만, 뱅뱅사거리는 보통 사람이 그닥 많지 않다. 보통 강남역에서 오는 방향으로 차가 조금 있을 뿐이지 다른 방향에는 차가 거의 없다.
 그런데 오늘은 뭔가 달랐다. 뱅뱅사거리에 도착하기 한참 전부터 차가 밀려있었다. 전 직장이 뱅뱅사거리에 있어서 거의 1년 반을 출퇴근했지만 이렇게 밀린 적은 처음이었다. 이유가 뭔지는 뱅뱅사거리에 도착해서야 알 수 있었다. 뱅뱅사거리의 신호등이 네 방향 모두 정지되고 경찰관 두 분이서 교통정리를 하고 있으셨다. 두 분이 수고하고 계셨지만, 역시 교통은 신호등이 있을 때 만큼 잘 정리되지 않았고, 결국 네 방향 모두 차가 밀리는 상황이 되었던 것이다.
 평상시에 별로 신경 쓰지 않고 지나가는 신호등이지만, 교통량을 기반으로 대기 시간을 최소화하기 위한 최적의 시간으로 설계되어 있다. 문제가 생길 때까지 그 존재를 신경 쓰지 않아도 된다는 점에서 보면, 가장 잘 구현된 자동화 시스템의 하나가 아닐까 한다.

2. 자동화. 좋은 울림이다. 다른 사람들은 모르겠지만, 프로그래머에게 자동화는 세상 무엇보다 중요한 단어이다. 모든 프로그래머는 자동화를 위해 존재한다고 할 수 있다. 워드나 유틸리티는 물론이고, 게임조차 과거 주사위를 돌리고 판을 정리하던 것을 자동으로 할 수 있도록 자동화한 것이라고 볼 수 있다.

3. 좋은 프로그래머가 갖춰야 하는 덕목으로 무엇 하나만 고를 수는 없다고 생각한다. 하지만 자동화는 분명 좋은 프로그래머가 갖춰야 할 덕목 중 하나라고 생각한다. 아니 덕목 중 하나가 아니라 최소 조건이라고 생각한다. 내가 사용하는 도구의 장점과 한계를 인식하고, 내가 해야 할 작업 중 반복적인 패턴을 찾아내서 자동으로 반복될 수 있는 일을 추출해내는 것을 할 수 없다면 다른 일을 잘하더라도 결국 좋은 퍼포먼스를 낼 수 없다. 사소하고 중요하지 않은 일에 너무 많은 시간을 뺏기기 때문이다.

4. 작업을 자동화하는 것만큼 중요한 것이 작업을 간소화시키기 위한 적절한 도구다. "장인은 연장 탓을 하지 않는다."라는 말을 빌려서 도구는 중요한 게 아니라고 말하는 사람도 있다. 하지만 절대 아니다. 틀렸다. 저런 말 절대 믿지 마라. 자신이 갈고 닦은 칼을 쓰지 않는 주방장을 봤는가? 자신의 끌을 가지고 있지 않은 목수를 믿을 수 있겠는가? 만화 그리는 사람이 고액의 펜촉을 사거나, 그림을 그리는 사람이 좋은 붓을 사는 데는 다 이유가 있다. 물론 장인이라면 좋은 도구가 없어도 어떻게든 작업을 완성할 것이다. 하지만 그렇게 나온 작품이 그 장인의 실력 전부라고 생각하면 안 된다.

5. 도구 얘기를 하니까 갑자기 전에 알바로 일했던 회사가 생각나서 화난다. 그 회사는 뭐랄까 도구를 잘못된 방향으로 사용했다. 뭐랄까 툴로 해결 해야 할 문제를 손으로 해결하고 사람의 손으로 해야 하는 것을 툴로 해결했다.
 버전 컨트롤 시스템으로 Source Safe라는 구시대의 유물을 사용했는데, 그나마도 제대로 사용하지 못했음은 물론이고, 유지보수라는 명목으로 추가 요금을 받기 위해 파견을 많이 나갔는데, 파견 나간 회사에서는 SourceSafe를 사용할 수 없어 이메일로 코드를 주고받았다. 당연히 파견지의 소스와 회사에서 가지고 있는 소스가 달라졌고, 이 차이때문에 꾸준하게 문제가 발생하면서 그 상황을 당연한 상황이라고 인식하고 해결하려는 노력도 하지 않았다.
 IDE로는 Visual Studio를 사용했는데, 솔직히 내가 Vim과 GDB를 이용하는 것보다 더 간단한 기능들만 사용했다. bookmark나 함수의 선언을 찾아가는 단축키는 당연히 몰랐고(일부는 그런 기능이 있다는 것도 몰랐다.) 리팩토링 관련된 기능은 설명을 해줘도 왜 필요한지 이해를 못 했다.
 가장 짜증 나는 것은 손으로 해야 할 것을 도구를 이용해 했다는 것이다. 코드의 작성을 템플릿 코드만을 이용하기 때문에 자신이 작업하는 코드가 어떻게 돌아가는지 실제 디버거를 붙여서 돌려보지 않으면 모르고, SQL이나 Regular Expression은 쓰기는커녕 읽지도 못해서 GUI 툴을 이용해야만 작업이 가능한 사람이 절반은 됐다.
 3년도 넘은 이야기지만 아직도 그 회사만 생각하면 자다가도 열 받아서 잠이 깬다.

p.s. 뭔가 말하다 보니 다른 사람 욕하는 얘기로 새버렸다. 욕을 더 하고 싶은데 길어질 것 같으니 다음 기회에 다른 글로 적도록 하겠다.

댓글

이 블로그의 인기 게시물

스팀에 영어지원 안 하는 게임은 얼마나 있을까?

노트북 하판에 구멍내기

노트북 상판 뜯기

도메인 이전했습니다.

구독하던 블로그들을 정리했다