October 31, 2007

マーク・アンドリーセンのOpenSocial参加宣言:Marc Andreessen Joining Open Social


Google's social networking plan was detailed, and Marc Andreessen said Ning will jump on the wagon. Recently I embedded his video clip from the first Internet Marketing Conference to the latest column of Nikkei (unpublished for months!), and what he tells in his entry "Open Social: a new universe of social applications all over the web" is basically the same; 'open, open, open,' and 'compatible, compatible, compatible.' Reading through it, I can feel his enthusiasm to see what he envisioned some 13 years ago is finally forming its shape. Below is its full translation.

グーグルのソーシャルネットワーキング戦略「Open Social」の詳細が明らかになり日本語版)、早速マーク・アンドリーセンがNingの参加を表明し、反響を呼んでいる。全訳でどうぞ。

“Open Social:ウェブ全域にまたがるソーシャルアプリの新世界”

Oct 31, 2007
by Marc Andreessen(
原文

僕の会社Ningも今週ローンチの新オープンウェブAPIに参加することにした。

この「Open Social」はグーグルが先鋒を務め、同社のOrkutの他にもLinkedIn、Hi5、Friendster、Salesforce.com、オラクル、 iLike、Flixster、RockYou、Slideなど幅広い分野の企業がパートナーとして参画する。

一言で言うとOpen SocialはオープンなウェブのAPIだ。以下2種類のディベロッパーがサポートできる。:

  • "コンテナ(Containers)" -- Ning、Orkut、LinkedIn、Hi5、Friendsterのようなソーシャルネットワーキングシステム。
  • "アプリ(Apps)" -- コンテナに埋めたいアプリ。iLike、Flixster、Rockyou、Slideなどが作るアプリがこれに相当する。

Facebookのプラットフォームコンセプトは全く同じだが、大きな違いは2つ。:

(1)Facebookプラットフォームでは“コンテナ”になれるのはFacebookだけで、“アプリ”もFacebookの中でのみ動く。逆にOpen SocialではどんなソーシャルネットワークもOpen Socialのコンテナになれる。そしてその中でOpen Socialアプリを動かすことができる。

(2)Facebookプラットフォームでは、アプリ開発者がFacebookのFBML(Facebook Markup Language)やFQL(Facebook Query Language)のようなプロプリエタリの言語とAPIでアプリを構築する。これはFacebook以外では通用しない言語とAPIだ。アプリはFacebookの中でのみ動く。逆にOpen Socialではアプリ開発者は標準HTMLとJavascriptでアプリを構築し、アプリはどのOpen Social加盟コンテナでも動く

ここでFacebookプラットフォームのことを「ネット産業にとって劇的飛躍」と書いたが、あそこに書いた内容を覚えている人なら僕がこのOpen Socialを次なる大きな飛躍と考える理由がわかるだろう。

Open SocialはFacebookプラットフォームの概念を応用し、全ウェブで使えるオープン標準のアプローチを提供する。 Open Socialでは誰でもオープンにFacebookがやったことができる。…Facebook本体になれるポテンシャルをも備えている。それについてはまた後で。

技術的に言うと、Open Socialでは僕が「プラグインAPI」とか「レベル2のプラットフォーム」と呼んでいるものを採用している。つまり、これはウェブサービスAPIではなく、むしろ外部アプリがホスト環境(これが"コンテナ”)に“プラグインする”手法なのである。文字通りコンテナのページに表示され、さらに外部アプリからJavascriptのコールを生成すればコンテナから役立つ情報はなんでも引き出せる。しかもコンテナ内で役立つファンクション全てを実行することができるのだ。「ユーザーの全友だちリストをくれ」とか、「このイベントをユーザーのアクティビティ専用フィードに書き込んでくれ」とか。

Open Socialではソーシャルネットワーキング環境(コンテナ)も外部アプリもプラグインAPIを二度と発明しなくていいように、また、複数の競合するプロプリエタリなプラグインAPIの中からひとつに選ばなくていいように、プラグインAPIのコンセプトそのものを標準化する。

Open SocialのAPIは全てJavascriptに依存している。HTMLとJavascriptを知ってる人ならOpen Socialを今すぐ使い、自分のウェブアプリケーションとサイトをOpen Socialアプリに換えることが可能だ。さらにOpen Socialのアプリは標準ウェブ開発専用ツールで構築できるので、プロプリエタリのマークアップ言語やクエリー言語を別に習得するより明らかにベターだ。

最後に、Open Socialでは標準APIコールを作ってOpen Socialアプリで実行したいことは多数実行できるが、コンテナが望めば開発者にさらに多くの機能を提供するためJavascriptやウェブサービスAPIも追加で導入できる。なのでOpen Socialのアプリ開発者は“オンロード”な状態を維持してアプリをOpen Social加盟コンテナ内すべてで動くようにもできるし、“オフロード”を選べば特定コンテナ1個か複数の特別仕様にもできる。  Open Socialは一般機能を標準化はするが、イノベーションの邪魔はしない。これについては後ほど詳しく。

Open Socialはとても実用的 標準の多くは早死にする。複雑過ぎて導入が難しいからだ。その点、Open Socialはこちらが標準に求めるものを備えている。役立つことが実現できる拡張性が充分あって、しかも簡単に導入できるようコンテナとアプリの双方に制限もかけているのだ。

今度の木曜の発表イベントでは、Open Socialが各種コンテナで既に動いているところ(つまりNing、Orkut、Hi5、LinkedInなどでiLike、Flixster、Slideなんかの各種アプリが実際に動いている場面)が見れるだろう。

ワーキングコードについて話すと、NingではOpen Socialのコンテナのサポートを追加するのに数日で充分だった。必要なunderlying APIsはもう全部揃っていたから、ほぼこのAPIにマップするだけで済んだ。-- ローンチ担当のアプリ開発者が自アプリのOpen Socialバージョンを作るのはさらに速かった。実際にiLikeなんかの同じ一つのアプリが複数のコンテナ(Ning、Orkut、Hi5)で動いているところをライブで見たが、Open Socialの仕様の相互運用性には期待が持てそうだ。

もっともOpen SocialはNingや他の提携パートナーでライブで披露するところまで準備が整っていない。APIはもう少し安定性を高めなくては駄目だし、コンテナの側もテストを終了させ、導入の実証を済ますのが先だ。だが製作システムが公開になるのは遠くない話だし、Ningも可能な限り早くライブにしたいと思っている。たぶんGoogleがAPIの最終版を仕上げるのに合わせて。

今のFacebookアプリ開発者にとって何を意味するのか?
今のFacebookアプリ開発者にとってもこれは、非常に良いニュースで、これまでFacebookアプリ構築でやった仕事を全て無駄にせず、いとも簡単にOpen Socialバージョンを生成することができる。また、そうすることで巨大な新規ユーザーのプールにアクセスも可能になる。立ち上げ時に加わるOpen Social協賛パートナーだけでもその数は1億人に上る。Facebookが現在抱えるユーザー数の倍以上だ。

アプリ開発者はFacebookとOpen Socialの間で悩む必要はない。掛け持ちは簡単にできる。手間と言っても些細なもので、これまではフロントエンドのHTMLとJavascriptページの新セットを作ることに作業の大半を振り向けてきたはずだが、自アプリをOpen Socialに“ポート”するのもあれと同じ程度の手間だ。それでNing、Orkut、Hi5、LinkedInなどOpen Socialのコンテナが使えることになる。

Facebookアプリ以外のサイトにとっては?
自サイトをOpen Socialアプリに変えたい人は、Facebookアプリを"ポートする"以上に簡単で、 今のHTMLとJavascriptのフロントエンドのページでOpen Social API活用バージョンを作ればいい。QED(証明終わり)

みんな実際問題サイトのフロントエンドのページを
FacebookとかOpen Socialとか…複数メンテするだろうか?
僕はYESだと思うね。ユーザーを最大限確保したいサイトはバックエンドはひとつにして、フロントエンドのページは複数持とうとするだろう。:

  • 標準HTMLとJavascriptページのセットは標準ウェブブラウザ用
  • 第2セットのHTMLとJavascriptのページはOpen Social APIのJavascriptコール用。これはOpen Social加盟コンテナおよびソーシャルネットワークで使う
  • 第3セットのページはFBML(Facebook Markup Language)。FacebookのプロプリエタリのAPIを使ってFacebook内でFacebookアプリとして使う
  • 第4セットのページはたぶんアップルの iPhoneとかのモバイル端末用だろうか?
嬉しいニュースは、こうしたページが同じ一つのバックエンドコードで動かせること。そしてもちろん、ウェブアプリ構築にかける手間の95%+(通常は99%+)はバックエンド構築にかかっている。バックエンド作ったことある人ならフロントエンドのページ作りは朝飯前のはずだよ。

Facebookにとってこれは何を意味するのか?
うーん個人的意見になるが、…Facebookはこの全アプローチをFacebookプラットフォームで仕掛けて素晴らしい実績を挙げた。それに塀で囲い込んだ庭内の膨大なユーザーベースが相俟ってアプリ開発&導入ラッシュがFacebookで起こった。そしてこの5ヶ月は実にうまく回ってきた。

Open Socialは、これと全く同じ種類のチャンスをその他大勢のソーシャルネットワーク、コンテナ、アプリ開発者、サイトに開いてくれる。オープンかつ互換性のある方法で。-- これはFacebookのプロプリエタリのディベロッパーの長期封じ込めを阻止する動きだ。開発者はFacebookとOpen Socialの両方に簡単にアプリを書き分けることができる。そしてそれをする動機なら無数にあるのだ。実際、1億人以上ある。

自分が仮にFacebookだとしたらプロプリエタリのものは封じ込めを好むだろう。この発表は面白くないかもしれない。だが、Facebookにとっても悪いことばかりではなく、今起ころうとしていることのは市場の拡大なのだ。Open Socialで市場拡大は間違いなく起こる。それはみんなの利益になるはずだ。Facebookも含めて。

こう考えてはどうだろう。: ネットユーザー(13億人超、毎年1億人増えている)の大半はまだなんのSNSも使っていない人たちだ。SNSがもっと魅力的になればもっと多くの人たちが気づいて使い始め、みんなのパイは大きくなる。Facebookも含めて。

一方、世界中のソフトウェア開発者の大半はまだなんのソーシャルネットワーク用アプリも書いてない未経験者だ。Facebookも非Facebookも。SNS用により多くの開発者がアプリを書くようになれば( Facebookも非Facebookも)SNSのアプリも増え、みんなのパイは大きくなる。Facebookも含めて。

Facebookならパイが10億人、いやそれ以上の世界で負けるわけがない。同様に他のみんな(コンテナ、アプリ開発者)の勝ちも自明だ。

Facebookがウェブ全域にまたがる広告ネットワーク構築に乗り出すという噂が本当なら、これはFacebookにとって別の意味で朗報だ。全ての新Open Social対応ウェブアプリに優れた広告ネットワークを提供することになるんだから!

Facebookは望みさえすればいつでも簡単にOpen Socialのサポートができる。今すぐは無理でも、長期的にはそれが最もストレスのない動きかもしれない。Facebookにアプリ書かないOpen Socialアプリ開発者のアプリも、それで使えるようになるからね。

ウェブにとって良いこと?
ものすごく良いことだ。Open Socialはウェブ開発者好みの標準で使い方は簡単だ。開発者ツールキットの多くで標準のパートとなるだろう。HTMLとJavascriptで構築するため、多くの人がサポートできるし相互運用性もある。提携サイトで既に互換になっているから言えるんだが、本当にすばらしいよ。

NingはどうOpen Socialをサポートするのか?
Open Socialのためならサポートは惜しまない。とりあえず以下のことだが、これに限らず何でもやっていこうと思っている。:

  • 素晴らしいコンテナになること。Open SocialのアプリはNingの11万3000を超える全ソーシャルネットワーク内で簡単かつリライアブルに使えるようにする。Ning Network Creatorsが迅速&簡単にOpen Socialアプリを自ネットワークに追加できるようにし、Ningユーザーも迅速&簡単にOpen Socialアプリを自分のプロフィールページに追加できるようにする。
  • アプリのパブリッシャーとなる。Facebookのプロプリエタリなプラットフォームのアプローチを活用し、Ningでは既にFacebookアプリを全Ningネットワークに自動生成可能になっている(特に動画、写真、楽曲プレーヤー)。これと同じことをOpen Social用にも行う。-- 全Ningネットワーク用にOpen Socialアプリが自動生成できるようにする。
  • Open Social対応の新アプリを作れるよう、素晴らしい環境を整備する。これはまた後で!
MySpaceはどこに?
-Beats me. (訳注:かかってこい、か?分かんない。MySpaceも加わましたね。)

Yahooはどこに?
-Beats me.

Open Social加盟のコンテナではJavascriptやウェブサービスAPIを追加で導入できると言うが、それでは互換性が崩れるのでは?
いや、そうは思わない。こう考えてみたらどうだろう。アプリ開発者として、みんなには3つのオプションがあるんだ。:

  • 純正のOpen Social APIを書くこと。充分クリーンにできたら、Open Social準拠のコンテナならどこでも手を加えずに動くはずだ。…と言ってるのは僕であってグーグルではない。-- グーグルはOpen Socialは「learn once、 write anywhere(一度習ったらどこでも書ける)」と言っているが、「write once, run anywhere(一度書いたらどこでも走る)」とは言ってない。でも使ってみるとAPIは本当にシンプルなんで「write once, run anywhere」も充分ありえそうだ。
  • コ ンテナ限定のアプリも書ける。例えば(人脈づくりの)LinkedInで使うときだけ役に立つビジネス関連のアプリ、Ningだけで通用しそう なアプリ(自ソーシャルネットワークを作る人のためのアプリ)、ね。Salesforce.comもOpen Social協賛のコンテナだが、ここで使わないと意味のないアプリもあるだろう。 こういう場合はアプリの対象を1コンテナに絞れる。また、コンテナが提供する追加APIは、Open SocialのAPIと一緒にどんなAPIでも深く考えずに使える。
  • 数種のコンテナごとに別々に動作するアプリも書ける。アプリが今どのコンテナで動いてるのか探知し、コンテナ別に異なる動作をするのだ。

みんなが考える使用例・シナリオを全部予測できる標準はない。それを欲張る標準は失敗に終わる。えてして複雑過ぎて導入不能なのだ。 誰が見ても標準的行動を標準化する標準は、その上にイノベーションの可能性をオープンにしておく限り、成功する。その歴史は明白だ。Open Socialは正しい側にいる。

最後に?
おめでとう、グーグル。グーグルのクルーはこのOpen Socialを着想・応用し、当初パートナーに伝道してきた。そして今、世界に。 Thanks!


[追]マーク・アンドリーセンがモザイクという初の商用ブラウザの聖火を抱え、イリノイから冬眠中のバレーにやってきた13年前の話は、ちょうどTechCrunch40報告の後編に書いている(日経BOでお蔵入り中でリンク貼れませんが)。そちらにIPO長者になる前の彼の動画もあるんだが、そのとき彼が言ってたことと基本は変わっていない。「compatible, compatible, compatible, open, open, open」とマントラのように唱えていた当時の展望がかたちを帯びてきた感慨に満ちている。(何度も直してすみません! -Last Updated on Nov.3, 19:28)


4 comments:

Anonymous said...

邦訳に深く感謝しつつ、おそらく、
(It) beats me - 分かんない、の口語表現だっったかと思います。

satomi said...

わ、ありがとうございます!!「s」ついてましたね…あった

知ってるはずのことを聞かれて知らない時の決まり文句…とありますね。

例)
"Wow, how did you get that bruise?"
(おー、そのアザ、どうした?)
"Beats me!"

知るか!みたいな。
わーすっきりしましたー、深謝:)

nobsato said...

うーむ、13年前か、mosaic。懐かしい。
相変わらずG社はやりますなぁ、色々と。

ってかUrban Dictionary、超便利!!

satomi said...

超便利! 
nobsato氏、日本語にも作って!

>13年前
あ、日本語んとこLINK抜けしてましたね。ここの30分目から出てますー。ふさふさです。

(PS:働いてます)

Post a Comment