Home日記コラム書評HintsLinks自己紹介
 

2006年7月のアレ

まあ日記というのか、そういうものだ。

← 2006-06 | 日記一覧 | 2006-08 → | 最新 →

2006年7月30日

入った喫茶店で NTT DoCoMo の Wireless LAN につないでみたら、 802.1x の認証までは行くのだが、 その後、認証成功までは行かない。 電界強度が弱いというメッセージが出ているので、 そういうことなのだろう。

マーケティングリサーチの話。 これは完璧に専門外なので素人の話として読んで欲しいのだが、 最近、 割とクローラーがちゃんと動くようになってきたので、 ブログのリンクをたどって関連グラフを出せるようなのを計画している。 あっちのブックマークを見ている人は…いないか、 登録者5名だし。 で、登録している人はお気づきだと思うが、 タグが [ブログ][女子高生] になっているのがそれだ。

ブックマークに女子高生が多いという指摘が chat でもあったが、 多いといっても40程度である。 手元にあるのは、 女子高生ブログが起点になってクロールして作ったリンク情報なので、 多分1000以上のブログがあるはずなのだが、 これを解析すると、 お友達つながりでかなり大きなネットワークを形成していることがわかるはずだ。 というか、 結果を出さないと分からないですか。

1000以上というのはアバウトな話で、 もしかしたら1桁とか違うかもしれません。

余談だが、 このブログはちょっと難しい問題がある。 女子高生というのは卒業したら女子高生でなくなってしまうのだ。 つまり、有効期間が限定されるのだ。 こういうデータは、 何年度生まれ、という情報を持っていないといけなくて、 さらに、表示時点でどうする、というような処理も必要になるので、 3月から4月になるところで大騒ぎになるのだが、 まあそれはまたその頃に騒ぎを紹介したい。

で、MRの話だが、 この種のブログで流行っているのに「バトン」というものがある。 女子高生だと「バ㌧」とか書いてあることもあるので、 そのへんで検索できれば見つけやすい。 バトンは別に女子高生ブログ特有のものではなくて、 100人に聞きました系のリレープレイはブログでなくても結構見かけるし、 昔からあったものの焼き直しに過ぎないのだが、 書く側にしてみると、 こうやって質問を提示されていると書きやすいというのと、 バトンを回してくる相手が大抵はお友達ということで、 さらに書きやすさが増しているのだろう。

バトンというのは一体どこから始まったのか? 自然発生的なものかもしれないが、 どこかのマーケッティングリサーチ系の会社が絡んでいないか、 という疑惑を最近感じる。 いや、多分高い確率で絡んでませんが。 それはおいといて、 カラムにしろ絡まないにしろ、 バトンに書かれている内容は、 その人の嗜好をかなり細かく示しているわけで、 これを潜在顧客情報としたPRであるとか、 セールスであるとか、そのような使い方があると思うのだ。

そのためには、バトンつながりを追跡したり、 バトンを収集するような方法が必要だ。 バトンには「次に回す人」を書く欄があるので(それでないとバトンにならない)、 そこを見れば…と考えてしまいそうだが、 ここにちゃんとバトンを渡す相手を書いている人はあまりいないようだし、 データを一元管理するのは大変かもしれない。

2006年7月29日

すみません、長期放置してしまいました。 何か大変な日々が続いていてなかなか更新できなかったが、 これは電車の中で書いている。 浴衣の女の子とか多いのだが、 花火大会でもあったかな?

§

ある Web アプリがあるとする。 これをブラウザで開いて、 Ajax とか使ったら、 あっちのナニをこっちにドラッグしてきて移動するとかコピるとか、 そういうのは実装可能なのだが、 さて、 これを2つのウィンドウ間でできますか、 という話。

話を具体的なイメージで。 Firefox を2つのウィンドウに開いて、Webメールを起動する。 片方がリストモード、 もう片方はフォルダモード、 というように開いておいて、 リストモードで選択したメールを、 フォルダモードのウィンドウにドラッグして移動したいのだ。

この話が出たときには、 できないんじゃないか、という説が有力だった。 次のような方法でできないのか考えてみたが分からない。

リストモードのウィンドウには、 リストの各行にアイコンを表示しておく。 あるいは、リンクでもいい。 とにかく、URL で情報を持てるような何かを用意する。 URL というのがちょっと工夫がしてあって、 セッションに関連したユニークな文字列が埋め込まれたものを動的に生成する。 これをもう一つの Firefox のウィンドウにドラッグして、 リリースというか、ドロップする。 ドロップした位置がテキストボックスだったら、 ドロップしたアイコン(画像)のURLがテキストとしてそこに入る、 というのはご存知の通りだ。 このテキストを、 Ajax とか使って処理すれば、ドロップした瞬間に検出して、 それに対応するデータを受け取るようにサーバーにリクエストして、 結果のデータを画面に出す、 というようなことができるのではないか、 と思ったのだが。

Ajax を使わなくても、 単にURLを GET して結果を受け取るとか、 そういう方法でもいいと思うのだが、

ここで最も問題になりそうなのは、 2つのウィンドウの遷移をどうするかということだ。 ビューは JSF を使って実装したいのだが、 現在の JSF の仕様だけで、 2つのウィンドウが同時に異なる状態を持っていて、 並行して処理を行い、同時に次の異なる状態に遷移する、 のような処理が書けるのか?

2006年7月28日

TVで「となりのトトロ」を放送していた。 ローカル局で「ど根性ガエル」を放送しているのだが、 背景に出てくる町並みというか、 建物であるとか小物とかが、 懐かしいというか、 今の若い人には全然実感のないものではないかと思った。

蚊帳なんてのは随分長い間みた記憶がないのだが、 そういえば東急ハンズか何かで売っていたような気がする。

2006年7月26日

納税。 貯金が面白いように減っていく。

2006年7月11日

ちょっと予定より早く新宿に着いたので、 とりあえずスタバに入ってこれ書いてるのだが、 ここのスタバは並び方が難しいというか、分からない。

今日はココログのメンテナンス。 メンテが終わる前に書かないと意味のないことを先に書いておく。

負荷が高いという理由でサーバーを増強する、 という安易な対策に走るのは危険である。 ボトルネックがサーバーにあり、 しかも、CPUの性能やディスクの書き込み速度が原因であることが分かっていて、 リプレースでどの程度の性能向上が見込めて、 その結果、どの程度までのトラフィックが基準の範囲内の時間でレスポンスを返せるか、 というようなデータが明確になっていて、 それで初めてサーバーを増強したり、 ネットワーク周りを強化したり、 というような対策を行うのが当然である。

例えば、システムの負荷の原因がバグにある場合、 ごれは最も性質が悪い。 極端な話、 負荷を高めているバギーなプロセスが、 システムの性能強化によってさらに活性化し、 増強前よりも全体の負荷が高くなってしまう、 というようなこともあり得るのだ。

そもそも、どの程度のリクエストがあればどの程度の時間でレスポンスを返せる、 というような性能評価、 フィジビリティテストなどは、 システムの運用前に行っているべきである。 トラフィックが予定よりも増えたのであれば、 その時点で何か対策をすべきなのだ。

ココログの場合、 単にシステムの性能だけでなく、 処理のロジックに欠陥があることは明白である。 例えば、携帯電話から投稿したときに、 エラーが発生して投稿に失敗したというメールが戻ってくるのに、 実際は投稿に成功している、という現象を何度も経験している。 これはトランザクション処理にバグがある証拠だ。 銀行のシステムを想像してみるといい。 振込みに失敗しましたという画面が出ていて、 残高も振込み前に戻っているのに、 実際は相手に送金されていた、というようなことがあり得るだろうか? この種のトランザクション処理は、 並行処理の中の基本中の基本であり、 それがうまく動いていないようなシステムは、 根本的に何かおかしいのである。 ココログは富士通が担当しているそうだから、 まさかトランザクションという概念を知らない素人が作ったなどということはあり得ないと思うが、 現実にはそのようなあり得ないエラーが頻出しているのだ。

他のブログでは、 ココログの負荷の原因として、 カテゴリー別のページなどが分割されていないために、 長期運用したブログの各ページが巨大になり、 google のクロールなどのサーチエンジンによる負荷が高いのではないか、 という指摘があった。 なるほど、と思わせる話である。 ブログの多くは、 ページをアクセスしたときに、 Modified-Since フィールドをうまく返さない。 常にアクセスした時点の時刻を返してしまうものが結構ある。 すると、クローラーが最後にアクセスした時刻をわざわざ教えても、 常に全てのデータを取得することになってしまって、 確かに負荷は高くなりそうだ。

私が自作したクローラーは、 日付をチェックするのに、RSS のデータをまず参照している。 RSS の情報は、 まず間違いなく、Modified-Since フィールドを正しく処理してくれる。 そのように実装しないと、 RSS の性質から考えて、 高負荷になることが見えているからだ。

参考: ココログを開発した某社の事例紹介ページ。

2006年7月10日

財布を忘れて外出してしまう。 所持金は3000円。 まあこれだけあれば大抵何とかなる。

サッカーワールドカップはフランスvsイタリアの決勝戦になった。 ジダンが暴力行為で退場。 結局、PK戦でイタリアが勝つのだが、 ジダンを怒らせた言葉が何なのか、正確には分からない。 しかし、あれだけ怒るのだから、よほどひどいことを言われたことは想像できる。

イタリアのやり方もおかしい。 どうせなら試合直後にその技を使ってジダンを退場させてしまえば、 楽に勝てたのではないか、とかいう。

結局ジダンがMVP。 準優勝チームでMVPというのも凄いし、 怒れる神というのもいいんじゃないかと思う。 サッカーのフェアプレー精神が云々でジダンのMVPを批判する人がいたが、 そうまでフェアプレーにこだわるというのなら、 ジダンをそこまで怒らせた相手はなぜレッドカードどころかイエローカードにすらならないのか、説明して欲しい。 一説ではジダンの母親を侮辱するようなことを言ったという噂だが、 言うだけならサッカー的にはフェアなんですか?

2006年7月8日

恒例の週末風邪か何かで頭痛がしていのだが、 ビタミンCを大量に飲んで寝るというティーンズ小説に出てくるようなことをして、 一晩寝たら何となく回復した。

§

今日は、やけにエスカレーターの右側に立っている人が多かった。 東京では、右側は歩く人のラインとして空けてあることが多いのだ。

§

DateFormat で parse する処理でハマる。 RDF とかで使われる +09:00 というのは Java 使いの先輩方は一体どうやって parse しているのだろう? SimpleDateFormat はもちろん、 commons もこれ parse してくれないような気がするのだが。

悩んでも如何ともし難いから、 結局、「+09:00」を「+0900」に置換してから parse するような超無駄な処理を書いたのだが。

ココログが終…じゃなくて、連続発言記録が終わるので、 毎日書くブログをココログから別のブログに移転することにした。 候補は Jugem だったが、 Jugem が何か大きなリニューアルという感じなので、 Ameba blog とどちらかで迷ったのだが、 今考えてみたら So-net でもいいような気がしたなぁ。

とりあえず、自分的に、 ソースを一番書きやすいと思っている Jugem をメインにすることに決めて、 移転処理をいろいろやったのだが、 さっきの parse の話はその余談で出てきたのである。 ちなみに、 Jugem のページだと、 ちょっと規約とは違うようなフォーマットで日付を書いているために、 そもそも parse に失敗するというか、まあいいや。

もう一つよく分からなかったのが、 jar で実行ファイルを出すときに、 classpath をどうするかという例の問題。 結局、hoge.jar と同じディレクトリに commons*.jar のような jar をいくつか置いて、 jar のマニフェストでしたっけ、そちらに classpath を指定するところで、 同じディレクトリにファイルがある前提で明示的に指定、というような書き方にしたのだが、 いまいちスマートじゃないような気もする。

tar で展開したら run.bash みたいなスクリプトがあって、 そこから ant を起動して、 のような感じの策も考えてみた。 ant の中で classpath を指定して、 commons とかオープンソースの jar は lib/ 下に配置して、 自作のコンパイル済みのクラスは jar にしないでそのまま直置き、 って感じかな。 これはこれでいいような気もしたが、 jar の存在意義が分からなくなってしまう。 もっとも、存在意義なんて私の知ったこっちゃないが。

§

傘をどこかに置き忘れてしまったと思っていたら、 かばんの中に入っていた。 あまりにも軽くて小さいため、気付かなかった。

§

とりあえず時間あれば作りたいと思っているソフト、 もし「既にあるぞ」というのなら、誰か教えていただけないでしょうか、 教えていただければこれ幸い、みたいな。

機能概要: Firefox の cache に入っているデータを利用して、 過去に見たページだけを対象に全文検索するプログラム。

実装案: cache の内容を定期的にチェックして、 新しいデータが入っていれば、parse して、 Lucene の index を更新する。

まあそんだけなんですけど。

2006年7月7日

絵に描いたような曇天だ。 これも七夕。

「願い事がかないますように」という短冊をかけたかったのだが、 結局どこにもかけることができなかった。 この天気じゃ書いてもダメかもしれない。

§

Java の本とか、ちょっと選んでココログに出してみたのだが、 こっちにも書いておこう。 つい最近、別の所でも「Java の入門書は何がいいか」と質問されたのだが、 結局即答できなかったしまだ回答していないような気がする。 というか、マジなんですが、どれがいいのか全然分からないです。

2006年7月6日

何かいろいろハマっていてちょっと困っている。

Loto 6、どうなったっけ、買ったのがどこかに行ってしまったために、 まだ番号確認していないのだが、 こういう時って4億円当っていたりするのが定説?

§

ちょっと前の chat だったか、 Windows で 10 秒おきに何かアプリケーションを呼び出したい、 というような時にどうすればいいか、 という質問が出ていたのだが、 分からなかった。 標準的なサービスにはそのようなものはないのでは、 という結論になっていたのだが。

2006年7月5日

電車。

裏の裏ページの google でのランキングが急降下中。 何かあったのかな。 はてなブックマークへのリンクを追加したの位しか思いつかないが、 ローカルのブックマークに入れたからなくても構わないし、 試しにカットしてみようか。

急な仕事。JSF から来たデータをナニしてアレするような感じで、今日中に。 ところが、Apache MyFaces が動かない。 というか、インストールどうするのだっけ? 公式サイトの How to install を見ると、 1. 今までの全部アンインストールしろ、 2. sample をデプロイしてみれ、 みたいな感じのことが書いてあるのだが、 そもそもサンプルがどこにあるのかさっぱり分からん。 ちなみに、MyFaces は 1.1.3 です。

2006年7月4日

中田選手、引退かぁ。 ブログで発表というのが何となく爽やかな感じ。

バスや電車で席を譲るかという話。 電車では、私は基本的に席を譲らないことが多い。 というのは、わざわざ空いている少し遠くまで行って、 そこから乗って座る程だからだ。 特に、朝は隣が始発駅なので、 始発まで行って座ったりする。 この前とか、妊婦に前に二人立たれてどうしろというのだ、 みたいな状況になったことがあったが、 どうしてもこりゃいかん、 というのなら譲らなくもないが、 というか、たまたま座れたという人がたまたま座れなかった人に譲ればいい、 という感じ? 座りたいのなら、 始発駅まで戻って座る位の努力をすればいいのである。

もちろん、ここでのポイントは、 わざわざ隣駅に行くために余計な金を払っているというところにある。 つまり、差額を払って座りたいというのであれば、 席を譲ってもいいと思うのだが、 わざわざそう言ってくる人もいないし。

Java言語仕様: ピアソンエデュケーション

Java Puzzlers 罠、落とし穴、コーナーケース
ジョシュア・ブロック、ニール・ガフター著、 柴田芳樹訳

Java 5.0 Tiger、開発者ノートシリーズ

Javaクックブック―Java開発者のためのレシピ集

Ajaxイン・アクション
Dave Crane著

§

某セミナーでデモを見る機会があったので見た。 このような時に、 普通の人はどういう製品がナニで、というような所を見るのだと思うが、 私の場合、 ユーザーインターフェースがどうなっているか、 という一点にまず集中する。

例えば、 今回見たデモは、 途中、3回の大きな操作ミスがあった。 そのうちの1つは、隣の項目をうっかり選択してしまったというもので、 配置・間隔などの調整ミスが原因なのだが、 残りの2回の操作ミスは、 ちょっと根が深いもので、 項目を選択して次の画面が表示されてから「あ、しまった」と気付いたという類のものだった。 つまり、これは項目を見ただけで、 その項目の内容を正しくイメージすることができなかったことを意味する。

例えば、 ある項目は値が入ったデータが入っていて、 隣の項目は値が何も入っていない、 つまり、データの項目だけあって、実際の値が入っていない、 というような状態だった。 これは、項目一覧表示のところに、 登録されている項目数を表示すると予防策になる。 しかし、そのデモプログラム(とはいっても、本物に近いレベルのものではないかと思ったのだが)は、 そのようなヒント情報がないために、 ユーザーが選択ミスをしてしまい、 次の画面画表示されるまで気付かない、 という結果になるリスクがあるわけだ。

他には、画面のデザインのオーケストレーション、 フォーカシング、 等の、 ユーザーがどのような意図でその画面を使うのかを考慮していたら配慮されていてしかるべきことが、配慮されていないような気がした。

2006年7月3日

そろそろ、いろいろアニメが入れ替わるタイミングになってきたのだが、 相変わらず、 どれをどうしようかというのが決まらない。

春アニメでは、 やはりハルヒの憂鬱の評価が高かったらしい。 というかそういう気がする。 ハルヒの夢の中に逝ってしまうアレは、 ビューティフルドリーマーを見れ、という意見もあるようだが、 まあ同じようでもちょっと違うというか、 全然関係なく見たら面白いですから~。 うる星やつら、ビューティフルドリーマー。

PSP のメモリ、うっかりフォーマットしてしまったのだが、どうしましょ?

2006年7月2日

回転寿司に行きました。 10組待ちみたいな。 くらげが美味だった。

2006年7月1日

開発環境をセッティングするための作業。 担当者は3人、 Linux と Windows で開発する。 単体テストも含めて、同じようなリソースで実行できるようにする。

Eclipse とか JDK とかを、 各自インストールするのではなく、 単にコピーするだけで実行できるように設定するのだが、 今の時点で自分が使っている環境をそのまま維持したままで、 新しい Eclipse を使う環境を用意する、というのが意外と難しい。