- 사소한 자동화를 반복하다 보면 어느 순간 모든 도구와 시스템이 고쳐야 할 대상으로 보이게 되는 인지의 임계점에 도달하게 됨
- 기술력이 쌓일수록 문제를 단순히 인식하는 것을 넘어 책임처럼 느끼게 되는 감정의 무게를 가지게 됨
- 고치고자 하는 욕구는 단순한 생산성 향상을 넘어서 감정 조절의 수단이 되기도 하며, 때론 자신이 만든 시스템에 스스로 갇히는 결과를 낳음
- 시스템은 시간이 지나며 반드시 망가지고, 완전한 해결이라는 환상은 존재하지 않음
- 결국 진짜 필요한 기술은 모든 것을 고치는 능력이 아니라, 무언가를 고치지 않고도 견딜 수 있는 마음의 여유임
시작은 사소한 자동화
- 파일 이름을 바꾸는 파이썬 스크립트나
git명령어 단축 등 작은 생산성 향상 작업에서 시작됨 - 시스템의 불편을 직접 고치고 나면, 세상의 모든 것들이 개선 대상처럼 보이기 시작함
- 어느 순간부터는 “할 수 있다”를 넘어 “해야 한다”는 도덕적 강박감으로 전환됨
기술력의 무게감
- 프로그래밍 이전에는 불편한 소프트웨어를 그냥 넘길 수 있었지만, 이제는 문제점이 선명히 보임
- 개발자가 만든 허술한 코드나 하드코딩된 설정들이 비난처럼 느껴짐
- 모든 시스템과 소프트웨어가 고쳐야 할 TODO 리스트로 보이는 인식 전환이 일어남
계속되는 리팩터의 삶
- 매번 “이건 내가 더 잘 만들 수 있어”라는 생각으로 자기만의 도구 개발에 빠져듦
- 정리되지 않은 코드 디렉토리, 무수한 시도와 포기, 끝없는 구조 재설계는 자기 구속적 노동이 되기도 함
- Kafka의 “새장을 짓고 새를 기다리는 것”이라는 비유처럼, 목적 없는 도구 제작에 빠져들 수 있음
소프트웨어는 썩는다
- 완벽해 보이던 스크립트도 언젠가 외부 변화로 인해 무용지물이 됨
- 웹사이트 레이아웃 변경, 패키지 버전 변경, 의존성 오류 등
- 문제 발생 시 단순 불편이 아닌 죄책감을 느끼게 됨
- 결국 지속적인 관리가 필요하다는 현실과 마주하게 됨
자동화라는 환상
- “한 번만 세팅하면 다시 안 건드려도 된다”는 거짓된 희망을 자주 품게 됨
- 프로그래밍을 문제 해결의 승리로 생각하지만, 끝나지 않는 전쟁일 뿐임
- 완성이라는 개념은 없고, 언제나 침수되는 참호를 파고 있을 뿐임
감정 조절의 수단이 된 코딩
- 도구를 만드는 행위는 때론 삶의 혼란을 통제하려는 심리적 반응임
- 시스템이 복잡할수록 오히려 자신이 정돈된 느낌을 받음
- 복잡한 삶을 피하기 위해 새로운 앱이나 리팩터링을 시도하며 자기 위안을 얻음
예고 없는 번아웃
- 번아웃은 단순한 과로보다 과도한 책임감에서 비롯됨
- “내가 고칠 수 있는 걸 왜 안 고치지?”라는 자기 비난이 스트레스를 가중시킴
- 끝없는 기술적 책임감은 자기파괴적인 부담으로 작용함
내려놓는 기술 배우기
- 모든 문제를 해결할 필요는 없음
- 때론 고치지 않아도 된다는 사실을 아는 것이 더 큰 통제력임
- 결함을 인정하고, 그냥 쓰는 것도 의식적인 선택이 될 수 있음
진짜 기술은 감정의 명료함
- 고칠 수 있는 기술보다 고치지 않아도 되는 마음의 기술이 더 중요함
- 언제 멈춰야 하는지, 어떤 프로젝트는 자기 위안용인지 구별하는 능력
- 모든 것을 고치려는 강박에서 벗어나, 불완전함 속에서도 편안함을 찾는 태도가 필요함
결국 프로그래밍에서 가장 어려운 기술은,
"망가진 것을 그냥 두는 법" 을 배우는 일임