tactics:unix-philosophy
This is an old revision of the document!
Unix Philosophy
The Unix Philosophy is a set of OS design principles first conceived by Unix architect Ken Thompson, based on the experiences of the Unix development team. The Unix Philosophy emphasizes the importance of single-purpose applications written with simple & reusable code, so that it can be easily maintained and repurposed by developers other than its creators.
While Unix has largely been superceded by its descendants such as Linux and BSD, the Unix Philosophy still informs the decisions made by influential developers & the open-source community to this very day.
It is best summarized by programmer Eric S. Raymond in his book The Art of Unix Programming:
The ‘Unix philosophy’ originated with Ken Thompson's early meditations on how to design a small but capable operating system with a clean service interface. It grew as the Unix culture learned things about how to get maximum leverage out of Thompson's design. It absorbed lessons from many sources along the way.
The Unix philosophy is not a formal design method. It wasn't handed down from the high fastnesses of theoretical computer science as a way to produce theoretically perfect software. Nor is it that perennial executive's mirage, some way to magically extract innovative but reliable software on too short a deadline from unmotivated, badly managed, and underpaid programmers.
The Unix philosophy (like successful folk traditions in other engineering disciplines) is bottom-up, not top-down. It is pragmatic and grounded in experience. It is not to be found in official methods and standards, but rather in the implicit half-reflexive knowledge, the expertise that the Unix culture transmits. It encourages a sense of proportion and skepticism — and shows both by having a sense of (often subversive) humor.
tactics/unix-philosophy.1757495852.txt.gz · Last modified: (external edit)
Find this page online at: https://bestpoint.institute/tactics/unix-philosophy
Find this page online at: https://bestpoint.institute/tactics/unix-philosophy