「ハッカーと画家」を読んだ

ハッカーと画家」はY Combinator創業者としてや、Yahoo Storeの元々を作ったハッカーとして有名なPaul Grahamのエッセイ集である。読み始めるまでは啓発本かと思っていたけども読んでからエッセイ集ということに気が付いた。 前半はもうほんとにただのエッセイで、そうなんだーと思いながら読んでいくだけのものだったけども、後半に集められたものは学びやら気付きやらが多くあった。「ライト、ついてますか」と同じで、最新の本でなくても学びがたくさんあった。

shishi.hatenablog.jp

電子書籍がなかったので家で読むことが多く、メモを取りながら読んでいる部分が多かったので気付きや特に感想を持った部分を列挙しておく。

新しい表現方法が現れ、それに熱狂した人々が、最初の2世代くらいの間にその表現方法の可能性のほとんどを探求し尽くしてしまう。
-- 第2章 ハッカーと画家 P.37

昔のゲームのほうが面白く感じるのが多いのはなぜかと考えたとき、当時のゲームはその可能性を探求している真っ最中で、今はその時期を去ってしまったからなのかなとも思われされた。

WebベースソフトウェアをISPを通じて売るというのは、寿司を自動販売機で売るようなものだ。
-- 第5章 もう一つの未来への道 P.79

よく分からないがきっと変でよく分からないものだということなのだろう。

中断されるかもしれないと感じるだけで、ハッカーは難しいプロジェクトを始めるのを遅らせる。
-- 第6章 富のつくりかた P.94 脚注

ハッカーとはいえない自分自身でも感じるところではあるがもうちょっと自分で制御したいと思う。

富を創り出したいのなら、自分が好きなことを中心にした計画に対しては特に疑ってかからねばならない。その分野では、何が価値があるかというあなたの判断は、他の人々と大きくずれていることが多いからだ。
-- 第6章 富のつくりかた P.97 脚注

ハッとする考え。好きなものこそよく考えることもできるしユーザー体験をよりリアルにシミュレートすることもできるだろうけど、ずれていないかはよくよく考えたい。

2つの選択肢がある場合、難しい方を選べ。<中略>たぶんあなたの怠惰さがもう一方の選択肢を持ちだしたに違いないからだ。
-- 第6章 富のつくりかた P.107 脚注

そうとも言えないことも多そうだと思ったけど、覚えておきたいと思った考え方。

良いデザインは単純である。
-- 第9章 ものつくりのセンス P.139

プログラマには割と浸透していると思うし、これからもそうしていきたいと思う考え方。

非効率なソフトウェアが醜いのではない。醜いのは、プログラマに不要な仕事をさせる言語だ。
-- 第11章 百年の言語 P.166

似たような内容をついこのあいだ答えたことがあったので一致に喜んだ。

今使っているプログラミング言語で満足してしまうようにするってのが、プログラミング言語に元来備わった性質なんだから。
-- 第12章 普通のやつらの上を行け P.182

この記述の少し前から同じことが何度か語られている。自分も同じように基準を持って考えていることに気づいた。

言語はプログラマのためのもので、プログラマが必要としているのはライブラリなのだ。
-- 第14章 夢の言語 P.210

ライブラリ大事なんだということがしつこく語られる。実際僕らに必要なのはライブラリだと思う。

速いコードを得る現実的な方法は、言語を性的片付けにしたりすることじゃなく、非常に良いプロファイラを作ることだ。
-- 第14章 夢の言語 P.211

プロファイラはより便利な情報を出してくれるようになっているけども、その情報を積極的に伝えるというのは現在でも不足している気がする。CIという考え方がだいぶ普及した昨今だけど、もっと早く、もっと頻繁にプロファイラに触れるべきかなと思った。

どんな分野にせよ最高の仕事というものは、お客が頼んだことをただそのままやるような人にできるものじゃないと思う。
-- 第15章 デザインとリサーチ P.220

割と浸透しているとも思うけど、そうでない人もいる。あとお客さんの側が我儘を言う隠れ蓑に使う話もよく見る。

良いデザインを得るにはユーザに近づき、そして常にユーザーの側にいなくてはならない。
-- 第15章 デザインとリサーチ P.222

この少し前に書かれている、特定のユーザーを対象とせよという主張と合わせていつも念頭に置かねばならない考え方だと思う。

士気はデザインの要だ。
-- 第15章 デザインとリサーチ P.224

僕の場合は何をするにも必要だ。

一番ハックがのってき夕方にうるさい掃除機を使う掃除スタッフもいない。
-- 第16章 素晴らしきハッカー P.230

これより一歩ひどかった某社のことを思い出した。強い不満を覚えていたプログラマは少なくなかったし、即刻やめるべきだと今でも思う。一番不満に思ったのはいくらか払って業務時間外に掃除をしてもらう人を雇うよりも、それによって中断される僕らの生産性が落ちるコストの方が安いと見積もられたということである。プログラマの集中が中断することはどういうことかが理解できる人が事前になぜ止めてくれなかった、もしくは自分でなんとかできなかったのかと今でも悔やむ気持ちになる。

良いハッカーになる鍵は、たぶん、自分がやりたいことをやることだ。
-- 第16章 素晴らしきハッカー P.237
何かをうまくやるためには、それを愛していなければならない。
-- 第16章 素晴らしきハッカー P.237

ハッカーになろうとしてやっていることではないけども、僕はそうでなければならないと半ば使命のように感じてそうしている。