카테고리 없음

프로그래밍 잘하기 - 1. 거짓말하지 않기.

zoops 2007. 9. 4.

얼마전 좋아하는 분들과 술자리를 가졌었다.  그분들도 프로그래밍을 하는 분들이기에 역시나 화제는 프로그래밍이였고... 프로그래밍 잘하는 것에 대한 이야기를 했었다.

그중 한분이 이렇게 말했다.

"거짓말하지 않으면 프로젝트는 잘 진행되요"

아... 마음에 와 닿는사람은 나 뿐인가??

 

자.. 만약에 공감을 한다면.... 이야기를 이렇게 풀어가야 한다고 생각한다.

"인간은 누구나 다 자신에게 유리한 거짓말들을 어느정도 한다."

이걸 인정하는것 부터 시작해보자.

 

거짓말을 하지 않고 현재 상태와 문제점 그리고 해결책을 제시하고.. 혹은 해결책을 찾지 못한 문제점이 있다면 문제점을 공표하여 알리고 해결책을 찾도록 하며 시간을 지키고 코드의 스팩을 지켜야 한다.

하지만 어떠한가... 이해가 잘 안되어도 "잘모르겠다" 소리를 하기 싫어서 그냥 넘어가는 경우가 비일비재 하며... 문제점을 혼자 안고 끙끙대다가 시간만 소비하던지... 해결책이 아닌 미봉책... 꽁수로 범벅된 결과물을 가져오던지... 시간을 지키지 못해 다른 자원의 대기를 유발하여 전체적인 프로젝트 성능을 저하시킨다던지...  이해하지 못하고 결과물을 만들어 인터페이스가 엉망이거나 붙일 수 없게 만든다던지...

 

정말 거짓말의 댓가는 어마어마하다.

 

자... 반성해보자.

나는 개인적으로 "잘모르겠다"란 소리를 잘하는 편이다. 내가 이해가 안되면 이해할때까지 물어보는 편이고 또 내 이해를 확인까지 하는 편이다.  문제점에 대해서는 공표하는걸 꺼려하진 않으나... 귀찮아서 혼자 찾는 편이고... 어쩌다가는 미봉책을 사용할때도 가끔 있다. 혹은 후에 다시 리펙토링 해야지.. 하고 넘어가서 그대로 정착되는 경우도 꽤 있다. 또 시간을 지키지 못하는 경우도 꽤나 있는데... 이는 스스로 일정을 잘못 책정했을 경우와 일정을 그런대로 잘 책정했으나 집중을 하지 못해서 시간을 낭비하는 경우... 두가지의 경우가 있다.  요새는 일정 책정은 요령이 좀 붙었으나.. 컨디션에 따라서 시간을 낭비하는 경우가 종종 있다. (예전엔 밤새서 낭비한 시간을 벌충하곤 했는데.. 점점 야근, 밤샘을 하지 않는것도 하나의 이유가 되겠다.) 이런 시간의 낭비도 거짓말의 한 종류가 되겠다. (근무시간에 이 블로깅도 낭비의 한종류.. 거짓말이 되겠다. )

 

자 반성해 보니... 나 또한 엄청난 거짓말쟁이이다.

 

제일 좋은것은 거짓말을 전혀하지 않고 능력있는 사람이 되어야 하고... 그런사람들과 일을 해야겠지만...

이세상은 그렇게 이상적이지 않다. 결국엔 나 같은 사람들이 모여서 프로젝트를 진행해야 하는것이 현실이라고 봐야한다.

 

그렇다... 결국엔 어느정도 인정을 해야한다.

하지만 인정을 해야한다는것이 용인하라는 것이 아니다.

어떻게 들릴지 모르겠지만...  사람이 로봇이 아니니...

제도적으로 거짓말을 줄일 수 있도록 만들어 놓으면 어떨까...

라는게 이 포스팅의 핵심이다.

 그러고 보니... "페어프로그래밍", "코드 리뷰", "잇슈, 버그 트래킹", "소스버전관리",... 등등의 방법이 그런 효과도 있지 않나 하는게 내 생각이다.

그런거 없이 코드를 만드는게 편하고 빠를지는 모르겠지만... 거짓말을 하고 싶게만드는 환경을 쉽게 만들어 준다.

하지만 이렇것들을 지키면서 개발을 하면.... 비록 하루하루 조금씩 귀찮고 시간이 더 걸리겠지만... (절약되는게 아니고... ) 거짓말을 줄일 수 있는 환경이 만들어 지는게 아닐까??

 

또한 잘못한것에 대한 질책이 아니라... 잘못을 숨기는것에 대한 질책, 또는 이해하지 못했지만 이야기 하지 않은것에 대한 질책.. 으로 진화해야한다.
잘못은 할 수 있지만... 잘못을 알고 숨기거나... 무엇을 해야하는지 이해하지 못한것을 숨기는것은 하면 안되는 것이다.

 

잘못을 했을때... 혹은 잘못을 발견했을때... 바로바로 공표하는것은 매우 중요하다.

그 때문에 시간이 딜레이 된다면 다른 자원들도 딜레이 시간에 다른 작업을 할당 할 수 있기에 더더욱 그렇다.  (빨리 공표하면 할 수록 좋다. )

조금만더.. 조금만더... 하면서 시간을 끌면 다른 자원들도 조금만... 조그만... 하면서 기다릴 수 밖에 없다. 낭비할 수 밖에 없다는 이야기다.

 

자... 결국엔... 거짓말을 하지 않는것이 중요하고... 시간과 노력을 조금 들이더라도 프로젝트에 거짓말을 없애기 위한 작업을 추가하는게 전체 프로젝트 진행에 도움이 되겠다는게 내 고민의 결론이다.

댓글