July 29, 2007

山口と大阪に行ってきました

先週、山口と大阪に行ってきました。

DSCF3572.JPG

DSCF3575.JPG
赤い服着て肘掛けのところにチョコンと座っているのが僕です。

DSCF3606.JPG
山口は雨でした。

DSCF3638.JPG
大阪は天気が良くて暑かったです。

DSCF3661.JPG

DSCF3670.JPG
セミの抜け殻です。

July 28, 2007

常にキーボードショートカットはマウス利用よりも遅い

WIRED VISION / 増井俊之の「界面潮流」 / 第5回 気分の問題

メニュー操作は遅いけれども初心者でも使えるのに対し、熟練ユーザが効率良く使うためにキーボードショートカットが用意されているのだと一般に信じられていますが、Macintoshのインタフェースを開発したことで有名なBruce Tognazzini氏 (Tog)が昔Appleで沢山の実験を行なった結果、常にキーボードショートカットはマウス利用よりも遅いということが判明したそうです。「そんな馬鹿な! 複雑なマウス操作がキーボード操作より速いわけがない!」と思う人は多いでしょうし、実験に参加したユーザ自身もキーボード操作の方が速かったと感じていたそうですが、計測結果を見ると常にマウス操作の方が速く、いくら実験してもこの結果は変わらなかったということです。Togの考察によれば、ショートカットキーの利用には高次レベルの思考が必要になっており、そのときユーザは一時的に記憶喪失になっているため、短い時間で操作できたように錯覚してしまうのだろうということでした。

へー!ほんとかな。
ちなみに僕はマウス大好き。
ていうか、マウスとキーボードショートカットを組み合わせるのが一番早い気がしてる。
マウスとキーボードを同時に使えればいいんだけど。

読書: JavaからRubyへ

これ読みました。

JavaからRubyへ ―マネージャのための実践移行ガイド JavaからRubyへ ―マネージャのための実践移行ガイド
Bruce A. Tate 角谷 信太郎

オライリー・ジャパン 2007-04-21
売り上げランキング : 6640

Amazonで詳しく見る by G-Tools

誤字が多いのが気になりますが、大変面白かったです。

いやー、ほんと、システム開発っていろいろあって面白い。
一体何が真実なんだか。
ま、なんにせよ、選択肢は複数あった方が良い。
テクノロジーでは解決できない問題もたくさんあるだろうけど。

Martin Fowler氏へのインタビューより引用。

Q : Javaはどこで道を誤ったのでしょうか?
Java界は、スキルの未熟な開発者にもシステムを台無しにされないようにすることに力点を置きすぎています。結果から言えば、この考えは破綻しています。銃で自分の足を打ち抜かないようにするという考え方は魅力的ですが、現実に私たちが目にしているものは理想からは程遠いものです。あまりにも複雑でひどいJavaアプリがそこら中に転がっています。

全体的に、Javaは複雑すぎるのです。「銀の弾丸はない」 [略] というのは、本質的複雑性と偶発的複雑性とを区別するということです。たとえば、給与支払システムの開発では、給与支払の業務ルールは本誌的な複雑性です。しかし、Javaの労力のほとんどを占めているのは偶発的複雑性です。EJBの大失敗はこの最たる例です。EJBは、それ自体がとんでもなく複雑なフレームワークであるばかりでなく、私たちが経験してきたアプリケーションのほとんどにとって複雑すぎます。SpringとHibernateはEJBに比べれば格段に進歩していますが、それでもまだ、偶発的複雑性に満ち満ちている印象を拭えません。
– p.28

「本質的複雑性」と「偶発的複雑性」っていうのは良い表現だなぁ。

プログラマって、複雑なものに惹かれる本能を持ってる気がする。
「こんな複雑なことをやってのけちゃう俺すげー!」みたいな。
それがバッドノウハウにつながったりもする。
あとは、焦り。
「この新技術をマスターしないと時代に乗り遅れる!」みたいな。
そういうのが問題を生んだりする。

以下、その他諸々コピペ。

EJBはだんだん良くはなっていますが、それでもまだ難しすぎます。 [略] EJBは象を撃つ大砲のなかでも最高級品なのです。しかし、筆者の知るEJB開発者のほとんどは、EJBをWebインターフェイスを備えたリレーショナルデータベースアプリケーションの開発に使っています。どんなに贔屓目に見ても、EJBに適しているのは、分散トランザクションのような高度な機能が要求されるニッチな分野です。
– p.30

[略] Javaで言語を拡張するために(Dependency Injectionアスペクト思考プログラミングといったバズワードや、XMLベースの設定を利用するような)厄介で複雑な方式が必要不可欠なのは、動的言語のような方式ではJavaの拡張が難しいからです。
– p.52

要は、DIって「苦肉の策」的なものなんじゃないかなぁ。

Javaの良くないところは、もっと素朴なテクノロジを使うべきユーザに対しても、エンタープライズフレームワークを使うように働きかけていることです。
– p.60

Javaは言語の選択肢としては安全かもしれません。しかし、正しいフレームワークの選定は、たとえ専門家であっても難しいのです。
– p.68

確かに、Javaにおいてはフレームワークの選択は非常に難しい。

ていうか、RubyがJavaに取って代わるかはどうでもよく、現時点でのJavaの問題点をきちんと把握しておくことが重要だな、と思った次第。

July 27, 2007

読書: 生物と無生物のあいだ

生物と無生物のあいだ 生物と無生物のあいだ
福岡 伸一

講談社 2007-05-18
売り上げランキング : 5

Amazonで詳しく見る by G-Tools

これ読みました。
非常に読みやすかったです。
著者の言いたいことがダイレクトに伝わってくる感じがしました。

ただ、タイトルと内容がいまいち一致しないというか、タイトルからこの内容は想像できないなぁ。
しかし期待を上回る面白さ。
著者は物書きとしての才能が十二分にあると思われる。
いろんなエピソードが随所に配置されていて読者を飽きさせない。
たまに説明が回りくどいときもあるけど、全体を通して表現がとにかく丁寧。
そのため、最小限のコストで最大限の知的興奮を得られた感じ。
こういう良い本に出会うと得した気分になる。

つくづく生物って不思議だなぁって、改めて思いました。
生物活動のダイナミズムってほんとすごいですね。
すごすぎです。
生物の体は細胞でできており、その細胞はタンパク質でできている。
そしてそのタンパク質は20種類のアミノ酸によって構成されており、そのアミノ酸はいくつかの分子からなっている。
こういった人間の体を構成する物質は日々入れ替わっている。
分子のレベルで見れば、半年から一年ほどでほぼ全て入れ替わるらしい。
つまり、一年前に自分の体を構成していた分子は今はもうそこには存在しない。
分子レベルで見ると完全に別の物になっている。

我々がこうやって地球に存在してるのって、ほんと、奇跡ですね。

July 20, 2007

リデザイン 20070719

ブログのデザインを変更。

System.exit();

ちょっとした気の迷いから。

読書: 2ちゃんねるはなぜ潰れないのか?

いやー、これ、結構面白かったですよ。

2ちゃんねるはなぜ潰れないのか? (扶桑社新書 14) 2ちゃんねるはなぜ潰れないのか? (扶桑社新書 14)
西村 博之

扶桑社 2007-06-29
売り上げランキング : 35

Amazonで詳しく見る by G-Tools

いろいろな方々が、グーグルがすごいとおっしゃっているようですが、僕には、企画・営業力とサーバメンテナンス以外、すごい部分がわかりません。
– p.38

そういわれるとそんな気がしなくもない。
ていうか、結局グーグルのことなんて知ってるようで知らない。

グーグルはAS番号を取得したYouTubeに直接繋がなかった場合、大金を支払って他のデータセンターを経由して繋ぐことになる。それよりは、YouTubeそのものを直接買収してしまったほうが安い、とグーグルは考えたのでしょう。
– p.61

ふーん。
「AS番号」っていうの知らなかった。

ASとは「Autonomous System」の略であり、「自律システム」とも呼ばれます。ASは、統一された運用ポリシーによって管理されたネットワークの集まりであり、BGPのような外部経路制御プロトコルによる管理対象となります。通常、規模の大きいISPのネットワークは、固有のASを形成します。AS番号はこのASに割り当てられた識別番号です。
AS番号の申請

らしい。

佐々木俊尚氏との対談が面白い。

佐々木 お会いしたことはないですけど、梅田さんは非常に理想論を言い過ぎて反論できないから、そこで話が終わってしまう。一方で西村さんは、あまりにも現実的でベタな話をしすぎて話が終わってしまう。2人は両極端なんじゃないかと。
[略]
西村 僕、どこに行ってもだいたい悲観的なんですよね。
– p.119

小飼弾氏との対談も面白い。
小飼氏はほんと引き出し多いな。

July 19, 2007

なぜ「犬が吠えた」という文で「犬が吠えた」ということを言い表せるのか

突然ですが、

犬が吠えた。

この文は何を言い表しているのでしょうか。

「犬が吠えた」ということを言い表していますよね。
そんなの子供でもわかると思います。

問題は、なぜ「犬が吠えた」という文で「犬が吠えた」ということを言い表せるのか、なんです。
なぜ「犬が吠えた」という文が「犬が吠えた」という意味をもつのか。

逆に、「犬が吠えた」という文が「犬が吠えた」という意味を持たないことってあるんですかね。
ないですね。

結論:
「犬が吠えた」という文は常に「犬が吠えた」という意味を持ちます。
これがウィトゲンシュタインが『論考』で言っていたことで、また、なぜそうなるのかは語り得ない、とも彼は言います。
それが「言語」の「事実」である、と。

たぶん。。。