好物日記

本を読んだり美術館に行ったりする人の日記

マイク・ガンカーツ『UNIXという考え方』を読みました

UNIXという考え方―その設計思想と哲学

UNIXという考え方―その設計思想と哲学

元IT系職種だった父親がもともと持っていたのを貰ってきたお下がり本です。非常に面白かった。

多分IT系の仕事をしていないと使う機会はまずないであろう「UNIX」というOSについて、熱く語っている本です。そもそもUNIXというのはこういう考えをベースに作られているんだ!だからうまく使ってね!という内容です。アメリカンなノリが随所に見られて面白い。

性質上、全体的にアプリケーション開発者向けの話が多いです。私の仕事はサポートなので実際に製品を作るわけではないんですが、それでも首を大きく縦に振りたい箇所がちょくちょく出てきます。小さいものは美しい、できるだけ早く試作する、効率より移植性を優先する、などの「定理」はアプリケーション開発だけにとどまらず、あらゆる作業に適用可能でしょう。過度の対話的インターフェースを避ける、というのはある程度フィールドを選ぶけど、それでもやはり真理だと思う。
私はOSのサポートをしているわけではないのでUNIX自体はほとんどわからないのですが、それでもこの本で書かれていることはよくわかる。UNIXはコマンドの出力を扱う対象を、人ではなくプログラムとして想定しているというのはものすごく納得しました。いずれ人のスピードでは追いつけなくなるだろう、というのも。

私はIT業界の人間なので、科学技術の進歩による人間世界の未来に希望をもっています。どうやらロボットに仕事を取られると心配する人もいるようですが、大丈夫です、コンピュータは指示されたことしかできません。逆にいうと、指示さえ正確ならめっちゃ早く仕事を終わらせてくれる。これを使わない手がありますか!浮いた時間に別のことしましょう!
しかし、命令するのは「人」です。だからこそ我々IT業者は「いかに手間をかけずに命令を下すか」を工夫していく必要があるわけですが…本書にも書かれているように機能を盛り込みすぎても結局使わなかったり致命的な不具合を生んだりというのは、あるんですよね。とはいえ3歩進んで2歩下がるようなスピードでも、ちょっとずつ良くなっているのでご安心ください。

多少パフォーマンスを犠牲にしても明日にはより性能の良いコンピュータが生まれるだろう、という右肩上がりを前提としている著者は楽天的なようにも見えますが、実際その通りなんですよね。量子コンピュータとか、なんなんですかね、あれ。0と1が同時に存在するって意味わからなくてワクワクするんですが!実用化のニュースを聞くたびおおお、と思う。未来はすぐそこに。だから「今」を基準にしてガチガチにシステム組んじゃうよりも、今後の技術の発展を見越して「遊び」の部分を計上しておくことはすごく大事だと思います。今だけで設計しないほうがいい、絶対そのほうがいい。いずれサーバーをリプレースすることを想定したほうがいい。

自分で全部一から作ろうとしなくていい、有用なものはシェアしようぜというのが基本的な考えであるというUNIXの自由なスタイル、好きです。すごく合理的で気持ちがいい。こうして技術は進歩していくんだよなぁ、いいなぁ。

とはいえちょっと内容が古めかしいのは、まぁ、古い本なので。古い本は当時の技術レベルを前提に読む必要があるので鮮度は落ちるけど、いい本はだいたい古くてもコアの部分が共通しているのでなんの役にも立たない、なんてことはない。いい本ほど共通点は多い。本当に小手先の技術しか書いていない本だったらもう読めないでしょう。


プログラミングもやってみたいな、とうっかり思ってしまう一冊でした。明日からも仕事頑張ろう。