Web技術者の祭典「HTML5 Conference 2016」が2016年9月3日に東京電機大学で開催されました。今年もWebの最先端で活躍するエキスパートたちがWebAssembly、Angular、React、Progressive Web Apps、AI・機械学習、WebVR、IoTなどHTML5を取り巻く注目の技術について語りました。
HTML5 Experts.jpでは、HTML5 Conferenceのセッションで語られた技術情報を特集としてレポートしていきます。その第一弾として、基調講演として行われた2つのセッションを紹介します。
Webは世界で動く唯一の分散型OSである
トップバッターとして登壇したのは、W3Cのサイトマネージャである慶應義塾大学環境情報学部・中村修教授。セッションタイトル「WEBという名前の大規模分散オペレーションシステム」。
色の輝度幅を拡大し、高画質化する技術HDR(High Dynamic Range)がNetflixなどの映像コンテンツなどに使われているが、Webブラウザから輝度情報のハンドリングするAPIを作るなどで、HDRをWebでも使うことができないかという投げかけから、講演をスタートさせました。
▲慶應義塾大学環境情報学部教授 W3C/KEIO Site Manager 中村 修氏
(1983年 慶應義塾大学工学部卒業 工学博士、1990年から東京大学大型計算機センター助手を経て1993年慶應義塾大学環境情報学部助手となり、現在慶應義塾大学環境情報学部教授。1987からWIDEプロジェクトにてインターネットの研究開発に携わる。広帯域インターネットやIPv6の研究開発、普及に携わる。2014年からW3C/KEIO Site Managerに就任し、Web技術の標準化活動を推進する。WIDEプロジェクトボード、総務省IPv6研究会委員、IPv6普及高度化推進協議会理事も務める)
Webはこれまで既存の文化や紙のような表現・データ構造に引っ張てきた。だが、これからはロボットやVRといった新しいデバイスに対し、新たなデータ表現を取り入れたコンテンツの発信を行っていくことがミッションであるという中村修教授。
IT業界ではビッグデータ、AI、IoTといった技術がバズワードになっているが、その基盤となっているのはWebとインターネット。「皆さんが基盤を支えている、今の世界を作っていることを再確認してほしい」とメッセージを送ります。
「Webは世界で動く唯一の分散型OS(Distributed Operating System)であり、インターネットで繋がった世界や、IoTで繋がるすべてのデバイスなどの計算資源をHTTP/HTTPS、HTML、URL、APIによってユーザーに提供している。W3Cでは日本のHybridcastや欧州のHbbTV 2.0がHTML5に準拠し、自動車の地図の車載情報やセンサー情報が、Webプラットフォームとして扱うためのAPIが研究されている。近い将来、車載のディスプレイやインパネはHTML5になるはず」と中村教授は言います。
W3Cの活動状況については、電子書籍とWebに関してもIDPF(E-Pub)とW3Cの統合に向けた話し合いが行われていることや、日本独自の文化である縦書きやルビの標準化が進んでいることを報告。ブロックチェーンに関するワークショップも7月に開催されたとのこと。
なぜ、W3Cがその話をするのかといえば、世界中のみんなでトラストして作ることがオープンな分散環境となるからだという中村教授。みんながオープンで平等な世界観がブロックチェーンなら発揮できる、WoT(Web of Things)の世界が作れるのではないかと語り、「WoT Servient」というアーキテクチャを紹介。
さらに、「Webとインターネットの共通のPhilosophy(哲学)はOpen」と、Webの生みの親とインターネットの父の言葉を紹介。「様々なデバイスや制御のためのプログラムインターフェイスとなるAPI、セキュリティ、新しいアプリのためのアーキテクチャ、共通な識別子とデータ構造とその表現を考える必要がある。Webコミュニティの協力を得ながら、こうしたWebの機能拡張を進めていきたい」とセッションを締めくくりました。
アプリケーション・メディア・プラットフォーム、3つの側面から見たWeb
及川卓也さんのセッションでは、「アプリケーションとしてのWeb」「メディアとしてのWeb」「基盤技術としてのWeb」という3つの側面から見たWebが語られました。
※こちらのセッションは、要約としてご紹介します。
(大学卒業後、外資系コンピューター企業での研究開発、マイクロソフトでの日本語版・韓国語版Windowsの開発統括を経て、グーグルでプロダクトマネージャとエンジニアリングマネージャを務める。2015年11月より、プログラマのための技術情報共有サービス「Qiita」やドキュメントを軸としたコラボレーションサービス「Qiita:Team」を提供するIncrements株式会社にてプロダクトマネージャとして従事。エンジニアのキャリアプランニングやエンジニアリングマネージメントなどの領域で自社のQiitaやQiita:Teamの活用を軸としてスタートアップにアドバイスも行う)
1.アプリケーションとしてのWeb
これは、まさに今私たちがHTML5と呼んでいるWebそのもの。情報の公開や共有手段としてセマンティック性を持ったWebを、アプリケーションプラットフォームとして定義しなおし、実際に使えるものにしようというものです。
デスクトップアプリケーションから始まり、ネイティブのアプリケーション、最近ではモバイルアプリケーションを中心にAPIの補充やさまざまな機能が追加され、プログラマの生産性を高めるためのコンポーネント技術や、Progressive Web Appsなどに転換していきました。
中村先生がHDRの話をしたので思い出したのですが、以前からaudioタグやvideoタグというようなプラグインを必要としないオーディオやビデオの再生がWeb上でできるようになると、Google Developer Dayなどの基調講演でも話してきました。
GoogleのChrome WebAudioチームは、サラウンドサウンドを配信するOmnitoneを開発し、すでに空間音響システムをWebで実現しています。VRなどのビジュアルの世界で仮想現実を実現することができるようになってきたんですね。
さらに視野を広げてみると、Webというのはデスクトップパソコンの横長のディスプレイやキーボード、マウスに閉じていたのですが、それを超えたものが考えられ、標準化され、実装されていくという世界になっています。
Progressive Web AppsはSingle-page Application(SPA)で考えたときに、よりアプリ化するところの新たな提案になるわけです。 Chromeアプリはdeprecateされたが、失敗というわけではなく、学んだことを活かして別の形にしたものがProgressive Web Appsなんです。
WebAssemblyの登場により、Webって何だろうと考えることがあります。CやC++で書かれたものがネイティブコードで動く。asm.jsやGoogle Native Client(NaCl)が出てきて、言語がJavaScriptであるという必要もなくなってきた。いわゆる1990年後半のWebと言われているものとは違い、汎用のアプリケーション技術として認識したほうがいいのではないかと考えています。
2.メディアとしてのWeb
次はモバイルデバイス、スマホという切り口で考えてみたいと思います。隙間時間にはスマホを見ている人はたくさんいます。その典型例がニュースキュレーションアプリ。マーケットリサーチも示しているように、情報を取得する手段として、ニュースキュレーションアプリが最も使われているのは明らかです。
ここでWebがどういう役割を果たせているか、課題は何かを考えてみます。Webのニュースサイトを「モバイルで見る」ときに、私たちは今まで何をしてきたか、何をさぼってきたかを目の当たりにするわけです。逆に言うと、なぜニュースキュレーションに特化したアプリが出てきたか、なぜ多くの人に使われているのか。これはモバイルのWebページが否定されているということでもあるのです。
ブラウザからニュースサイトを開くと広告がいろいろ出てきて、次のページに行こうとすると微妙にじゃましてきて、押すつもりがないのにタップしてしまう。タップさせることに悪意がなかったとしても、サードパーティのコンポーネントやアドネットワークを入れてしまうと、ロードが遅延して肝心のコンテンツがなかなか表示されないということが発生してしまう。
サイトオーナーが意図的にやっているケースもあれば、サードパーティのコンポーネントのふるまいによって行われていることもあるが、ユーザーから見たらUXは最悪。見たいページが見れず、不要なタグだらけになってしまう。
そのアンチテーゼとして出てきたのが、ニュースキュレーションアプリ。特別のフォーマットでコンテンツを流していたり、スクレイピングして本当のコンテンツだけ見れるようにしているので、ユーザーは見たい情報を見ることができるし、不要な広告は見なくて済むし、操作性もいいというUXになっています。
だから、ニュースキュレーションアプリが流行っているのは、これまでWebがこうしたことをさぼっていたということで、それで一気にひっくり返されたという状況なんです。
このさぼっていた状況に対してエコシステムとして働いたのが、Googleが提唱しているAMP(Accelerated Mobile Pages)。AMPのJSのフレームワークに沿ってタグを入れることによって即座にロードすることができ、ページがキャッシュされるので、こうした課題は解決されます。
ただ課題としては、CMSやツールがこうしたPWAppsやAMPの対応を阻害しているケースがあることです。自分でWebサイトを作っているわけではないので、対応したくても対応できない。さらには見た目はいいんだけど、セマンティック性がバラバラになっていることがあり、モバイル対応の遅れにつながったり、Web上のさまざまな技術を阻害する原因になっていることもあり、今後対応していく必要があります。
3.基盤技術としてのWeb
アプリと使うときもメディアとして情報の流通として使うときも、必要になるのは安定、安心、快適に使うための基礎技術です。HTTP/1.1がHTTP/2にアップグレードし、GoogleがWebアクセスの高速化のために開発した通信技術QUIC、W3Cが推奨し牽引しているSSL/TLS。これらは全てきちんとやることによって、利用者に快適に使ってもらう規定路線です。
Webに対して再投資を考えてみよう
Google I/OではAndroidのVR標準対応やインストール不要のInstant Appsが発表された。2016年はもう一回Webを見直し、Webに再投資する年だということも言っている。モバイルのアプリはストア上で発見してもらうことも大変だし、インストールしてもらうことも、使い続けてもらうことも大変という状況。Webの検索との連動など、Webは使える事実がある。ハイブリッドという形でユーザーとのエンゲージメントを高めていく可能性もあります。
- Reinvest in the Web(今こそWebに再投資しよう)
- Reinvent the Web(今こそWebを再発明しよう)
ティム・バーナーズ=リーも「Webに対して再投資を考えてみよう」と言っている。今こそもう一度正しい技術を考えていくことが必要なのではないかと思います。