Unix Philosophy

Noun · Development

Definitions

  1. A set of design principles originating from Ken Thompson and Dennis Ritchie's work at Bell Labs, emphasizing: write programs that do one thing well, write programs that work together via text streams, and write programs to handle text (the universal interface). Summarized by Doug McIlroy as 'do one thing and do it well,' it is the philosophy behind composable tools like `grep`, `sort`, `awk`, and pipes.

    In plain English: The idea that software should be built as small, focused tools that each do one job well and can be easily combined together.

    Example: "Instead of building one monolithic tool, follow the Unix philosophy — write a small CLI that reads stdin and writes stdout, then pipe it into whatever you need."

Related Terms