Twitterの規約変更は自社すら守れていないガイドラインを用いて行っている件

 昨日、Twitterの規約変更でタイムラインが大騒ぎしました。

(参考:"Twitterブログ:Twitter API v1.1でのAPI利用のルール変更について"

"Changes coming in Version 1.1 of the Twitter API | Twitter Developers")

 

内容は今更まとめるまでもないと思うので、要約だけすると、

  • すべてのAPIの利用にOAuth認証が必須に
  • エンドポイントごとのレートリミットを設定
    (60コール/h、ただしツイート表示やユーザ検索などは720コール/h) 
  • 開発者ルールの変更

という内容ですね。

開発者ルールの変更は具体的に、

  • ディスプレイガイドラインを遵守事項に変更(守れない場合はアプリケーションキーを無効化
  • プレインストールクライアントはTwitter社の承認が必要に
  • 1つのアプリケーションでのトークン利用を10万人までに制限(10万人以上のユーザトークンが必要な場合は要相談)

となっています。

ちなみに、このAPI v1.1に向けた猶予は6ヶ月となっています。

 

 私が特に問題視しているのは、開発者ルールの変更の一つ目であるディスプレイガイドラインの件です。

このガイドライン、非常に細かいところまで指定してあり、結構めんどくさいです。

(参考:"Display Guidelines | Twitter Developers")

これを"完全に"準拠しているクライアントがいくつあるでしょうか。


ところで、お風呂の中でIS12Tを使っていて気づいたことがあります。

f:id:yviscuit:20120818025201p:plain

そう、Twitter for Windows Phoneにおいて、Twitter Display Guidelinesを満たしていないのではないか、という気がしたのです。

具体的にはなにか。

f:id:yviscuit:20120818025313p:plainf:id:yviscuit:20120818033916p:plain

この2枚の画像をみればわかるとおり、Twitter for Windows Phoneでは、Timestampの扱いがガイドラインを満たしていません

ガイドラインにおいて、Timestampの扱いがどうなっているかというと、

  • Tweetのtimestampは 右上に表示すべきである.
  • Tweetが24時間以内に送られた場合、短いtimestamp、例えば20秒前にTweetを送ったのであれば"20s", 3分前であれば"3m", 5時間前は"5h"を使います.
  • Tweetが24時間以上前ならば, 月と日を含んだ日時、例えば"6 Jun"のような短い表示をするべきである.

と書かれています(英語力ないので細かいニュアンスは間違ってるかも)。

一方、Twitter for Windows Phoneでは"8/18/2012 1:23:00"というように、普通にhms表示をしています。

ただし、デフォルトはTwitter for iPhoneのような、ガイドライン準拠型らしいです。

 

次の画面は、それぞれのクライアントの設定画面(Settings)です。

f:id:yviscuit:20120818030559p:plainf:id:yviscuit:20120818033939p:plain

Twitter for Windows Phoneには、"date format"という項目があり、"Absolute(絶対的)"と"Relative(相対的)"という選択ができるようになっています。

私はこのhms表示が好きなので、この"Absolute"を選択しています。

しかし、ガイドラインに戻って考えてみると、この挙動は問題ではないでしょうか。

 

問題点は、以下の通りです。

  • ユーザの操作によって、アプリケーションがディスプレイガイドラインを守れているか否かが変わってしまう(設定によって準拠できなくなる)
  • "date format"を"Absolute"にした時、Twitter for Windows Phoneはディスプレイガイドラインを守れていないクライアントとなる

この程度は問題ないのでは、という指摘もMentionにて頂きました。

私も、これは拡大解釈だと思わなくはないです。

しかし、Twitter社は今回の規約変更で、"ディスプレイガイドラインに従えないアプリケーションはアプリケーションキーを無効化する"とまで言い張ってこのガイドラインに準拠させようとしているのです。

"厳格にガイドラインに従った、模範的アプリケーション"としてTwitter for Windows Phoneを見た時、これはやはり問題ではないでしょうか。

 

私はここで、Twitter for Windows Phoneが悪いとは言いません。

むしろ、このガイドラインが問題だと思います。

なぜこのディスプレイガイドラインを強制させるのか。

私はこのガイドラインをある程度守ったアプリケーション(≠完全準拠)で、ユーザビリティの損なわれるような体験はしたことはないです。

むしろ、縛り付けられないことで多彩なクライアントが生まれ、多くのTwitterの利用スタイルと利用者を生み出してきたと感じています。

私は、このような縛り付けは開発者の開発意欲の削減と、twitterユーザの損失に結びつくと考えますし、ディスプレイガイドラインの"強制"を撤回するべきだと思います。(もちろん、ある程度守らせることには賛成です)

アプリケーションキーを無効化するというおもちゃの取り上げのようなことをせずとも、もう少し大人な対応ができたのではないか、と考えるのです。

 

すべてが統一されたUIであることは、確かに美しいのでしょう。

まさにAppleがiOSで行なっているやり方ですね。

しかし、iOSでもUIガイドラインが守れていないからと言ってReject、といったことはしてなかったはずです。

それにそもそも、自社のアプリケーションですら守れていないディスプレイガイドラインを他に強要するというのもおかしな話です。

 

Twitter社には今一度、ガイドラインやAPI規約の見直しを行なっていただきたいところであります。