[dino][web] webアプリが迎えている二つのパラダイムシフト(web/js 勉強会のゴール設定)

現在お世話になっている dino で web/js というタイトルで社内勉強会(資料、ビデオが公開中)を行っているのですが今まで「ゴールどこだろう?」がピンとこなかった。
が、ここに来て定まった感じ。


GoogleMap 登場以後、webアプリは二度のパラダイムシフトを迎えている。


一つ目は「Asynchronous化」。
GoogleMap や GMail のようなアプリケーションが可能になり、ライブサーチのように UI 部分が大きく変わった。


二つ目は「サービスコラボレーション」。
技術トピックだと JavaScript の XD 通信。
今まで別サイトにあるサービス同士がコラボレートしたければ、サービス開発者が手を入れてサービスを接続するしか無く、ユーザから見ると「固い」コラボレーションしか出来なかった。
ところが JavaScript のようなクライアントレベルでのクロスドメイン通信が可能になればクライアントレベルで「今そこにあるデータ」と別サイトのサービスとを組み合わせる事が出来、「柔らかい」コラボレーションが可能になる。


一つのサイトが目的に応じたフルサービスを提供していたのが「今まで」。大きい&ひとつ&固い。
一つのサイトが(コンポーネントのように)一つのサービスをオンデマンドで提供し、ユーザレベルでそれを組み合わせて手元のデータ(閲覧中の web 等)とコラボさせるのが「これから」。小さい&たくさん&柔らかい。


「小さい」というのは、機能を絞って提供するという事で、とても深く、専門性と競争力が高い(web = 世界的に見て技術価値、競争力がある)ことを意味する。
「たくさん」というのは、上記の個々のサービスがいっぱい繋がってユーザが必要としているものを形成するから。
「柔らかい」が XD に当たる部分で、それらが利便性高くセキュアに繋がるのが理想。


幾つかポイントがあると思っていて、

  • 小さなサービス: 世界の中で価値(競争力、存在意義)があり(価値の由来はローカリティでもいい。一般的な話に出てくる「フラット化や web 化に飲み込まれない価値」に近い)ユーザにメリットをもたらす。
  • コミュニケータ: ユーザの要望とデータからコンテクストを導き、上記の無数に有る小さなサービスをコンテクストに従って組み合わせサービスを形成するためのユーザの大切な相棒であり、ブラウザやプラットフォーム(後述)の進化する先となる。
  • プラットフォーム: サービスは単体では動作しない。データとセットで動作する。weblog やレストラン情報のようなデータを提供する場所が必要となる。weblog、personalized portalSNS がこの候補だ。
  • インタフェース: JSONPmicroformats のように、サービスやデータが協調的に動作するための規格が必要となる。
  • データ


ひとつひとつを分解すると多くの可能性や課題が眠っている。例えばコミュニケータを分解すればコンテクストの生成や適切なサービスを持ってくる為の方法など、色んな深堀り出来るネタが出てくる。


自分が SNS にこだわるのは SNS がサービスコラボレーションで鍵になる二つの可能性を持っているからだ。
一つは「関係性」。これはサービスやデータの伝わる経路となり得る。〜のレストラン情報、〜が使ったサービス、等々。データやアプリケーションは関係性に乗っかる。今私達の現実がそうであるように。
もう一つは「プラットフォーム」。Facebook がそうなりつつあるが、personalized portal はその種かも知れない。また個人ではなく「集団」- 友達や家族、グループのような「信頼」とコンテクスト(趣味や行動)で個人を包んだぼんやりとした固まり - に対して機能するアプリケーションモデルを考える事が出来るようになるのではと思っている。
I(私)ではなく We(私達)に対して機能するアプリケーションと言おうか。I -> We のシフトは機械的な機能で考えるより社会的な機能から考えると面白い。


閑話休題
今は二つ目のパラダイムシフトにさしかかっている所で、小さな価値あるサービスが web に散在してそれが組み合わさる「地球コンピュータ」へ向かう最中に思える。
というと大きすぎる予想だけど、クライアントレベルでのサービスコラボレーションがとても大事なトピックになるのはほぼ当たりだろう。
Asynchronous化を取り入れたサイト構築に関しては、最早当たり前になっている。


で、web/js社内勉強会だ。
web/js のゴールはパラダイムシフトに対して実務で使える知識、スキルを補間していく事。
今は当たり前のモノになっているAsynchronous化を案件内で手軽&高品質で使えるように、しっかりとやっていきたい。


もっと大枠の方向性としては、地球コンピュータ構成要素(小さなサービスやプラットフォーム)の開発で前提となる知識やスキルの追いかけ&伝達があるが、これもどこかに落としどころを作りたい。
面白いデータやプランを抱えたお客さんと出会ったときに、そのお客さんの持つ価値がサービスやデータとして web の新しい仲間に加わり価値をもたらすように、提案&理解して仕事の出来るスペシャリストチームであるように。