Flickrの楽観的コミット
原文は Marcin Wichary により に公開されました。 このブログを購読する
楽観的ローディングや楽観的保存のすぐ隣に、アプリをより速く感じさせるもう一つのテクニックがある。楽観的コミットだ。
その好例がFlickrだ。写真アップロード画面に移動すると、ちょっとした控え室のような場所に入る。そこでは写真をドラッグ&ドロップして並べ替えたり、名前やタグを付けたりと、大きな「Upload」ボタンを押す前にさまざまな準備を整えることができる。
だがFlickrは、ユーザーがいずれそのボタンを押すものと楽観的に想定し、写真をドラッグした瞬間から、重い写真データのアップロードをバックグラウンドでゆっくりと開始する。
他のあらゆる楽観的な仕掛けと同様、ユーザーにとって親切にすればするほど、Flickrのデザイナーやエンジニアにとっては複雑になる。なにしろ、実際にアップロードを確定した後にも、通常のアップロード用モーダルが表示されるのだから……

……そのため、控え室での静かなアップロードと、正式な可視化されたアップロードという二つの状態を整合させ、同期し続けなければならない。
また、楽観的に先行してアップロードされたものの、結局キャンセルされたデータはサーバーから削除しなければならない。
最後に、サイン(目印)の問題がある。データ転送など実際には起きていないかのように現実を単純化して見せるのが典型的な、軽量な楽観的ローディングの手法とは対照的に、ここでの楽観的コミットは小さなインジケーターによって実際に可視化されている。
この透明性は歓迎すべきことだと思う。かつてMeta(他に誰がいるだろう!)は、楽観的コミットの悪用で大炎上したことがある。
Facebookで友達のウォールに直接投稿するために動画を撮ったものの、出来が気に入らず破棄して撮り直したことはないだろうか。あの気まずい没バージョンは削除されたと思っていたかもしれないが、Facebookはコピーを保存していた。同社はそれを「バグ」のせいにし、今度こそ破棄された動画を削除すると誓っている。今度こそ指切りだという。
こうした文脈を考えると、Flickrがデータをサーバーに送信中であることをきちんと伝えているのは良いことだ。信頼の構築につながると思う。
透明性に加えて、このプロセスがアップロードの進捗を非常に精密に示してくれるのも良いと思う。ファイル間だけでなく、ファイル内での進捗までだ。インターネットの回線速度は、地理的な違いだけでなく、状況によっても大きく変動するため、これは実用上本当に役に立つ。クラウドへの自動保存など、回線が長時間オフラインにならない限りユーザーに意識させなくてもよい場面も多いが、ここでは魔法のような演出よりも、明確さの方が優れているように感じる。
記事をランダムに読む
コメント
ログインしてコメントする