«前の日記(2007年08月28日) 最新 次の日記(2007年08月30日)» 編集

Matzにっき


2007年08月29日 [長年日記]

_ 東京出張

午前中は松江で打ち合わせ。 午後からは楽天技術研究所のミーティング。

3時から夜までびっちりミーティングだぜ。

_ 「まわりが“天才だらけ”の中で、どう生き延びる?」 (“アンチ天才”のボトムズ流仕事術):NBonline(日経ビジネス オンライン)

テーマは「まわりが天才だらけ」と扇情的なものだが、 実際には「他人が天才と呼ぶ人」と「普通の人」の違いを示している点が 重要なのだと思う。

僕はそれまで、「自分には才能がない」と思っていたんです。ずっと後で分かったことなんですけど、それは才能のあるなしではなくて、別のものだったんです。

僕には「引き出し」がなかったんですね。

「天才だ!」と僕が思った人たちは、入社する前からアニメや漫画が好きで、アニメに対する素養があったのに、僕にはそういう引き出しがなかった。引き出しもなくて努力もしないで、いきなり彼らと伍そうと思った。入社してすぐに「あいつらは才能がある、俺にはない」という仕分けをしちゃって。それは大きな間違いで。

才能ではなく、引き出しの違いというのに気がつくのに、ずいぶんかかりました。

才能や能力があるかではなく、どれだけ蓄積したものがあるか というのがもっとも重要な点だと思う。ある意味、「時間をどう使うか決める」、 「モノになるまで継続する」ことができることこそ「才能」ではないか、と思う。

自分の引き出しはどこにあるか、知らないで「天才」と勝負するのは無謀すぎる。

自分の引き出しは、彼らと違ったんですよ。逆に、引き出しの違いが勝負ポイントになると思ったんです。

僕が好きなのはノンフィクションとか時代劇。そんなところの材料というのは、アニメの人はあまり持って来ないんです。だから僕は、なるべく漫画好き、アニメ好きが触れないようなところから持ってくる。

−−勝負ポイントを、自分の強いところに持ってくる、ということですね。

そうすると競争相手が少ないから、楽じゃないですか(笑)。

_ [OSS] google-sparsehash - Google Code

Googleがオープンソースソフトウェアとして公開しているsparsehash。 新BSDライセンス。

ハッシュテーブルは要素に対するオーバーヘッドは馬鹿にならないものがあるのだが、 こちらは1エントリあたりわずか2ビットしか消費しないのだそうだ。

いったいどうやっているのか。これもソースコードを読みたいソフトウェアである。

_ [言語] [r6rs-discuss] Unicode issues

先日のFactorからの指摘に対する反論。

UTF-16なのに定数アクセス

shouldとmustの取り違え。しかし、

a future version (of Larceny) will offer at least one variable-width representation that still provides O(1) access.

とあるのはどうやって実現するんだろう。実に興味深い。 というか、できるものならRubyでも真似したい。

大文字小文字変換(charがcharにマップしない)

同意。

collation

後方互換性。また、collationはUTS(Unicode Technical Standard)であり、 実装しなくてもUnicode互換性に問題ない。

locale

同上

_ 楽天ミーティングで学んだこと

今日はGfarmの話を聞いたり、その他いろいろなことを学んだが、 例によって具体的なことは書けないので、箇条書き。

  • CPU分散とストレージ分散を分けるのは、もしかして間違った切り分け?
  • ディスクは遅い。シークは更に遅い。シーケンシャルアクセスはまだマシ
  • LANならばディスクよりもネットの方が速い
  • つまり、高速化の鍵は適切な切り分け。遅いもの(ディスク上のデータのランダムアクセス)を避ける
  • 独力で分散ハッシュテーブルの概念そのものを思いつくってのは尋常じゃない
  • ソフトウェア開発は「ものづくり」のレベルに達してない
  • ソフトウェア開発者は製造業のことを知った方がよい

_ ソフトウェア開発者は製造業のことを知った方がよい

なんかこの件についての反応をいくつか見かけたのでここに追記しておく(実際に書いたのは9月)。

まず、ほとんどのソフトウェア開発者は製造業経験者の語る「もっと知った方がよい」という 言葉を何度も聞いたことがあると思う。が、それらは実際には役に立たないことが多い。

我々の作るものには物理的制約がないこと、 ソフトウェアは製造するものではなく設計するものであること、 などから彼ら(製造業経験者)の使うメタファーは間違ってる(よく言って不適切である)ことが多いからだ。

それは事実だ。

今回トヨタ流製造業発想を聞いていて、 私自身が同じことを何度も思った。

が、純粋なソフトウェア開発者であり、かつ製造業についてほとんど知識のない私が これらの話を聞いて「製造業のことを知った方がよい」と思ったのは、 その態度であり取り組みである。

彼らが、プロセスの改善のために継続的かつ組織的に払っている努力は 尊敬に値する。ハッカーは環境改善が好きだが、それは組織的なものではない。 多人数によるソフトウェア開発は(伝聞によると)かなり前時代的かつ改善が推奨されない 雰囲気のところが多いと聞く。

彼らが、「正当な製品」を出荷するために継続的かつ組織的に払っている努力は 尊敬に値する。ソフトウェアはなにが「正当」が決めることが困難という事情を 考慮してもなお彼らほどの努力をしているところは少数派だろう。

もっとも私はよく知らないんだけど「組み込み」領域は 製造業の一部であるため、すでにこれくらいの努力と取り組みは行われている のかもしれない。なんか苦労話しか耳にしないんだけど、 それは彼らにとっての当たり前は話題にならないと言うことなのかもしれず。


«前の日記(2007年08月28日) 最新 次の日記(2007年08月30日)» 編集