2004년 9월 30일 목요일

법의학자(forensic scientist)

디버깅을 하다보면 법의학자가 된 기분이 든다.
시체를 해부하고, 구더기를 만나고, 이상하고 지저분하고 형체를 알 수 없는 것들이 가득하다.
Memory 등의 dump 파일을 보면 정말 쓰레기가 따로 없다.


log 파일을 이리저리 해부하다보면 정신이 하나도 없다.
그래프 같은 걸로 잘 그려두면 쉬울거라는 생각도 들고
test code가 많이 있었다면 쉽게 디버깅할 수 있을 꺼라는 생각도 든다.
수없이 print 문을 집어 넣고, dump하고 log 남기고 정신이 없다.


깨진 파일을 맞추고, 고장난 하드를 다시 포멧하고 자료를 복구하는 건
마치 조각난 시체를 꿰매어 맞추는 것 같기도 하고
종이장처럼 되버린 도로위의 차를 가져다가 사건을 재구성하는 것 같다.


가장의 시나리오를 설명하고 그것이 맞는 지, 검증하고 다시 되돌려보고..
그런 일을 수없이 반복한다.


누가 범인인지, 누가 버그의 원인인지 찾기 위해 노력한다.
"범인은 이 안에 있어." = "버그는 내가 짠 코드 중 몇 줄 일게 분명해."
"범인은 반드시 다시 찾아오지." = "버그는 반드시 재현되지."
"사망 추정시간이 xx시" = "음.. 몇 시쯤에 장애가 났군."
"목격자의 진술에 따르면.." = "모니터링팀, 관리자, 사용자의 보고에 따르면.."

댓글 없음:

댓글 쓰기