http://sticka.jp/ の開発ブログです。

2008年1月23日水曜日

履歴機能が付きました

メモごとに20世代の履歴を見る機能が付きました。

実はリリース直後から、内部的にはバックアップを持つようにしてあったのですが、ユーザインタフェースを作らないままになっていました。
しかし、今日、自分でメモを間違って消してしまったので、急遽実装しました。

今のところ、保存した物をすべてバックアップにまわして20世代保存していますが、この辺は30分以上経ったものだけ、保存するようにして15世代保存とか、調整する予定です。

なお、メモを削除すると履歴も削除されます。履歴を消したい場合は、新しいメモに内容を移し、履歴の付いたメモを削除してください。

2008年1月16日水曜日

[Ctrl]+↑↓でのカーソル移動が早くなりました

[Ctrl]+↑↓でのカーソル移動が早くなりました。

本文を読み込むときにブロックしていたのを、並列動作するようにしました。

2008年1月9日水曜日

ショートカットキーのOn/Offが指定できるようになりました

OSXでEmacsのキーバンドを使っている場合など、いくつかのキーがショートカットと衝突してしまっているというご意見があったので、ショートカットをオフにできるようにしました。

画面上部のアカウントメニューの中にありますので、ショートカットが邪魔な人はオフにしてみてください。

今回、将来AIR版なども考え、クライアント毎にプロパティーを設定できるようにしました。
今は実装していませんが、ショートカットのキーバインドなども変更可能ですので、要望があれば実装します。ぜひ欲しいという方は、コメントかチャットにご意見お願いします。

2008年1月7日月曜日

起動を高速化しました

Stickaはアクセスしてから表示するまでちょっと遅かったのですが、今回YSlowなどを使いつつ高速化しました。
主軸はHTTPコネクション数を減らす事です。

まずは、JSやCSSはファイルを一本にまとめてYUI compressorで圧縮しました。

一番ファイル数が多いのはアイコン画像なので、IE6以外でアクセスした場合はdata url schemeを使ってCSSに画像を埋め込みました。
YUI Compressorは、data url schemeに対応していないようなので、compressorにかけてから、data url schemeに画像を展開する必要があります。

IEでも画像へのアクセスを減らすためにCSS Spriteを試したのですが、IE6ではPNG24での透過をサポートしておらず、PNG8では画像を結合したときに色数がなりなくなるので、対応をあきらめました。
はじめから、統一したパレットでアイコンを書いていればCSS Spriteは有効だと思います。

このため、IE6は他のブラウザより起動速度が若干落ちています。

またCSSをリファクタリングして、レンダリングしながら画像を読み込める様にしました。具体的には、画像の指定はすべてCSSで行い、スタイルのbackgroundで行う様にしています。

この辺でメンテナンス性が悪くならない様に、圧縮やdata url schemeへの展開はcapistranoのタスクで行う様にしています

サーバ側では、ETag, Expiresの設定、deflateの設定をして、効率的にコンテンツ配信ができる様にしました。

これで、起動速度がかなり上がっていると思います。

タグを実装しました

要望の最も多かったタグを実装しました。

ほんとは分類じゃなくて、全文検索だけでって思ってたんですが、予想通り要望が多かったので実装してみました。

先に検索キーワードを指定しておく「スマートフォルダ」みたいなモノとどっちが良いのか迷ったのですが、フォルダ構造はいまいちUIが思いつかなくて、タグにしました。

タグはブラウザ側で実装しているので、速度の低下が心配です。特にIE6はJavascriptが遅いので。
100件ぐらいまでは大丈夫そうなのですが、この辺は一度ベンチマークを取りながらチューニングしようと思ってます。

2008年1月1日火曜日

クローズドベータ開始

Webメモ帳「Sticka」のクローズドベータを開始します。
私はすでに2ヶ月以上使っていますが、他のユーザに使っていただくのは今回が初めてなので、まずは近しい人から徐々に公開していく予定です。

Stickaの特徴は下記の通りです。
  • 見やすい2ペイン構造
  • 軽快な動作
  • 全文検索
  • 書いたメモを書庫に保存しておける
  • 携帯をサポート
  • メモはメールで毎日バックアップ
個人のメモは、サーバに保存されているため、データベースを直接操作すれば見る事が可能です。
しかし、管理画面などではユーザのメモを見る機能は実装しておらず、基本的に私が触る事はありません。

今回のテストで特に試してほしいところは下記の点です。
  • 各種ブラウザでの挙動
  • 使い勝手
  • 欲しい機能
  • 速度感
特に、ブラウザによって画面がおかしくなる、エラーが出るなどの点は非常に欲しい情報ですので、よろしくお願いします。

既知の問題点は下記の通りです。
  • アクティベーションやバックアップのメールの本文がない
  • ユーザ登録後の画面がない
  • 携帯版で書庫と検索がない
  • バックアップのXMLをインポートする方法がない
  • Operaで検証されていない
  • ヘルプが無い
妄想している機能
  • Adobe AIRでオフラインでも使えるクライアント → AIRが日本語ダメなのでしばらく無理
  • Google Gearsでオフラインサポート → 準備中
  • 共有機能 → 要望があるので考え中 → これは欲しいって人はコメントとかください
  • API公開 → 独自APIは実装済み 公開は様子見て考えます
  • ブラウザのローカルストレージを使って高速化 → Client Side Storage
ご意見は、画面上部の「ご意見ボックス」か、MSNメッセンジャーのmasui@hisec.co.jp、Lingrのhttp://www.lingr.com/room/hJooi5QjuKhへお気軽にメッセージください。

よろしくお願いします。