appengine アプリ開発日誌:おまかせニュース・リーダー(アルファ・リリース)
2010.12.17
ここのところ、iPhone/iPad アプリの開発から Google App Engine 上のサービス(neu.Notes ユーザー向けのプレミアムサービス)の構築に少しづつ比重を移している私だが、本格的な商用サービスを立ち上げる前に、もう少し app engine 上のサービスの構築・運営に慣れておく必要があると感じて作ったのがこれ。
正式名称もないしドメインも取得していないのだが、 仮の名前は「おまかせニュース・リーダー」。世の中の動きを効率良くつかむためには、主要なニュースの少なくともヘッドラインに目を通す事は大切。はてなブックマークの人気エントリーはノイズが多すぎるし、かといって、わざわざ自分でRSSフィードを登録したりメンテナンスしたりするのは面倒。
そこで、特になにもしなくても、自然に使っているうちにしだいに賢くなって自分向けのニュースを選んでくれるサービスというのがあれば良いと思い、作ってみたわけだ。
使い方はいたって簡単。ブラウザーでこのサイト(http://cloud-readers.appspot.com/)を開くだけだ(最新版のSafari、Firefox、Cromeのみで動作確認済み)。
ログイン前は、Hot/New/人気/最新の4つのタブが表示される。このあたりは、はてなブックマークの人気エントリーや新着エントリーと同じで、特に個別ユーザー向けの情報は提供していない(というか、ログインしていないのだからできない)。私が独断と偏見で適当に選んだニュースフィードからの情報を、単に人気順・新着順に表示しているだけだ。
特別なことをし始めるのは、ログインをしてからだ(Facebookのアカウントが必要)。ログインすると、Omakase/History の二つのタブが追加される。最初はどちらも当然「空っぽ」だ。
そこで、まずはHot/New/人気/最新の4つのタブの下に表示されるニュースで興味があるものをいくつか読んでみて欲しい。その後で、History タブを開くと、読んだ記事へのリンクが表示される。あたりまえと言えばあたりまえだ。
そんな感じで10個ほどニュースを読んだ後で、Omakaseタブをクリックして欲しい。私が作ったアルゴリズムがちゃんと動作していれば、あなたが読みたいようなニュースが(正確には、同じようなニュースを読んだ人たちが同じく読んでいるニュースが)表示されるはずだ。
アルゴリズムは、多くの人が使えば使うほど、賢くなるように作ったつもりだが、これだけはテストが非情に難しいので、実際に使っていただきながら改良して行こうと思う。
ちなみにこのサービス、あくまで「実験」段階のサービスなので、とりあえず「アルファ版」と呼んでおく。バグの報告や、ご要望などあればこのエントリーへのコメントとしていただければ、ありがたいが、過度の期待はご遠慮いただきたい。
ところで、このサイトは、以前に「RESTful MVCなアーキテクチャの話」に書いた通りに、サーバー側では、スタティックなテンプレートとJSON over HTTPのウェブサービスのみ提供し、クライアント側で View と Model の結合をしている。いずれ時間を見つけて(Google App Engine側のソースも添えて)詳しく解説したいと思うが、待ちきれない人はソースコードを読んでみると良いかもしれない。
Comments