또 다른 시간의 자신과 경쟁하는 것은 쉬운 일이 아니다.
소프트웨어 개발을 하다 보면
예전에 만들었던 것에 손을 대야 하는 경우가 있다.
흘러간 시간만큼 새로운 것들을
경험했고,
이해했기 때문에
과거의 것들은 이미 조악한 것들이 되어있기 마련이다.
그래서
모니터 밖에 있는 지금의 나는 점령군이 되어
과거의 내가 만든 것들을 거침없이 유린한다.
새로운 코드는 훨씬 빠르게 완성됐고,
과거에 대한 자신감은 세련된 코드를 과시한다.
그런데
문제는 이제부터다.
정작 해결해야 할 문제는 그대로 있거나,
다른 양상으로, 예상 밖의 장소에서 출몰하는 것 아닌가?
꼬리에 꼬리를 물고 달려드는 문제들의 흔적을
정신없이 처리하면서 도달한 곳은 아뿔싸,
원점이었다.
그제서야 과거의 궤적이 주마등처럼 지나가고
마치 어리석은 미래를 예측이나 한 것처럼
커서는 깜빡 깜빡거리며 절망적으로 오르내리는 스크롤을 비웃는다.
정신을 차려보니 이 문제의 해결을 위해 배정한 시간이 훌쩍 넘어서고 있었다.
3개월만 지나도,
자기의 코드는 남의 것이 되어버린다.
과거에 대한 섣부른 자만과
미래에 대한 조급증은
과거의 노력에 비해 터무니 없는 집중력과 시간을 들여
과거를 인수하려 드는 것이다.
현재는 전 인생을 통털어 가장 뛰어나지만,
과거의 밀도는 언제나 현재를 압도한다.
과거가 현재를 가로막아서는 안되지만
현재 역시 과거를 존중해야 한다.
이 바닦에는 레거시(legacy)라는 말이 있다.
레거시란 과거로부터 물려 내려온 '유산'을 의미한다.
좋은 제품은 어떻게 만들어지는가?
(여러가지 답이 있겠지만)
레거시를 다루는 솜씨에 달려있다.
과거와 현재의 긴장은 필요하다.
그것이 없다면 미래는 현재에, 현재는 과거에 지배당하고 말 것이다.
그러나 동시에 과거와 공존하지 않는 현재는
무의미한 동어반복만을 미래에게 물려줄 뿐이다.
우리는 또 다른 시간에 살고 있는 또 다른 자신과 경쟁 하고 있지만
동시에 공존하고 있다.
태그 : 