テーマは「まわりが天才だらけ」と扇情的なものだが、 実際には「他人が天才と呼ぶ人」と「普通の人」の違いを示している点が 重要なのだと思う。
僕はそれまで、「自分には才能がない」と思っていたんです。ずっと後で分かったことなんですけど、それは才能のあるなしではなくて、別のものだったんです。
僕には「引き出し」がなかったんですね。
「天才だ!」と僕が思った人たちは、入社する前からアニメや漫画が好きで、アニメに対する素養があったのに、僕にはそういう引き出しがなかった。引き出しもなくて努力もしないで、いきなり彼らと伍そうと思った。入社してすぐに「あいつらは才能がある、俺にはない」という仕分けをしちゃって。それは大きな間違いで。
才能ではなく、引き出しの違いというのに気がつくのに、ずいぶんかかりました。
才能や能力があるかではなく、どれだけ蓄積したものがあるか というのがもっとも重要な点だと思う。ある意味、「時間をどう使うか決める」、 「モノになるまで継続する」ことができることこそ「才能」ではないか、と思う。
自分の引き出しはどこにあるか、知らないで「天才」と勝負するのは無謀すぎる。
自分の引き出しは、彼らと違ったんですよ。逆に、引き出しの違いが勝負ポイントになると思ったんです。
僕が好きなのはノンフィクションとか時代劇。そんなところの材料というのは、アニメの人はあまり持って来ないんです。だから僕は、なるべく漫画好き、アニメ好きが触れないようなところから持ってくる。
−−勝負ポイントを、自分の強いところに持ってくる、ということですね。
そうすると競争相手が少ないから、楽じゃないですか(笑)。
Googleがオープンソースソフトウェアとして公開しているsparsehash。 新BSDライセンス。
ハッシュテーブルは要素に対するオーバーヘッドは馬鹿にならないものがあるのだが、 こちらは1エントリあたりわずか2ビットしか消費しないのだそうだ。
いったいどうやっているのか。これもソースコードを読みたいソフトウェアである。
先日のFactorからの指摘に対する反論。
shouldとmustの取り違え。しかし、
a future version (of Larceny) will offer at least one variable-width representation that still provides O(1) access.
とあるのはどうやって実現するんだろう。実に興味深い。 というか、できるものならRubyでも真似したい。
同意。
後方互換性。また、collationはUTS(Unicode Technical Standard)であり、 実装しなくてもUnicode互換性に問題ない。
同上
今日はGfarmの話を聞いたり、その他いろいろなことを学んだが、 例によって具体的なことは書けないので、箇条書き。
なんかこの件についての反応をいくつか見かけたのでここに追記しておく(実際に書いたのは9月)。
まず、ほとんどのソフトウェア開発者は製造業経験者の語る「もっと知った方がよい」という 言葉を何度も聞いたことがあると思う。が、それらは実際には役に立たないことが多い。
我々の作るものには物理的制約がないこと、 ソフトウェアは製造するものではなく設計するものであること、 などから彼ら(製造業経験者)の使うメタファーは間違ってる(よく言って不適切である)ことが多いからだ。
それは事実だ。
今回トヨタ流製造業発想を聞いていて、 私自身が同じことを何度も思った。
が、純粋なソフトウェア開発者であり、かつ製造業についてほとんど知識のない私が これらの話を聞いて「製造業のことを知った方がよい」と思ったのは、 その態度であり取り組みである。
彼らが、プロセスの改善のために継続的かつ組織的に払っている努力は 尊敬に値する。ハッカーは環境改善が好きだが、それは組織的なものではない。 多人数によるソフトウェア開発は(伝聞によると)かなり前時代的かつ改善が推奨されない 雰囲気のところが多いと聞く。
彼らが、「正当な製品」を出荷するために継続的かつ組織的に払っている努力は 尊敬に値する。ソフトウェアはなにが「正当」が決めることが困難という事情を 考慮してもなお彼らほどの努力をしているところは少数派だろう。
もっとも私はよく知らないんだけど「組み込み」領域は 製造業の一部であるため、すでにこれくらいの努力と取り組みは行われている のかもしれない。なんか苦労話しか耳にしないんだけど、 それは彼らにとっての当たり前は話題にならないと言うことなのかもしれず。