shurain

Harmless stuff is for the weak.

스스로 작업 하는 모습을 관찰하기

Oct 23, 13

최근 Using Katas To Improve 라는 글을 읽었다. 이 글은 본인이 코드 카타1를 수행하면서 느낀 점에 대해 서술하고 있다. 꽤 흥미로우니 읽어보기를 추천한다. 하지만 내가 이야기 하고 싶은 것은 코드 카타가 아니다. 내가 위의 글에서 눈여겨 본 것은 코드 카타 이후에 이를 리뷰하기 위해 본인의 작업 화면을 녹화한 부분이다. 글쓴이는 녹화된 영상을 자신의 동료에게 보여주기도 하고, 비디오를 리뷰하면서 본인이 새로 알게 된 사실을 다시금 상기하는 용도로 사용하기도 했다. 어떤 용도가 되었든 본인의 작업 화면을 녹화하고 이를 리뷰하는 것이 매우 좋아 보였고, 나도 비슷한 시도를 해보게 되었다.

따로 코드 카타를 한 것은 아니고 이런 저런 프로그래밍 작업을 할 때마다 영상을 남기고 나중에 이를 리뷰하였다. 가장 먼저 눈에 띈 것은 내 작업 흐름을 방해하는 것들이었다. 여러 파일을 다루면서 매번 파일을 옮겨 다니는데 드는 불필요한 수고, 한 파일에서도 여기저기 움직이면서 하는 불필요한 행동 등이 보였다. 그 외에도 작업 도중에 "이거 답답해!"라고 생각했던 것이 영상을 보면 다시 떠올랐다. 리뷰를 통해 이런 것들이 보이면 그때그때 해결책을 하나씩 찾았다. 더 나은 방법이 있을 것 같은 부분은 플러그인 등을 찾아보고, 나쁜 버릇이 보이면 이를 자각하고 고치려고 노력하였다.

결과적으로 요 며칠 사이에 도구 사용의 능숙함이 급격하게 늘었다. 이미 설치했었지만 버벅이며 사용하던 VIM 플러그인 십여 개가 손에 익게 되었고 그 밖에 평소 작업에 사용하던 도구를 사용하는데 필요하던 노력이 많이 줄어들었다. 이렇게 되니 작업 능률과 별개로 일하면서 느끼던 도구로 인한 답답함이 많이 해소된 느낌이 들었다. 예상치 못했던 또 다른 장점도 있었는데, 딴짓을 덜 하게 된 점이다. 영상을 찍기 시작하고 작업이 한 단락 마무리가 되기 전까지 일에 집중하게 되는데, 이는 마치 뽀모도로 테크닉 을 사용한 것과 비슷한 느낌을 받았다. 그 외에도 도구적인 답답함을 느끼더라도 나중에 다시 돌아와서 해결할 것임을 알기 때문에 계속해서 일에 집중할 수 있었다. 여러 장점이 있기에 앞으로 한동안은 계속 이런 리뷰 작업을 하게 될 것 같다. 지금 느끼는 도구적인 답답함이 빠르게 해소가 되고 어느 정도 지역최적점에 도달하게 되면, 다른 종류의 답답함이 눈에 더 잘 보이기 시작하고 그것들을 고쳐나가게 되지 않을까 싶다.


  1. 코드 카타)에서 카타는 무술에서 "형(型 또는 形)"이라고 불리는 것의 일본식 발음이다. 코드 카타는 무술에서 정해진 움직임을 반복해서 연습하는 것을 프로그래밍의 영역으로 가져온 것이다. 처음 이를 제안한 토마스 데이브)는 우리 프로그래머들도, 마치 무술가들이 무술을 연마하듯 혹은 음악가들이 악기를 연습하듯, 같은 문제를 다양한 방법으로 접근하는 연습을 통해서 더 나은 프로그래머가 될 것이라 주장했다.