Home

日記
ムスコの相手 (20:02)Edit

日曜はここ数ヶ月恒例のテニス。いつもはオクサンムスコと3人でやっているんだけど、今日はオクサンの会社の人たちが3人来たんで、ずいぶんみっしり動くことが出来た。

ちゃんとテニスできるかどうかのポイントは、「ムスコの相手をする人間を確保できるかどうか」だったりする。

しかし、ここ1週間ほどずっと体調不良だったのをおして、めっきり寒くなった外でテニスなんかをやっていたら、やはり体調が悪化した。普段はそのまま買い物に行くんだけど、まっすぐ帰宅。

明日は会社を休もうかなー。普段だったらあっさり休むんだけど、ここ2ヶ月は出向中なもんだから、あんまり気軽に休むことが出来ない。単なる出向ってだけでなく、裏事情がいろいろあったりするもんだから、面倒くさいのだ。

Published At2002-11-17 00:00Updated At2002-11-17 00:00

日記
頭痛と鼻水と腹下し (20:02)Edit

朝起きたときはそこそこ体調が良さそうな気がしたのに、ムスコ保育園に送って返ってきたら一気にぐったり来たんで、今日はお休み決定。今回の風邪の主な症状は頭痛鼻水腹下し。そんなにひどくはないんだけど、微妙につらい状態が長く続く。普段は風邪薬が結構効く体質なんだけど、今回の風邪にはあんまり効かないなー。

Published At2002-11-18 00:00Updated At2002-11-18 00:00

日記
TrackBack (20:02)Edit

TrackBackという機能

blogネタで話題になったMovableType。基本機能の部分には大して興味がなかった(ありがちなものの集大成というだけ)し、RSS配信ってのも別にやればいつでもできる(けど再利用する人が出てこないと面白くない)よなーと思っていたんだけど、TrackBackって仕組みはちょっと興味を引かれるな。こういうのをWikiCloneでも取り込むといいかもね。

今のところ複数のWikiサイト間のつながりはInterWikiで表現しようってのが主流なんだろうけど、個人的にInterWikiってのはあんまり面白いと思わない。リンク(とページ生成コマンド)だけはつながるけど、それ以上のつながりがあまりにもないし。まあたったあれだけの実装であのくらいつながると言うこと自体は面白いけど(っつーかWiki自体がそういう面白さの積み重ねだから、それを否定しちゃおしまいって気もするけど)。

TrackBackのポイントは、ある記事(WikiCloneならばWikiPage)への他サイト(のWiki)からの言及を取り込む仕組みを用意しよう、ってことだろう。その仕組みも非常にシンプルだ。ある記事に他のサイトから反応する場合、あるURLを「対象の記事ID」と「反応したURL」を引数につけて呼んでくれれば、システムはその記事に対する他サイトからの反応があったことを認識する、というだけのもの。

tDiaryみたいにReferer解析をそういう用途で使えるように実装しているシステムがあったり、アクセス解析を使って手動でそういうことをやっている人は結構いるだろうけど、共通フォーマットを定めてシステムとしてそういうことが出来るようにするってのはいい考えだな。ずいぶん昔から「Web日記同士の言及リンクがわかりやすい更新報告型リンク集:http://ishinao.net/diary/?200201c&to=200201281#200201281」を作りたいといろいろ考えていたんだけど、リンク集という形式ではなくP2Pベースに実装するという考えは思いつかなかったよ。

WikiLikeでのTrackBackサポート方法(文字コードについて)

ここのWikiLikeでも実験的にTrackBackをサポートしてみました(RSSとTrackBackを実装を参照)。現行のTrackBackの仕様書には文字コードに関する情報が盛り込まれていないため、その部分を拡張しました。

  1. http://host.domain/dir/tb.php/sid/****というPATH_INFOの2階層目に入力文字コードを指定
  2. ie=****という要素(GET/POST)で入力文字コードを指定
  3. charset=****という要素(GET/POST)で入力文字コードを指定
  4. 投稿要素の文字列から自動認識を使って入力文字コードを判別

という順序で入力文字コードを指定します。最初に見つかった要素が優先です。

送信側としては、POSTするパラメータにcharsetを追加。多分これが一番直観的な実装なんで文字コードの解決手段としてはこの方法に収束していくといいな。うちはしばらくの間はすべてのパラメータを受け付けるようにしておきますけど。

TrackBackの送信側インターフェースも実装。文字コードは送信時にドロップダウンから選択できるようにした。ただ、本文の最初の255文字を抜粋として送信しているんだけど、そうするとほとんど元の引用文部分だけになっちゃうな。それはちょっといまいちかも。

※文字コード指定文字列は、受信側はそのままPHPのmbstring系関数に渡しています。送信側はutf-8/euc-jp/shift_jisで渡しています

Published At2002-11-18 00:00Updated At2002-11-18 00:00

日記
TrackBackを実装する (20:02)Edit

TrackBack的なものをWikiLikeに実装するとして、どんな感じにするといいだろう。もともとのTrackBackの実装を参考にしつつ、自分で欲しい機能を中心に仕様を考えてみる。

TrackBack的な機能を実装するにあたって抑えておきたいポイントとしては、

  • 他のサイトの記事→自サイトの記事の言及について
    • 他サイト側から自サイトへの通知が簡単
    • 自サイト側の通知の受け取りが簡単
    • 他サイトのどの記事(URL)が自サイトのどの記事(記事番号)に言及しているか

あたりだろう。

あとどうせこういうものを実装するならば、

  • 専用クライアント→自サイトの記事の言及について
    • 専用クライアントから自サイトへの通知が簡単
    • 自サイト側の通知の受け取りが簡単
    • 専用クライアントからの言及については、そのコメント本文自体も受け取る

なんて機能も実装したいところだ。

さらにそれらのインターフェース(API)について、特定の実装に依存するのは避けたいところなので、

というのもある。

あと、WikiCloneをはじめとする特殊な機能(単なるblogシステムよりも高度な機能)をもっているシステムで使った際に、さらに有用な機能を追加できるように、

  • 送受信APIは、拡張情報の受け渡しに対応できるようにする
  • ただし、基本的になAPIの利用は手軽である必要がある

ってな感じで試しにWikiLikeに実装してみて、複数サイトに置いたWikiLike同士で通信できたらどんな感じになるかを試してみよう。なんてことをやっていると、いつまで経っても完成しない罠。

Published At2002-11-18 00:00Updated At2002-11-18 00:00

日記
TrackBackインターフェース (20:02)Edit

TrackBackの受信側のインターフェースの実装はそんなに難しくないよな。試しに作ってみたけど、簡単に実装できる。ところでIEってヘッダtext/xmlを返さないと、内容がxmlでもxmlと解釈(表示)してくれないんだっけ?

閑話休題、受信側のインターフェースにコメントの実体まで受信するとなると、それをどう処理するかを抽象化するのが難しそうではある。WikiLikeだったら、そのままコメント欄にPOSTしちゃえばそれで終わりなんだけど、一般的なインターフェースとして考えるともうちょっと融通が利くようにしておかないとまずいだろうし。

何にしろ、受信側はそんなに難しくなさそうだ。が、送信側が結構面倒くさい。えーっと、本家のTrackBackは送信側のインターフェースをどうやって実装しているのかな? 単純に考えると、コメント先のTrackBackインターフェース(ping url)と記事番号をフォーム手入力する感じ? なんかそれはかなりいまいちだよなー。

本当ならば、コメント先のurlを入力すると、そのurlから自動的に相手先のTrackBackインターフェースの実装を問い合わせて、TrackBackインターフェースにTrackBack情報を送る、みたいな実装がいいよなー。コメント先URLのQUERY_STRINGにたとえば「?sysinfo」とかつけたら、必ずそのシステムのTrackBack(をはじめとするコミュニケーション系の)APIの実装に関する情報を(xmlで)返す、みたいなメタ情報向けAPIはやはり欲しい。

Published At2002-11-18 00:00Updated At2002-11-18 00:00

日記
blogな・か・ま (20:02)Edit

絶望書店:http://home.interlink.or.jp/~5c33q4rw/しっぽは廻るか?:http://home.interlink.or.jp/~5c33q4rw/nikki/2002_11.htm#17に、 >blogを嗤ってる方々のいくつかがblogmapというのに捕捉されていることに気づきました。あなたがたのやってるのはblogらしいですよ。 と書いてあったので、絶望書店もblogmapのデータ収集先に加えてみた。これであなたもblogな・か・ま(ハート)。

っつーか、まさかblogという言葉がここまで恥ずかしい言葉になってしまうとは思っていなかったなー。Web日記サイトとかテキストサイトとか個人ニュースサイトとか、大きな違いがないものにわざわざ別の名前が付けられている不便さを解消するための道具として、blogという言葉を使いたかっただけなのになー。

私は別にblogの真の定義なんてのはどうでもよくって、更新がある程度頻繁でハイパーリンクをちゃんと使っている(自分のページ内で閉じていない)個人Webサイト一般を表す表現(言葉)が欲しいだけなんですよ。それがblogでなくてもかまわないけど、自分で造語するのはつらい。

Published At2002-11-19 00:00Updated At2002-11-19 00:00

日記
ライセンス面倒くさい (20:02)Edit

WikiLikeはなんとかソース公開できるところまでたどり着きたいなーと、ライセンスに関してググってうろうろしてみたけれども、なんだか面倒くさい話ばかりがみつかって、ちょっとぐったりする。何も見なかったことにして右にならってみようか。

Published At2002-11-19 00:00Updated At2002-11-19 00:00

日記
ここのサーバー (20:02)Edit

このサーバーで動かしているWikiLikeは、デバッグモードで動かしているんで、最下部に処理にかかった時間が出力されている。

ここのサーバーは、年2万円くらいで容量転送量無制限だったりするんだけど、その代わり結構たくさんのユーザーが詰め込まれているんで、いまいちレスポンスが安定しない。プロセスを覗くと、よく大量のメールを送信しているところがあるし(SPAMじゃねーだろうなー)。

ときどき異常にレスポンスが遅くなったりすることがあるのは前から気づいていたんだけど、それがサーバーのせいなのか回線のせいなのか結構気になっていた。で、デバッグコード付きのWikiLikeを動かしてみて確認。やっぱりこのサーバーときどき処理が異常に重くなるんだね。通常0.05秒以内で終了するような処理に、5秒くらいかかったりするときがたまーにある。

Published At2002-11-19 00:00Updated At2002-11-19 00:00

日記
TrackBackでリンク集へ通知 (20:02)Edit

TrackBackってよく考えたらP2Pでの通知以外にも、日記才人とかテキスト庵とかみたいな更新報告型リンク集への通知にも使える仕組みだよな。その辺りも含めて考えてみよう。

Published At2002-11-19 00:00Updated At2002-11-19 00:00

日記
w3mから投稿 (20:02)Edit

そういやIE以外での動作確認ってほとんどしていないなー。ってことで、w3mから投稿してみる。

Published At2002-11-19 00:00Updated At2002-11-19 00:00