読者です 読者をやめる 読者になる 読者になる

albatrosary's blog

Azure と Angular と Wercker CI とか

「第52回 HTML5とか勉強会」に行ってみた、そのときのメモ

久しぶりに東京で行われた「HTML5とか勉強会」へ行ってみました。「HTML5とか勉強会」は仙台とか地方での勉強会は行っていたのですが都内は久しぶり。人気の勉強会なので中々予約が取れず、今回は良いタイミングでラッキーでした。
本日のテーマは「Web標準最新動向 HTML5のこれからとTPAC(ティーパック)のお話」です。アジェンダ

  • 「TPACって何?+W3C20周年イベント」 - 小松健作さん(NTT Communications)
  • HTML5 これまでの経緯とこれから」 - 矢倉眞隆さん
  • 「BreakoutsでPresentation APIの拡張提案したよ」 - さっくるさん(NTT Communications)
  • 「Web App Security」 - Natasha Rooney(GSMA)
  • 「WebRTC update」 - Alan Iida(NTT Communications)

イベント内容

「TPACって何?+W3C20周年イベント」 - 小松健作

W3CはWebに関する様々な仕様を検討しているコンソーシアム(正確には国際標準化団体ではない)がWebにまつわる取り決めを進めています。

  • Working Group:仕様を決める権限をもつ
  • Interest Group:未だにCGとの違いがわかっていない
  • Community Group:こんなのあったらいいんじゃない?を初期検討する
  • Business Group:Technicalでなくビジネス面で検討する

ちなみにみんな HTMLとかJavaScriptが大好きで「HTML5.next」では日本のdeveloperがもっと関われるようにしたいということです。

TPACは、年に一度の技術総会で各WGメンバーが一同に介するW3C最大のイベントです。今年は10/27-31にカルフォルニアで行われたそうです。4年前までは完全なカンファレンスだったが最近は自由な議論でということでアンカンファレンス形式をとっているそうです。

Group Schedule | TPAC 2014

アメリカ→ヨーロッパ→アメリカの繰り返しだったが、去年からアジアでも開催されるようになったそうです。来年は札幌でやるそうです。

シリコンバレーでW3C20周年のイベントが行われました。Webは25年前に誕生しました。Timが上司に論文草稿を見せたのがきっかけだそうです。ちなみにW3Cは20周年になります。2014/10/29にこれからのWebについての話が行われました。そのときのTimさんのお話についてのポイント:

  • 最初のタグは6個。どんどん増えていった
  • Timのコンピュータの中だけでは収まらなくなりW3Cが生まれた
  • 標準化のプロセスが確立し、ロイヤリティフリーが認められた
  • Webが作り上げたものは健康的な民主化が生まれOpenなマインドが重要(時にはLAyerを破ることも必要)
  • 違う趣味・信念・パーティが交わることで新しいWebが生まれる

宜しければこちらも:

Webのメモリアルイヤー!W3C20 ANNIVERSARY SYMPOSIUM ライブレポート(1/2) | HTML5Experts.jp

ティムのクロージングトークが素晴らしい!「W3C20 ANNIVERSARY SYMPOSIUM」ライブレポート(2/2) | HTML5Experts.jp

7 - Commissioner Jessica Rosenworcel: Access for All on Vimeo

HTML5 これまでの経緯とこれから」 - 矢倉眞隆

続きまして風邪気味の矢倉さんです。HTML5勧告というのは

  • 重要な転換点
  • Webが大きく動く

ということではありません。どちらかと「ふ〜ん」という感じのようです。勧告とは「仕様ができて機能の実装が複数あり、もう使える/使っていい状態」を表しています。何の意味があるかというと「参照先としての体裁を整える必要があり、特許ポリシーが発行される」ということのようです。開発者にとってはどれだけ意味があるのかはあります。どちらかと実装者にとっては意味があり、例えばcanvasは半分がappleが特許をとっていますが、その幾つかはライセンスフリーになっています。
HTML5WHATWG HTML:WHATWG HTMLはHTML5仕様の「もと」他の仕様の「もと」でもあります。HTML5仕様の作り方ですが、WHATWG HTMLがマスターであり切り出して複数の仕様に分割して、W3C版のパッチを当てるという手順をとってます。これがHTML5仕様です。

WHATWG HTML -(ブランチ)-> W3C HTML5(Nightly) -(ブランチ)-> HTML5(REC)

W3C版のパッチは合意がとれない内容がよくあり、その部分は仕様が異なります。具体的には hgroupとかだそうです。どっちがいいのかというと、機能によるそうで、基本は「WHATWG HTML」で一部W3Cを見るのが良いのか・・・ということのようです(ちょっと難しい)。

5.0のバグ潰しを行っていて、メンテナンスされていないバグを見つけ解決されていないものを解決しています。5.0漏れの機能調査としてはプライオリティを定め個別にアクションを取っていくそうです。WHATWGとの競合解決として役割分担を明確にしてWHATWGの仕様を参照するということがW3Cで行われています。

HTMLの拡張方法として

  1. WHATWG HTMLに追加
  2. W3C HTML5に追加
  3. HTMLの拡張仕様にする
  4. 他の仕様がモンキー・パンチ

モジュラリゼーション、つまり、巨大な仕様は、メンテナンスがすごく大変でテストも当然大変なので今後は小さくしたいと考えているそうです。
ハッカビリティ、つまり、仕様をgithubで策定する試みがありissueで議論し pull request で貢献するという手順を踏むそうです。よりモダンな策定方法を検討しているとのことです。
Extensible Web構想として、高レイヤーを再現でき、低レイヤーのAPIを定義します。こうするとライブラリがより重要になります。低レイヤーな仕様として例えばWeb Componentsは要素を挙動こみで定義する。
Symbiosisとして開発者が欲しい機能を作れ、作ったものをフィードバックできる。標準・実装・開発の共生関係が確立される。

できることは新しい仕様がでた場合には

  • 使ってみる
  • 仕様や実装につっこんでみる
  • ドキュメントを書いてみる

twitterに流れていた「W3CのTAGがExtensible Webの観点から仕様をレビューしたまとめ」がありましたのでメモ:

The Extensible Web Report Card

「BreakoutsでPresentation APIの拡張提案したよ」 - さっくる

Breakoutsはアンカンファレンススタイルのセッションになります。テーマやセション内容は予め参加者用のWebがありそこに書き込みます。当日スケジュールボードが発行され、そこに自由に書き込んでいきます。
Presentation APIとはWebページをセカンドスクリーンに移し、操作を可能にするAPIです。ブラウザでの実装はまだまだです。startSessionでセッションを確立後postSessionで画面を映し出します。non-screenデバイスにも対応拡張させたとすると色々なデバイスをWebから操作することができます。
Network Service Discovery APIはネットワーク上のデバイスが持っている"サービス"を簡単に検索したりそのサービスのURLを知るためのAPIで,UPnPに対応したデバイスのサービスをJavaScriptによってコントロールすることがでます。提案した拡張Presentation APIについて、セッション中にデモをおこない説明をしましたが、もちろんブラウザには、まだ実装されていませんので、すべて実装してのデモでした。

TPAC2014/SessionIdeas - W3C Wiki

さっくるさんによるデモ

githubにPresentation APIのデモがありましたのでリンクします:

Presentation API Demo

「Web App Security」 - Natasha Rooney

東京に住んでいる「Natasha」さんですが英語です…

〜 聞くのもいっぱいいっぱい… #html5j で翻訳がところどころありますので追っかけてください 〜

Content Security Policy 1.0

Content Security Policy Reference & Examples

Content Security Policy Level 2

「WebRTC update」 - Alan Iida

WebRTCとは、ブラウザー間でサーバを経由せずP2Pで通信できるAPIでデータもメディアも対応しています。Skypeもこれに対応するそうです。WGの雰囲気ですが「まじめ」「口癖が」「悲しくなる」たまに「熱くなる」という感じでORTCという単語は一度も口に出さなかったということです。
現在、入力デバイスは選択できるが出力は選択できません。セキュリティ的にJSでデバイスが見れても大丈夫なのか?ということがあります。提案としては、ヘッドセット等入出力両方できるデバイスはセットで許可する。セットじゃなかったら出力はデフォルトデバイスとするなどを行いました。Media Captureはラストコールになるところです。

Promise議論が白熱!TPAC 2014 WebRTCワーキンググループレポート | HTML5Experts.jp

最後に

久しぶりの「HTML5とか勉強会」でしたが楽しかったです、たまには顔を出そうと思います。しかし、英語力上げたいと思いつつ何年たつのだろう・・・