UNIX哲学
Unix開発者によってまとめられてきましたが、以下は1994年、マイク・ガンカーズによってまとめられたもののうち、制作ツール開発に直接関係しそうなものの抜粋です。
定理1:スモール・イズ・ビューティフル
小さなプログラムは分かりやすい
小さなプログラムは保守しやすい
小さなプログラムはシステムリソースにやさしい
小さなプログラムは他のツールと組み合わせやすい
巨大で複雑なプログラムの開発者は、「将来が予想可能で、そして現在とそう大きくは変わらない」という勝手な思い込みを前提としている。(P.22)
定理2:一つのプログラムには一つのことをうまくやらせる
新しい仕事をするために、新しい「機能」を追加して古いプログラムを複雑にするのではなく、新しいプログラムを構築する。(W)
定理3:できるだけ早く試作を完成する
定理4:効率より移植性
定理9:すべてのプログラムをフィルタにする
すべてのプログラムの出力が、まだ見ぬべつのプログラムになることを期待する。出力に余計な情報を入れない
さらなるUNIXの考え方
小定理1 好みに応じて自分で環境を調整できるようにする
アプリケーションに十分な柔軟性があれば、ユーザーはそのアプリケーションをできるだけ使いやすくしようと、その方法を学ぶことに時間をかける。そして、自分で調整した環境に馴染めば馴染むほど、調整が難しかったり出来なかったりする環境には移りたがらない。(中略)最初は、あまりの柔軟性にユーザーはとまどい、選択肢の多さに圧倒されるかもしれない。しかし、最後には、多くのオプションを利用するほうを選び、その学習に時間をかける。
小定理7: 部分の総和は全体より大きい
小定理8 90%の解を目指す
小定理9 階層的に考える
出典