『ふつうのLinuxプログラミング』

 『ふつうのLinuxプログラミング』を読み終えた。Amazonによると

お客様は、2013/10/26にこの商品を注文しました。

とのことで、読み終えるまでに2年間掛かっている。実際には2年間ずっと読んでいた訳じゃないけれど。

 基本的にはC言語でのLinuxシステムプログラミングの初歩を取り扱った本で、最終的には簡単なHTTPサーバを作るところまでいく。それまでに取り扱ってきたsignalやforkやらsocketやらが使われていて、本文にもあるとおり本書の内容の総決算といった感じ。
 内容として、決して深くはないと想像されるけど、最初のとっかかりとしてはいいんだと思う。少なくとも最初の何も知識が無いところから比べたらだいぶ良い。

 本書に限らない感想としては、「C言語でのシステムプログラミングがこわい」というものがある。
「この関数は危険なので使わない」「この関数はこういう風に使う。間違えないように」「この関数は古いので使われていない」など、互換性の名の下に積み上げられた歴史的経緯が、ここまで複雑なシステムを作り出したのだと思うと、感慨深くもあり、恐ろしくもあり。
 C言語についてもそう。メモリ管理は非常に難しい。malloc,free絡みで何度注意書きを目にしたことか。これが現代においても計算機システムの根幹を担っていると思うと、その均衡の危うさに、計算機畑の人々のスキルの高さに、感嘆せずにはいられない。

 なんにせよ、学ぶところのある本だったと思う。簡易版とはいえ、普段使っている標準コマンドを自分で書くのは面白い体験だったし、「こんなラフな実装で良(い|かった)んだ」ということも知ることができた。
 強いて言うなら、Kindle版があればよかったのに。