Unix Philosophy
Feb 23, 15
도구는 문제를 푸는데 방해가 되어서는 안 된다. 간단한 문제도 풀기 위해 여러 층위와 단계의 생각을 옮겨 다니게 된다. 좋은 도구는 각 단계에 알맞은 생각에 집중할 수 있게 해준다.
This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.1
하나의 도구가 하나의 맡은 일을 잘하고 도구가 서로 맞물려서 일하기 좋다면 복잡한 문제도 상대적으로 쉽게 풀 수 있다고 믿는다. 하나의 도구를 손에 들면 하나의 생각과 하나의 과정에만 집중하면 된다. 도구 사이의 협업이 쉽다면 생각과 과정의 전환도 자유롭다.
도구는 하나의 환경이 된다.2 도구가 제공하는 환경에 적합한 생각은 방해받지 않고 자랄 수 있다. 이렇게 자라난 생각이 다른 환경으로 이주하기 쉬워야 더 큰 생각을 키울 수 있다.