2010/12/05
影響を受けた本
すっかり話題に乗り遅れたんだけど。
If you could go back in time and tell yourself to read a specific book at the beginning of your career as a developer, which book would it be?
元ネタはStack Overflowの What is the single most influential book every programmer should read?。 ときどきの雑記帖から話題を振られたのでぼんやり考えてた。
影響っていうのはどういう状態 (背景知識とか、環境とか) でそれを読んだかに 大きく左右されるから、今良いと思う本でも昔読んで影響を受けたかどうかっていうと よくわからないところがある。では自分が実際に影響を受けた本となると、これまた あんまり多くない。思いつくのは2冊くらい。
Kernighan/Pike: The UNIX Programming Environment
学生の頃、知人に紹介されたバイト先で、 「今忙しいから適当に自習してて、マシン自由に使っていいから」とか言われて 手に取ったのがこの本だった。2週間くらいかけてちくちく打ち込んでいるうちに シェルスクリプティングからシステムコールプログラミング、 yacc/lexを使ったパーザ開発、man pageの作成までひととおり出来るようになった。
この本の何が良かったかというと、 プログラマ向けにUnixの使い方というhowを教える本でありながら、 なぜそういう設計になっているのかというwhyの部分がメタメッセージとして 込められているところ。 単なるUnixの知識というのではなく、 システムの設計のやり方についての根っ子をこれで学んだような気がする。 取り上げられる例の選び方も巧みで、 私も、本を書くなら、いつかこういう本を書きたいなあと思う。
今でも本質的な部分は有効だと思うけど、 いかんせん例が古くなってしまっているので、 これから学習しようという人に勧めづらいのが残念 (今更edやtroffの使い方知ってもねえ)。
ブレヒト:『ガリレイの生涯』
技術書ではないけれど。 旧来の価値観が揺らぐ新時代の幕開けにおいて、 新しい時代を支える知識や技術を持つものはどうあるべきか、を考えさせる作品。 単なるガリレイの伝記ではない。
ブレヒトがこれを書いたのは第二次世界大戦の時期で、 彼の頭にあったのは科学者や知識人と戦争との関わりだったわけだけれど。 コンピュータと情報を扱う技術が速いペースで世界を変えてゆく現代にあって、 それらの技術を使いこなす者のあり方を考える、という読みも出来る。
劇の序盤、口八丁手八丁で目新しい技術を売り込み、 自分の知識欲と好奇心の赴くまま活動するガリレイ。 彼の中に、人々を出し抜く頭の良さと、ナイーブとも言える楽天性が同居している様は、 技術ベンチャーを起こすハッカーに重なるものがある。 そしてそういう人物に人々の過剰な期待が集まることにも。
作られたものは、それが強いものであれば、作り手の思惑に関わらず、作り手を越えてゆく。 作り手を徒に英雄視したり、逆に貶めたりしても意味はない。 作り手には作り手の責務があり、 一方で、作られたものをどう扱うべきかは、 それに関わる全ての人間が考えることだ。
(追記2010/12/06 20:01:06 UTC): あと、 「誰が作るかは重要ではない、誰かが作ることが重要なのだ」 ということも読み取ったな。 「作り手とその取り巻きだけが楽しんでる間は本物じゃない。 その中身が理解できない人々の生活を変えてこそ本物だ」とか。 直接そういうせりふがあるわけじゃないけれども。
(もっと追記2010/12/07 22:01:33 UTC): 紛らわしかったかもしれないので補足。 上の「追記」は作品からの引用ではないので誤解なきよう。 前者は主として14幕のガリレイの「一人の人間にしか書けない書物などない」近辺、 後者は主として3幕と14幕のガリレイとヴァージニアの「夜はどう」「明るい」 近辺のやりとりの、私の解釈ってこと。
Tags: Programming, ものつくり, 本
Post a comment