いろいろ修正 (20:59)
コイーバさんのコメントにあわせて、
- 投稿後に、再投稿(編集)フォームを表示するのではなく、MYページ(=今登録されたメモが一番上に表示される)に移動するように変更
- 書籍情報の表示を「『タイトル』著者名(出版社名)」に変更
してみました。
あと「人」じゃ何を意味しているのかわかりにくかったんで、メモの先頭にユーザーIDを表示するように変更。クリックするとそのメモを書いた人のMYページに飛びます。自分のメモの場合は「編」になり、クリックするとそのメモを編集できます。
あと、メモ種類に「了」を追加。要は、
- 「記」 - 気になったものをメモ
- 「予」 - 購入予定に入れる
- 「買」 - 購入。
- 「読」 - 読書中。
- 「了」 - 読了。
- 「想」 - 感想を書く。
といった流れをイメージしたもの。なんでメモ種類の並び順も上記にあわせてみた。
「MM/本のメモ」のコンセプト (11:10)
実は、上記のセクションで書いたあたりが、「MM/本のメモ」を作った一番の目的だったりする。
最近のマイブームは、それぞれの用途に特化した複数のシステム上にコンテンツを生成し、それらのコンテンツをライトウェイトに後付で結びつけて運用するアプローチだ。
その一つの手法としては、Estraierのestmerge.cgiを使い、複数システムにまたがる全文検索機能を利用した結びつけがあるが、全文検索による結びつけはデータ生成&運用が手軽な代わりに厳密性にかける(何となくキーワードで結びつくが、うまくインデクシングされないキーワードもあるし、誤爆キーワードもある)。
そこでもう一つの手法として考えたのが今回の手法。ライトウェイトなDBを用意し、必要最低限の情報を手軽に(trackbackやbookmarklet、各種検索機能によって作業を半自動化し、できるだけ入力項目を少なくして)登録できるようにする。そして、その情報をさまざまな切り口で汎用的なフォーマット(今回はRSS)で出力する。その利用方法は汎用フォーマットであるだけに簡単かつ自由だろう。
ちなみに「MM/本のメモ」は、当初上記のようなコンセプトの汎用システムを作ろうとしたんだけど、汎用システムにするとうまく手軽な入力環境および再利用性の高い軽量DBが作れそうもなかったんで、本(というかASIN)に特化した形で作ってみたものだ。うまく行きそうならばその他の用途でも作れるように拡張していく予定。
でもその前にblogmapとキメラ構造になっている部分をきれいにしなきゃね。というか、blogmapをもうちょっと使いやすいUIに作り直す予定なんだけど、あっちは情報量が多すぎて、使いやすくまとめることが難しいんだよなー。持っている情報/機能をすべて表に出そうとするのをあきらめ、単なるランキングサイトにすればそれなりに見やすくできるだろうけど。
というわけで、なんで「MM/本のメモ」なんていまいちぱっとしない名前を付けているのかというと、「MM」(Multi/Mobile/Mix Memo)がこのシステム全体の開発コードで、「本のメモ」はその一部なわけですね。
trackbackのみ表示機能を追加 (10:35)
一覧表示やRSSにtrackbackのみ表示する機能を追加。「trackbackのみ」といっても、別にそのメモがtrackbackによって送られたかどうかを見ているのではなく、URL要素を持っているかどうかを見ているだけ。つまり、日記/blogに行って詳細情報を読めるであろうメモだけが抽出されることになる。
またRSSの場合は、通常表示ではitemをAmazonのURLにしているところを、メモのURL欄(=日記/blogの記事URL)に変えてある。つまり、このRSSを使うことによって、複数のサイトにまたがった本に関する記事情報を、一つのRSSでまとめて管理することができる。
blogmapのメディア情報から登録 (09:35)
そういや書いていなかったけど、blogmapのメディア情報に「memo」というリンクを追加してある。それをクリックすると、そこから「MM/本のメモ」に登録できる。
クリッピング bookmarklet (09:30)
blogmapのclippingにAmazonの(というかASINコードらしきものが/で囲まれている)URLを渡した場合に、自動的に「MM/本のメモ」に渡すようにした。
bookmarkletのコードは以下。
javascript:location.href='http://bm.ishinao.net/clip.php?'+escape(document.location.href)
あるいは、Windows+IEならば、http://dev.ishinao.net/archive/bmclip_0404015.lzhをインストールすると、IEのコンテキストメニュー(右クリックメニュー)から呼び出すことができる。
本当は、選択領域にASINコードがあったらそれを使い、なかったらURLをチェックする、みたいな専用のbookmarkletを作ろうかと思ったけど、どうもjavascriptは面倒くさい。
はてなダイアリーでテスト (01:29)
はてなダイアリー(http://d.hatena.ne.jp/ishinao/)だと、
<hatena name="rss" url="http://mm.ishinao.net/index.rdf/1?associate=hatenadiary-22" listlimit="5" moduletitle="気になる本"> <hatena name="rss" url="http://mm.ishinao.net/index.rdf/1?kind=to_buy&sort=date&order=asc&associate=hatenadiary-22" listlimit="5" moduletitle="買うかも?">
なんてサイドバーにモジュールを埋め込んで使える。
