Twitter のお気に入りをタグで管理するサービス Favmemo をリリースしました!

Twitter の自分のお気に入りを検索したりタグ付けして管理したいと思っていた方必見です!
Favmemo
※初めての利用だとお気に入り数の多い方は読み込みに時間がかかるかと思いますが,取得可能な限りのお気に入りを取得して DB に保存しているのでご了承ください > <

個人的に Twitter のお気に入りは「良い言葉だなぁ」と思ったものや「あとで読もう」と思ったものを残すために使っているんですが,
「お気に入り」と一括りしてしまうと後で見返した時に不便だったので作りました!
まだまだ至らない点も多いかと思いますが,要望などがありましたら @favmemo までご連絡ください.
@favmemo でしたら相互フォローさせていただくので DM も送れるようになります.

ー2010/11/02の夕方 追記ー
@roprossさんが今日の昼ごろにfavologをリリースされましたね…
道理で9月末に favolog という名前の Twitter アプリを申請しようとしても同じ名前のアプリが登録されてるって言われるわけだ…
ーーーーーーーーーーーー

リリースに際しまして…

もともと「自分が使いたい!」というモチベーションで開発し始めたんですが,何人かに「こういうのを作ってる」と話したときに微妙な反応が多かったです.
さらにプロトタイプを極限られた人に Basic 認証付きで公開したんですが,想像以上に反応が薄かったので随分凹みました.
自分専用にしておけば Firefox だけで動けばいいし,SSL + Basic 認証にでもしておけばセキュリティも全く考慮しなくていいわけですからね….
でもまぁせっかくここまで開発したからにはもうちょっと完成度を挙げて一般公開までして,その反応を見てみようと思ってリリースしたわけです.

結果は想像以上の反響があって嬉しい限りです.リツイートしていただいたみなさん,紹介していただいたみなさん,ありがとうございます!
一方,今後に期待されてる方もいらっしゃるようなのでかなりプレッシャーだったりもします.
どんどん改善していきたいのは山々なんですが,そろそろ修論が…
何から手をつければいいか迷うので期待されてる方はお手数ですが @favmemo までご要望をいただけると嬉しいです.
こういうのはもっとフィードバックしやすい環境を提供しないとダメですね…
何はともあれリリースしてみてよかった.
新しいことを勉強したらその内容を組み込んでいくことができるので勉強のモチベーションも上がりますしね♪

ところで,いくらアルファ版といえども明らかにしょぼい状態でリリースするとフィードバックすらもらえずに見捨てられて,
改良したとしてもアクセスすらしてもらえないことになりかねないので,どこまで完成した状態でリリースするかは難しいところですよね.

あと,誰かがブログで書かれていましたけど,現在 Twitter の OAuth認証には読み取り権限のみかすべての権限を委譲するかの2択しかないなので,
どの API を許可するかまで細分化してもらえるとありがたいですね.
その方がサービスを利用する側としても運営する側としても安心かと思います.変な疑いかけられたくないですし…

ちょっと思ってること

はてなブックマークと連携させてはてブにツイートをタグ付きで登録できるとおもしろいかなぁと思ったんですが,
はてなブックマークAtomAPIはパスワードを平文で保存しておかなければならないんですよね…
それとも毎回はてなIDとパスワードを入力してもらって,HTTPSで favmemo サーバを経由して連携させるか.うーん…

公開設定(公開・非公開の2択)を設けて,他人のお気に入りを閲覧できるようにするのもいいかなぁと思っています.(実装するとしても2月以降になりますが…)
ただ,その場合は非公開ツイートの扱いをどうしようかといった感じですね…

開発に利用したサービス・ツールなど

最後に,今回の開発を通して初めて知ったツールもあるのでご紹介します.

JavaScript のデバッグ

言わずと知れた Firebug と FirePHP です.後者は Ajax を使う場合に重宝します.
Firebug :: Add-ons for Firefox
FirePHP :: Add-ons for Firefox

Mac の Safari や Google Chrome で使える Developer Tools もなかなかいいですね.

古いバージョンの PHP で PHP 5.3 の関数をエミュレートするライブラリ

レンタルサーバを利用している人にとっては嬉しいライブラリですよね.
upgrade.php

クロスブラウザ対策

異なるブラウザ,バージョンで動作やレイアウトを確認するにはかなり便利です.Windows 限定ですが…
Browser Sandbox - Run popular web browsers with no installs

ところでクロスブラウザは主要ブラウザ以外のブラウザも含めてありとあらゆるブラウザに対応させることを意味し,
マルチブラウザは複数のブラウザに対応させることを意味する,
とどこかで見た気がするんですが,主要ブラウザだけだとマルチブラウザと呼ぶべきなんですかね?

「読み込み中」の画像を生成するサイト

Ajax を使うときなどに重宝するかと思います.
Www.preloaders.net | Free AJAX animated loading gif’s

他には次のようなサイトもありましたが,画像の質やカスタマイズ性を考慮すると上記サイトがオススメです.
Load Info - gif generator
Ajaxload - Ajax loading gif generator

Favicon を作成してくれるサイト

Favicon Japan!! -16×16の小宇宙ファビコン-

JavaScript の圧縮

jQuery で使われている JavaScript の圧縮サービスです.
Google Closure Compiler

jQuery の Ajax で「戻る」を実装するプラグイン

Ajax は便利ですが,履歴に残らないことが最大の欠点かと思います.その欠点を克服してくれるのがこちらのプラグインです.
jQuery history plugin

仕様はもともとの開発者であるみかげさんのブログでも説明されています.
以下,間違いもあるかと思いますが私なりの解釈です.

まず「戻る」を実現するためにはブラウザの履歴に URI を追加しなければならないわけですが,
IE7 以前では見えない iframe を作成して,それの開閉で履歴を追加し,他のブラウザでは URI のハッシュを変化させることで履歴を追加します.
※1年前のぐらいのバージョンでは Safari に関しては特殊なことをしていた気がするのですが…

ブラウザの履歴に URI が残れば,あとはどうやって画面を復元させるかですが,Ajax (コールバック関数) で再び通信を行う形で実現しています.
では,何をトリガーにコールバック関数を呼び出しているかですが,
iframe を使っている場合は iframe の URI のハッシュと大元の URI のハッシュを 0.1秒間隔で比較し,異なる場合にコールバック関数が呼び出されます.
※ブラウザの履歴として残るのは iframe の URI で,「戻る」を押すと iframe の URI が変化します
hashevent のあるブラウザは「戻る」によって URI のハッシュが変化するとコールバック関数が呼び出されます.
いずれにも属さない場合は URI のハッシュを 0.1 秒間隔で監視し,変化している場合にコールバック関数が呼び出されます.

つまり IE7 以前だとリロードしたりすると iframe が初期化されてしまうので「戻る」ができなくなってしまうわけですが…

プロキシ型の脆弱性スキャナ

Google の社内で使われているツールみたいです.
ratproxy

SQLインジェクション対策

こちらで紹介されているようにブラインドSQLインジェクションを試してくれるツールみたいなんですが,使い方がよくわかってないです…
プロキシ型脆弱性スキャナでもSQLインジェクションを試してくれるものがあるみたいですが,ratproxy でも試してくれるんですかね…?
sqlmap

そんなこんなで,みなさんよかったら Favmemo を使ってくださいね!