The Unix philosophy originated with Ken Thompson as a set of approaches to software development based on the experiences that he had in leading the developers of the Unix operating system. The philosophy emphasizes building short, simple, clear, modular, and extendable code that can be easily maintained and re-purposed by others.
“This is the Unix philosophy: Write programs that do one thing and do it well. Write programs that work together. Write programs that handle text streams, because that is a universal interface.”
–Doug McIlroy
Richard P. Gabriel suggests that a key advantage of Unix was that it embodied a design philosophy he termed “worse is better”, in which simplicity of both the interface and the implementation are more important than any other attributes of the system—including correctness, consistency, and completeness.