Linuxが少し好きになった
Linuxってむずかしい。
自己紹介でも書いたが、私は大学時代にLinuxがわからなすぎて挫折した人間だ。
でも、ラズパイを触ってみたり、LinuxのCentOSを触ることで、少しずつ使えるようになってきた。
そして、この本「Unixという考え方」を読んで、Linuxの理解がさらに進んだ。
- 作者:Mike Gancarz
- 発売日: 2001/02/01
- メディア: 単行本
この本はイントロダクションと第1章が肝心。
UNIXの創造者たちは、ある極端なコンセプトから始めた。ユーザーは初めからコンピュータを使えるとみなしたのだ。UNIXは「ユーザーは自分が何をしているかをわかっている」との前提に立っている。(中略)UNIXの設計者たちは「何をしているか分からないのなら、ここにいるべきではない」という不適切きわまりないアプローチを選んだ。
そう。
この文章からわかるように、Unixは玄人向けに設計されている。だから、遊ぶために大学に通っていた僕に、Unixの兄弟みたいなLinuxがわかるはずがなかったのだ。
そして、Unixの9つの定理で成り立っている。(他にも重要度の低い定理が10つある)
- スモール・イズ・ビューティフル(小さいものは美しい)
- 一つのプログラムには一つのことをうまくやらせる
- できるだけ早く試作する
- 効率よりも移植性を優先する
- 数値データはASCIIフラットファイルに保存する
- ソフトウェアを梃子(てこ)として使う
- シェルスクリプトによって梃子の効果と移植性を高める
- 過度の対話的インターフェースを避ける
- すべてのプログラムをフィルタとして設計する
この中の第3章はおすすめである。
すべてのシステムは、若年期から始まり、成熟期を経て、老年期に達して一生を終える。
・ 第一のシステムは追いつめられた人間が作る。
・ 第二のシステムは委員会が設計する。
・ 第三のシステムは第二のシステムで「火傷」した人が作る
この引用した項目を説明している内容が非常にためになった。
話は少し変わるが「スモール・イズ・ビューティフル」や「一つのプログラムには一つのことをうまくやらせる」のようなUnixの設計思想は、Node.jsに受け継がれている。これはO'REILLYのNode.jsデザインパターンに記載されている。
- 作者:Mario Casciaro,Luciano Mammino
- 発売日: 2019/05/18
- メディア: 単行本(ソフトカバー)