UNIX哲学
1994年、マイク・ガンカーズ(X Window System開発チームの一員)は、UNIXで得た経験と、同僚プログラマーや他分野のUNIX利用者との議論を活かし、以下9つのUNIX哲学を創出した:
スモール・イズ・ビューティフル (小さいものは美しい)
各プログラムが一つのことをうまくやるようにせよ
できる限り早く試作せよ
効率よりも移植しやすさを優先せよ
単純なテキストファイルにデータを格納せよ
ソフトウェアを梃子(てこ)として利用せよ
梃子の効果と移植性を高めるためにシェルスクリプトを利用せよ
過度の対話的インターフェースを避けよ
すべてのプログラムをフィルタとして設計せよ
以下の教義は重要性が比較的低いとされ、UNIX哲学として普遍的に合意されるものではなく、場合によっては現在も激しく議論されている(例:モノリシックカーネルとマイクロカーネル)。
好みに応じて自分で環境を調整できるようにせよ
OSのカーネルは小さく軽量にせよ
小文字の短い名前を使え
森林を守れ
沈黙は金なり
並行性を考えよ
部分の総和は全体よりも大きい
90パーセントの解決を模索せよ
劣るほうが優れている (より悪いことは、より良いことだ)
階層的に考えよ
インターフェースデザインにおいては、常に驚きが最小限であるようにせよ。
開発者はユーザーが期待する潜在的な知識の上に構築されるプログラムを設計する必要がある。例えば、電卓のプログラムでは、'+'は常に足し算を意味するはずである。開発者が直感的に使いやすい製品を作ることを奨励することを目的とする。