Make組ブログ

Python、Webサービスや製品開発、ライブラリー開発についてhirokikyが書きます

卒研がひと段落ついた

卒研がひと段落ついたのでまとめておきます

卒研で何してるの?

Webアプリ作ってます。
フィードリーダ(RSSリーダ)を使っていて未読記事の多さにウンザリしていたので、利用者が好むであろう記事だけを表示するフィードリーダを作っています。名前は SinBoon(仮)

とりあえず画面

これが SinBoon(仮)のダッシュボード画面。
私のブログ記事が表示されてるのが分かる。この記事は利用者に「好まれる記事である」と判断されたのでダッシュボードに表示されている。
あらかじめ登録しておいたフィードに新着記事があると、それが利用者に好まれる内容かどうかフィルタリングされたのちに表示される。右の「登録フィード」というのは登録してあるフィードの一覧。

記事を気に入ったら「Like!」を押せ!

んで、「利用者に好まれるかどうか」を判断するためには利用者の好みを把握してないとダメですよね。その方法はシンプルで、記事の下にある Like! ボタンと Unlike ボタンで記事が気に入ったどうか(利用者の好み)を SinBoon に教えてやることができる。
こうして反復学習していくことで、いづれはユーザに好まれる記事だけが表示される。

Like! / Unlike した記事はダッシュボードには表示されなくなるので、これが既読管理になる。Like! した記事はあとで見返す事ができる。

これでブックマークとしても使える。
Unlike するとフィードリーダからは完全に消される。汚物は消毒だー!

未読記事が無いと幸せ

ちなみにダッシュボードにあがった記事をすべて読み終わると幸せになれる。

わーぃ!
これはRememberTheMilkのパクリ影響を受けてます

ちょっと余談

実際に私が SinBoon を使ってみて学習された「利用者の好み」を見てみよう。
「利用者の好み」というのは Like! された文中の特徴的な単語の数々で、こんなかんじ。

タイムアウト」や「windows」などの単語が登録されている。たしかにこのような単語を含む記事を私は読む傾向にある。
でも問題なのが「firebug」のような特徴的すぎる単語も学習してしまっているという点、ここは改善の余地あり。

今後の課題

  • 利用者が一日に読める記事の分量を記憶させて、その分量に応じて記事を表示するようにする。
  • ダッシュボードには記事の一部のみ表示させるようにする。
  • ソーシャルブックマークサービスとの連携

内部的に改善すべき点とかはまだまだある。

「未読記事うぜぇ」って人は期待しててくだしあ