Twitterの友人関係からコミュニティ解析をし、リスト作成を補助するサービスを作りました。
http://smartlist.bz
自動であなたの属するコミュニティを解析し、ビジュアライズした上でリスト作成ができます。
便利なので、ぜひ試してみてください!
呟き
- 卒論で研究している、複雑ネットワークのコミュニティ分類手法の高速化を利用しています。
- コミュニティ分類抜きにしても、実働で2週間ほどかかってます。中でもUIデザインは非常に苦労しました \(^o^)/ JQuery PowerTipでわかりやすくなったかな。
- Twitter APIにも非常に苦労しました。詳しくはTwitterAPI devise連携/グラフ可視化/データの効率的格納/API高速化 - Qiitaを参照。並列処理で速くしたりしてます。
- 注意:2012/01/18現在、取得するフォロー数を1000人に制限しています。
技術的なこと
標準的なRailsの構成ですが、データ格納のためにRedisを利用してます。
コミュニティ解析ではPythonのNetworkXライブラリを利用しています。
- サーバー:Nginx,unicorn (+capistrano)
- 認証:devise, omniauth
- DB: MySQL, redis
- assets: coffeescript,scss,less,haml (twitter bootstrapを利用)
- 特徴的なgem: Parallel(並列処理), Resque(遅延実行), Twitter
- PythonとはXMLRPCで同期通信