무부심 프로그래밍 십계명
무부심 프로그래밍 십계명
코딩 호러의 글 The Ten Commandments of Egoless Programming을 무부심 프로그래밍 십계명이라는 이름으로 옮겨봤다.
무부심이라는 표현은 법정 스님의 무소유에서 따왔다.
무소유는 소유하지 말자가 아니라, 불필요한 소유에서 벗어나자는 것이다.
마찬가지로 자부심을 갖지 말자가 아니라, 불필요하게 지나친 자부심에서 벗어나자는 뜻에서,
Egoless를 무부심으로 옮겼다.
1. 실수한다는 점을 이해하고 받아들여라
실수하지 않을 수는 없다. 실수가 실제 운영 코드에 스며들기 전에 찾아내는 것이 핵심이다.
다행스럽게도 극히 일부를 제외한 우리 대부분은 실수하면서 일을 한다.
그러니 우리는 실수에서 배우고, 웃고, 털어버리고 한 걸음 더 내디디면 된다.
2. 너 자신과 너의 코드를 구별할 줄 알라
리뷰의 목적은 오직 문제 발견 뿐이다. 그리고 문제가 있다면 발견이 된다.
내가 짠 코드에서 문제가 발견된다면 그저 문제가 있는 코드를 발견했을 뿐이다.
그러니 내가 짠 코드에 숨어있던 문제를 나 자신에 대한 문제라고 생각하지 말자.
이건 내가 아니라 동료에 대해서도 마찬가지다.
3. 고수는 분명히 존재한다
물어보면 고수는 답을 해줄 수 있다. 그러니 다른 사람들에게 묻고 받아들여라.
특히 물어볼 필요가 없다고 생각할 때에도 묻고 받아들여라.
4. 의논 없이 문제 없는 코드를 고치지 마라
잘못된 코드를 고치는 것과 잘 실행되는 코드를 다른 스타일로 재작성하는 것은 미세하게 다르다.
그 차이를 이해하고, 코드 스타일은 혼자서 강제하지 말고 코드 리뷰를 거친 후에 바꾸자.
5. 잘 모르는 사람도 존중, 존경, 인내를 갖고 대하라
개발자와 정기적으로 협업하는 대부분의 비개발자는, 개발자는 좋게 말하면 자기가 무척 잘난 줄 착각하는 사람이고, 나쁘게 말하면 울보 어린아이 같다고 생각한다.
참을성 없이 걸핏하면 화를 내면서 이런 고정관념을 고착화하는데 일조하지 말라.
6. 세상에서 변하지 않는 유일한 사실은, 변한다는 사실뿐이다
변화에 마음을 열고 웃으면서 받아들여라.
요구사항, 플랫폼, 도구 등 모든 것은 변하기 마련이다. 변화를 싸워서 물리쳐야할 대상으로 생각하지 말고 새로운 도전이라고 생각하라.
7. 진정한 권위는 지위가 아니라 지식에서 나온다
지식에는 권위가 따라오고, 권위에는 존경이 따라온다. 따라서 무부심 세상에서 존경을 받으려면 지식을 연마하라.
8. 신념을 위해 싸우되 패배도 받아들여라
너의 의견은 거절될 수도 있다. 나중에 너의 의견이 옳았다고 판명되더라도 복수하거나 ‘거봐 내 말대로 했어야지’ 같은 얘기를 여러 번 하지 마라.
아깝게 버려진 너의 의견을 순교자인 것처럼 미화하거나 강령으로 내세우지 마라.
9. 골방 개발자가 되지 마라
콜라를 살 때만 방 밖으로 나오는 골방 개발자가 되지 마라. 개방적으로 협력하는 세상에는 연락도 안 되고, 보이지도 않고, 제어할 수도 없는 골방 개발자를 위한 자리는 없다.
10. 사람이 아니라 코드를 비평하라 - 코드에게 친절하지 말고 코드를 작성한 사람에게 친절하라
가능한 모든 의견을 긍정적으로 표현하고 코드를 개선하는 방향으로 전개하라. 현재 상황에서 정해진 표준, 규격, 성능 개선 등을 바탕으로 의견을 개진하라.