ハッカーと画像

惹かれた言葉をメモ。

P31
絵画から学べるもう一つの例は、次第に詳細化しながら創っていく方法だ。
・・・
この点かで絵画から学ぶことができる。プログラムの仕様に完璧さを期待するなんて非現実的だ。
そのことをまず認めて、仕様がプログラムを書いている最中に変わっていっても、それを受け入れるような書き方をすべきなんだ。今となっては、誰もが早すぎる最適化の危険を承知しているだろう。私は、同様に早すぎる設計、つまりプログラミングが何を期待すべきかを早く決め過ぎることにも気をつけるべきだと思う。

⇒プロジェクトがデスる原因は仕様変更により、手戻りが多発しパラレルにタスクが動きすぎて分けわかんなくなることが大きな要因であると思う。極力柔軟性を持たせ仕様変更に強くあるべきですよね。

P54
ある主張が「○○主義」だとか「○○的」だとかいった言葉で攻撃されているならば、それが1963年であろうと2030年であろうと、何かがおかしくなっていることの確かな兆候だ。そのようなレッテル貼りが行われているならば、なぜ、と問うてみると良い。特に自分がそういうレッテルを使ったときだ。距離を置いて見ることで学ぶべきものは、群衆からだけではない。

⇒いわゆる草食系とか肉食系、とかも当てはまるよな。モデリングといえばそうだけど。ただそれを個人レベルで適用するのは本質を見逃す気がするな。

P73
イデアが大事なのは、それがもっと多くのアイデアに結び付くからだ。腰を据えて何かを書き始めて、書き上がったものを見たらその中のアイデアの半分は書きながら思いついたことだった、っていう経験はないかい?
・・・
実際、アイデアを寝かせておくことは、新しいアイデアを得る邪魔にさえなり得る。
新しい機能を考え始めるたびに、やるべきことがたまっている柵が目に入って、「うーん、でも次のリリースまでにやりたいことがもうこんなにあるんだな」となるからだ。

⇒これは本当にそう思う。思い立ったが吉日、熱が下がらないうちに、軌道に乗せるべき。でなければ結局やらなくなるからなー人間の心にも慣性はある。

P89
E.B.ホワイトは、農場を持っている友人から、電流を流せる柵の多くは実際には電流は切っているという話を聞いて感心したそうだ。牛は一度感電を経験したらそういう柵に近寄らないようになるから、電流を流し続ける必要はない。「立ち上がれ、牛たちよ!」

⇒カマス症候群ともいうやつですね。

P145
最初から上手くできるということは滅多にない。熟練者は初期の仕事は捨てるつもりでやる。計画が変更されることを予定してかかるのだ。
仕事を捨てるには自信が必要だ。「ここまできたのなら、もっとできるはずだ」、こう考えることができなくはならない。例えば、絵を描き始めたばかりの人は、上手く書けなかった部分をやり直したがらない。ここまでできたのはラッキーだった、これ以上何かやったら悪くしてしまうかもしれない、そう思ってしまうのだ。やり直す代わりに、そんなに悪くないんじゃないか、きっとこう描くのが良かったんだ、と人は自分を納得させてしまう。
危険な領域だ。もしろ、不満足な点を突き詰めなければ。

⇒恐れず目をそらさず、こう考えるようにならなければ。

P147
模倣に対する態度はしばしば一巡する。初心者は知らず知らずのうちに模倣する。そのうち、彼は意識的に独自性を出そうとする。最後に、独自性よりも正しくあることがより重要だと気づく。
・・・
唯一持つべきスタイルは、どうしてもそうなってしまう、というようなものだ。

守破離という考え方ですね。だからと言って最初から変に悟ったように行動するのは違う気がする。

P150
実際問題としては、美を創造するよりは醜に目をやるほうが簡単だと思う。美しいものを作った人々の多くは、彼らが醜いと思ったところを直していったのだと言える。
・・・
醜いものを許せないだけでは十分ではない。どこを直せばよいか知る嗅覚を得るためには、その分野を十分に理解していなければならない。しっかり勉強しなければならないんだ。

⇒しっかり勉強しなければ。銀河鉄道ブルカニロ博士も言ってました。

P201
コンパイラがやるべきことを人間がシミュレートするという慣行はただ広まっているというだけではなく、思考を型にはめる作用がある。例えば、オブジェクト指向の世界では非常によく「パターン」というものを耳にするだろう。この「パターン」は多くの場合、人間コンパイラが実際に動作している証拠なんじゃないかと私は思う。私が自分のプログラムにパターンを見つけたら、それはどこかおかしいというサインだ。プログラムの形は、それが解くべき問題にのみ反映すべきだ。そのほかの繰り返しがコード中に現れるということは、少なくとも私にとっては、十分な抽象化を行っていないということを意味する。

⇒これは刺激的。比較的新しいrubyの文法がLispに近づいてきたり、さらには関数型を適用した次世代JavaことScalaの登場で、ますます著者が唱えるLisp最強説がバカな私にも納得できつつある。50年前の言語の方が優れているとか、もう超古代文明が存在しててもきっと驚かないでいられるよ。しかし関数型とか私の頭ではいまいち理解しきれないので、勉強しないとな。

P214
とにかく自分の伝えたいことを話し続ければ、いづれ人々は耳を傾けてくれるようになる。人々があなたに注意を払うのは、あなたがそこにいることに気付いたときじゃなく、あなたがまだそこにいることに気付いたときだ。

⇒認めてくれないではなく、認めさせるようにしなければ。

P216
一般的なルールとして、どんな時でも、思った以上に変更は効くものだ。変更を入れることは、包帯をはがすことに似ている。痛みを感じたと思ったらそれはもう過去の思い出だ。

⇒リリカル。