<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:series="http://organizeseries.com/"
	>

<channel>
	<title>W3C &#8211; HTML5Experts.jp</title>
	<atom:link href="/tag/w3c/feed/" rel="self" type="application/rss+xml" />
	<link>https://html5experts.jp</link>
	<description>日本に、もっとエキスパートを。</description>
	<lastBuildDate>Sat, 07 Jul 2018 03:14:05 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.7.19</generator>
	<item>
		<title>Web標準化という仕事、そしてWebの今後について、W3Cの中の人に聞いてきた</title>
		<link>/shumpei-shiraishi/24736/</link>
		<pubDate>Fri, 22 Dec 2017 05:59:01 +0000</pubDate>
		<dc:creator><![CDATA[白石 俊平]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[Web標準化]]></category>

		<guid isPermaLink="false">/?p=24736</guid>
		<description><![CDATA[Webの現状をどう見る？ 白石: 今日は取材お受けいただきありがとうございます。簡単に自己紹介からお願いします。 芦村: W3C/Keioで働いている芦村です。Webの標準化を仕事にしていまして、アクセシビリティやコンピ...]]></description>
				<content:encoded><![CDATA[<h2>Webの現状をどう見る？</h2>

<p><b class="speaker siraisi"><b class="speaker siraisi">白石:</b></b> 今日は取材お受けいただきありがとうございます。簡単に自己紹介からお願いします。</p>

<p><b class="speaker asimura">芦村:</b> W3C/Keioで働いている芦村です。Webの標準化を仕事にしていまして、アクセシビリティやコンピューターを使いやすくすることに興味を持って取り組んでいます。</p>

<p><b class="speaker siraisi">白石:</b> W3Cの方に直接お話を伺う機会なんてそうはないので楽しみにしてきました。芦村さんから見て、今のWebの現状はいかがですか？</p>

<p><b class="speaker asimura">芦村:</b> HTML5のムーブメントを経て、<strong>アプリケーションやシステム構築のための共通プラットフォームになってきました</strong>。
WebDINO Japan（元Mozilla Japan）の浅井智也さんが作った「Web曼荼羅」という図ですが、凄まじい数の仕様が、様々な団体をまたがって策定されているのがおわかりかと思います。</p>

<p><img src="/wp-content/uploads/2017/11/mandara-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24738" srcset="/wp-content/uploads/2017/11/mandara.jpg 640w, /wp-content/uploads/2017/11/mandara-300x169.jpg 300w, /wp-content/uploads/2017/11/mandara-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p>とはいえ、まだまだ道半ばではあります。プラットフォームであるからには、便利で安定していなくてはなりません。
そのためにはプラットフォームとしての機能をより高めていくだけでなく、既存の仕様に対するテストももっと充実させていかなくてはなりません。</p>

<p><b class="speaker siraisi">白石:</b> まだ成長中のプラットフォームであると。</p>

<p><b class="speaker asimura">芦村:</b> はい、そして更に、<strong>人にフォーカスしなくてはなりません</strong>。</p>

<p>開発者にとって、開発が楽なプラットフォームかどうか？Google ChromeやFirefoxには開発者ツールが付属していますが、ああいったツールを含め、開発全体の環境を良くしていく必要があります。</p>

<p>また、開発者の教育も重要です。特に若い人に対して、Webの知識を広めていかなくてはなりません。
そういう意味では、W3Cの日本における事務局が慶応大学にあるのはいいことだと思います。学生との接点を持ちやすいですし。</p>

<p><b class="speaker siraisi">白石:</b> Webのユニークなところは、数多くの企業が協同で標準化に努めているアプリケーションプラットフォームだと言うところだと思います。
しかもその企業の中には、グーグル、アップル、マイクロソフトと言った巨大なベンダーが含まれている。</p>

<p><b class="speaker asimura">芦村:</b> 現在、400社くらいの企業がW3Cに協賛してくださっています。標準化における主役はそうした会員企業の皆様で、私たちはそのサポート役です。
私は時々「ホテルのコンシェルジュみたいな仕事だ」と言ったりしますけどね(笑)。</p>

<p><b class="speaker siraisi">白石:</b> そうした企業を繋いでいく標準化のお仕事というのは、具体的にはどのようなものなのでしょうか？</p>

<p><b class="speaker asimura">芦村:</b> 標準化の作業は、結局のところ「仕様書をみんなで作っていく」ということに尽きます。</p>

<p>仕様書は<a href="https://www.w3.org/2017/Process-20170301/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">W3C Process Document</a>という文書に書かれたルールに則り、ワーキングドラフトという状態から始まって、最終的な「勧告」という状態を目指して作業が行われます。</p>

<p>仕様書を策定するのはワーキンググループの役割で、その間のコミュニケーションを円滑にするのが私たちの重要な仕事の一つです。
電話会議を実施して議事録を取ったり、メーリングリストやGitHubで行われる議論をウォッチしたり。ちなみに私の電話会議のスケジュールはこんな感じです。</p>

<p><img src="/wp-content/uploads/2017/11/sched-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24740" srcset="/wp-content/uploads/2017/11/sched.jpg 640w, /wp-content/uploads/2017/11/sched-300x169.jpg 300w, /wp-content/uploads/2017/11/sched-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker siraisi">白石:</b> うわぁ…夜8時以降がギッシリ。海外との電話会議だから時差があって大変ですね。</p>

<p><b class="speaker asimura">芦村:</b> そうなんです(笑)。</p>

<p><b class="speaker siraisi">白石:</b> 様々な仕様が同時並行で標準化されていくのを、横断してサポートする感じなんですね。お仕事の雰囲気がなんとなくつかめました。</p>

<h2>Webとテレビ…メディアプラットフォームとしてのHTML5の現状</h2>

<p><b class="speaker siraisi">白石:</b> 今は、どういった分野の標準化を強く推進しているのでしょうか？</p>

<p><b class="speaker asimura">芦村:</b> テレビ、IoT、自動車と言った産業分野での応用に力を入れています。</p>

<p>まずテレビの分野では、今までの一方向のブロードキャストを超えて、インタラクティブなテレビ放送の実現が望まれています。
日本では、NHKさんが主導してハイブリッドキャストの標準化などを進めていらっしゃいますね。</p>

<p>HTML5を（動画の）メディアプラットフォームとして使って頂くためには、標準の<code>video</code>要素に不足している機能がいくつかあります。例えばストリーミング配信だったり、コンテンツ保護の機能だったりですね。</p>

<p>それらを補うために、<a href="https://www.w3.org/TR/media-source/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Media Source Extensions</a> (MSE)や<a href="https://www.w3.org/TR/encrypted-media/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Encrypted Media Extensions</a> (EME) といった仕様も既にありますし、字幕などを実現するためのフォーマットである<a href="https://www.w3.org/TR/ttml1/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">TTML</a>や<a href="https://www.w3.org/TR/webvtt1/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">WebVTT</a>、セカンドスクリーン制御用の<a href="https://www.w3.org/TR/presentation-api/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Presentation API</a>などもあります。</p>

<p><img src="/wp-content/uploads/2017/11/media-specs-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24739" srcset="/wp-content/uploads/2017/11/media-specs.jpg 640w, /wp-content/uploads/2017/11/media-specs-300x169.jpg 300w, /wp-content/uploads/2017/11/media-specs-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker siraisi">白石:</b> メディア配信のための機能はかなり充実していると言えそうですね。</p>

<h2>今後のクルマはWebSocketサーバーに？</h2>

<p><b class="speaker asimura">芦村:</b> Webとクルマについても、最近活発に議論されています。</p>

<p>近年「コネクテッド・カー」というコンセプトで、インターネットに常時接続する自動車が開発されています。そうした中、Webの自動車における利用も具体的に検討されています。</p>

<p><b class="speaker siraisi">白石:</b> カーナビとかで使われる、センタースクリーンのUIがWebブラウザになる、って感じでしょうか？</p>

<p><b class="speaker asimura">芦村:</b> それは一つのユースケースですね。ほかにも、クラウドにデータをアップロードする「Webクライアント」としての利用や、自動車固有のデータを扱うためのJavaScript APIなども整備されています。</p>

<p><img src="/wp-content/uploads/2017/11/connected-car-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24737" srcset="/wp-content/uploads/2017/11/connected-car.jpg 640w, /wp-content/uploads/2017/11/connected-car-300x169.jpg 300w, /wp-content/uploads/2017/11/connected-car-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker asimura">芦村:</b> で、実際の車載システムとのコミュニケーションは、WebSocketを利用する仕様が提案されています。Vehicle Signal Architectureの図を見ると全体像が把握できるかと思います。</p>

<p><img src="/wp-content/uploads/2017/11/vehicle-signal-architecture-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24742" srcset="/wp-content/uploads/2017/11/vehicle-signal-architecture.jpg 640w, /wp-content/uploads/2017/11/vehicle-signal-architecture-300x169.jpg 300w, /wp-content/uploads/2017/11/vehicle-signal-architecture-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker siraisi">白石:</b> WebSocketで車とコミュニケートできるんですか、なんか胸熱ですね…！</p>

<p><b class="speaker asimura">芦村:</b> 自動車技術とWeb技術の融合に関心のある方は、<a href="https://rp.kddi-research.jp/hackathon" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Webとクルマのハッカソン</a>というイベントもあるので、申し込んでいただくといいかと思います。</p>

<h2>「つながなきゃもったいない」…Web of Things (WoT)の狙い</h2>

<p><b class="speaker asimura">芦村:</b> IoT分野に対しては、Web of Things (WoT) という取り組みを通じて、IoT機器やプラットフォーム間の相互接続を促進しようとしています。</p>

<p><b class="speaker siraisi">白石:</b> しかし、IoTデバイスって、Webブラウザを搭載するには非力なものも多そうだし、そもそもスクリーンを持たないデバイスも沢山ありますよね。そこでWebが果たせる役割とは何なのでしょうか？</p>

<p><b class="speaker asimura">芦村:</b> 確かに「Webブラウザ」という観点からでは、仰る通りです。ただ、ここで言っているWebとはもっと広い意味、「インターネット上の情報空間」という性格のWebを差しています。</p>

<p><img src="/wp-content/uploads/2017/11/web-and-internet-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24743" srcset="/wp-content/uploads/2017/11/web-and-internet.jpg 640w, /wp-content/uploads/2017/11/web-and-internet-300x169.jpg 300w, /wp-content/uploads/2017/11/web-and-internet-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker asimura">芦村:</b> いろんなものがインターネットに繋がって、集められたデータが、既にWeb上に蓄積していますし、その蓄積する速度はこれからも増すばかりでしょう。
だから、率直に言ってそれらのデータを連携させないのはもったいないぞ、<strong>もったいないおばけが出るぞ</strong>、なんて思っているんです(笑)。</p>

<p>IoTデバイスは、既にWebに接続しています。しかし今はそれらの実装がバラバラ。
ただ実際に、それらを連携させたいというニーズは、ユーザーからも企業側からも出てきています。</p>

<p><b class="speaker siraisi">白石:</b> 錚々たる企業が参加してますね。</p>

<p><b class="speaker asimura">芦村:</b> そこでW3Cには業界における<strong>ユニバーサル・ジョイント・アダプター的な役割が求められている</strong>んです。</p>

<p><img src="/wp-content/uploads/2017/12/0102562b58277cf46fa1af23c664ffc5-640x360.png" alt="" width="640" height="360" class="aligncenter size-large wp-image-25041" srcset="/wp-content/uploads/2017/12/0102562b58277cf46fa1af23c664ffc5.png 640w, /wp-content/uploads/2017/12/0102562b58277cf46fa1af23c664ffc5-300x169.png 300w, /wp-content/uploads/2017/12/0102562b58277cf46fa1af23c664ffc5-207x116.png 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker siraisi">白石:</b> WoTとは具体的にどのような技術セットなのですか？</p>

<p><b class="speaker asimura">芦村:</b> 全体像としては「W3C WoT Framework」というものになります。そのフレームワークでは、WebサーバーとWebクライアントのどちらも備えた「Servient (Server + Client)」と呼ばれるデバイス同士が相互接続するというのが基本的なモデルです。</p>

<p><img src="/wp-content/uploads/2017/11/wot-framework-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24744" srcset="/wp-content/uploads/2017/11/wot-framework.jpg 640w, /wp-content/uploads/2017/11/wot-framework-300x169.jpg 300w, /wp-content/uploads/2017/11/wot-framework-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p>そして、機器を公開したり発見したりアクセスしたり…という事を行うためのJavaScript APIも規定されています。</p>

<p><img src="/wp-content/uploads/2017/11/wot-script1-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24746" srcset="/wp-content/uploads/2017/11/wot-script1.jpg 640w, /wp-content/uploads/2017/11/wot-script1-300x169.jpg 300w, /wp-content/uploads/2017/11/wot-script1-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><img src="/wp-content/uploads/2017/11/wot-script2-640x360.jpg" alt="" width="640" height="360" class="aligncenter size-large wp-image-24747" srcset="/wp-content/uploads/2017/11/wot-script2.jpg 640w, /wp-content/uploads/2017/11/wot-script2-300x169.jpg 300w, /wp-content/uploads/2017/11/wot-script2-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker siraisi">白石:</b> Servientですか、デバイスにサーバーもクライアントも突っ込むとは。大胆で面白いアイデアですね〜。</p>

<h2>Webを継続的に発展させていくために</h2>

<p><b class="speaker siraisi">白石:</b> では、最後にWebの今後とW3Cが果たす役割についてお話いただけますでしょうか？</p>

<p><b class="speaker asimura">芦村:</b> Webの本質は、<strong>自律分散協調システムである</strong>というところにあると思うんです。あらゆる主体が自律的に、分散して活動するのですが、更にそれらが協調することでより大きな価値を生んでいく。</p>

<p><strong>W3Cが注力しているのは、こうした自律分散協調システムが、より活性化するように後押ししていくこと</strong>です。</p>

<p>自律と分散により、それぞれの主体が競争しながら個別の実装を行っていく。しかしそれらの実装は、「Webと繋がっている」という点では共通です。Webはインターネット上のグローバルな情報プラットフォームですから。
そうしてWebに繋がっている個々の主体を、今度は相互接続して協調できるように働きかけていく。</p>

<p><img src="/wp-content/uploads/2017/12/6b5b50b8b2579613da43109baead0b18-640x360.png" alt="" width="640" height="360" class="aligncenter size-large wp-image-25042" srcset="/wp-content/uploads/2017/12/6b5b50b8b2579613da43109baead0b18.png 640w, /wp-content/uploads/2017/12/6b5b50b8b2579613da43109baead0b18-300x169.png 300w, /wp-content/uploads/2017/12/6b5b50b8b2579613da43109baead0b18-207x116.png 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><b class="speaker siraisi">白石:</b> なるほど、そういう観点から見ると、Webブラウザも「Webと繋がっている」アプリケーションですし、HTMLやCSSの標準化とかもまた違った捉えかたができそうですね。</p>

<p>しかし個人的には、HTMLやCSSの標準化を見ても、活発に進めているのはごく少数の企業のみ…というふうにも思えます。
これは、標準化から利益を得られる企業が限られているからとも思えるのですが、そこはどうお考えですか？</p>

<p><b class="speaker asimura">芦村:</b> 確かにそういう見方は否定できません。Webは基本的にオープンであることを指向しますから、既存の企業も、<strong>オープンウェブの上にビジネスを再構築する必要が生じるという面もある</strong>ためです。</p>

<p>そしてやはり、標準化が企業の利益に貢献するというモデルを後押しする必要はあると思っています。そうでない企業にとっては、標準化って「趣味」みたいなものになってしまいますから。</p>

<p>そういう意味では、WoTは良いテストケースだと思っています。たくさんのモノを、そして企業をつなぎ、さらにそれら企業の利益に貢献する。そして、Webがオープンな場所として健全に発展していくことを、継続的に後押しするのがW3Cの役割だと思います。</p>

<p><b class="speaker siraisi">白石:</b> 本日は、W3Cという立ち位置からの貴重なお話、大変面白かったです。どうもありがとうございました！</p>
]]></content:encoded>
			</item>
		<item>
		<title>W3Cのは『欠陥フォーク』！？ HTMLスナップショット2016 ── HTML5 Conference 2016セッションレポート</title>
		<link>/momdo/21119/</link>
		<pubDate>Fri, 21 Oct 2016 01:07:01 +0000</pubDate>
		<dc:creator><![CDATA[もんど]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[HTML5 Conference 2016]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[WHATWG]]></category>

		<guid isPermaLink="false">/?p=21119</guid>
		<description><![CDATA[連載： HTML5 Conference 2016 特集 (4)HTML5 Conference 2016特集・第四弾は、「HTMLスナップショット2016」。2016年現在、HTMLはW3CとWHATWGという2つの組...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/html5-conf2016/" class="series-403" title="HTML5 Conference 2016 特集" data-wpel-link="internal">HTML5 Conference 2016 特集</a> (4)</div><p><a href="https://html5experts.jp/series/html5-conf2016/" data-wpel-link="internal">HTML5 Conference 2016特集</a>・第四弾は、「<a href="http://events.html5j.org/conference/2016/9/session/#session_id_a2" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">HTMLスナップショット2016</a>」。2016年現在、HTMLは<abbr title="World Wide Web Consortium">W3C</abbr>と<abbr title="Web Hypertext Application Technology Working Group">WHATWG</abbr>という2つの組織によって別々に標準化が進んでいます。2つのHTMLが存在するに至った歴史と将来の展望、両者の違いを簡単にまとめます。</p>

<p><img src="/wp-content/uploads/2016/10/HTML5-Conference-2016mondo-1.jpg" alt="" width="627" height="371" class="alignnone size-full wp-image-21489" srcset="/wp-content/uploads/2016/10/HTML5-Conference-2016mondo-1.jpg 627w, /wp-content/uploads/2016/10/HTML5-Conference-2016mondo-1-300x178.jpg 300w, /wp-content/uploads/2016/10/HTML5-Conference-2016mondo-1-207x122.jpg 207w" sizes="(max-width: 627px) 100vw, 627px" /></p>

<h2>2つのHTMLに至った歴史</h2>

<p>
1999年にHTML4.01勧告が発行されてから足掛け15年、2014年にHTML5が勧告として発行されるに至ったわけですが、その間の主な出来事を表1に示します。
</p>

<table>
<caption>表1 HTML4勧告からHTML5勧告までの主要なできごと</caption>
<thead>
<tr><th>西暦</th><th>できごと</th></tr>
</thead>
<tbody>
<tr><td style="width:4em">1999年</td><td>HTML4.01勧告が発行。ここでHTMLの進化が一旦止まる。</td></tr>
<tr><td>2004年</td><td>OperaとMozillaがW3CでHTMLの開発を再開させるべきという提案をするも、却下される。この後、Apple、Mozilla、Operaの3社でWHATWG設立。Ian Hicksonが現在のHTML Standardの元となる仕様の開発に着手。</td></tr>
<tr><td>2006年</td><td>W3CがHTML5に興味を示す（Tim Berners-Leeが自身のBlogで言及）。</td></tr>
<tr><td>2007年</td><td>WHATWGと協力体制を取る新たなW3C HTML Working Groupを設立。</td></tr>
<tr><td>2012年</td><td>勧告を発行したいW3Cと、開発を継続し続けたいWHATWGが袂を分かつ。これより、両組織が別々にHTMLを策定。</td></tr>
<tr><td>2014年</td><td>W3C HTML 5勧告が発行。</td></tr>
</tbody>
</table>

<p>
XMLこそがウェブの未来であるという見方が支配的だったために、2004年のOperaとMozillaの共同提案は却下され、W3CでHTMLを改良する道が閉ざされました。そこでブラウザーベンダーが集まってW3Cとは別の組織でHTMLやHTMLに関連する仕様の改良を行う、というのがWHATWGのはじまりです。</p>

<p>
以来今日に至るまでずっと、WHATWGはHTMLの開発を（ある期間はW3Cと共同で、ある時期からはW3Cとは別に）し続けています。「WHATWG HTMLこそが実装者とウェブ開発者によって参照されるべき最新の仕様であり、欠陥フォーク（W3C HTMLのこと）は答えではない」というのはWHATWG HTMLのエディターであるAnne van Kesterenの言葉の通り、WHATWG HTMLを第一に参照すべきでしょう。
</p>

<h2>HTML5勧告以降のW3Cの動向</h2>

<p>
さて、W3Cに話を戻します。HTML5はスケジュールどおりに勧告となりましたが、後続のHTML 5.1はなかなか方針が定まらないまま、結局2015年の秋にHTML Working GroupがWeb Platform Working Group (WPWG)に改組されました。2016年1月にようやく新Working GroupからGitHubで開発を再開するというアナウンスがなされ、周知の通り6月にHTML 5.1は勧告候補となり、9月15日付けで勧告案が発行されました。順調にいけば、10月下旬には勧告が発行されるでしょう。</p>

<p>
また、WPWGの新しいCharter（憲章）案には、すでに8月に草案として公開したHTML 5.2を2017年第4四半期に勧告とする、さらにはHTML 5.3の最初の公開草案を2017年第3四半期に発行するといった文言も見られますので、W3Cとしては1年に1回程度のペースで更新していく算段なのでしょう。</p>

<p>ところで、この9月に行われたTPACにおけるWPWGのミーティングでは、2つのHTMLが存在することそのものの問題は認識されており、このミーティングの中では「（2つのHTMLの）唯一の解決策はW3CがHTMLの作業を止めること」というような発言もWPWGの共同議長であるCharles McCathie Nevileから飛び出しましたが、WPWGとして合意に至るような結論は出されませんでした。あるいはHTMLをコア技術として採用しているEPUBの動向によっても、HTMLの開発に何らかの影響を与える可能性があると思われます。
</p>

<h2>2つのHTMLの違いについて</h2>

<p>
これまではごく簡単にW3Cから見たHTMLの過去と将来をざっくり俯瞰してみましたが、ここからは技術的に2つのHTMLがどのように異なるのかを見ていきたいと思います。図1は、2つのHTMLの違いを示したものですが、W3C HTMLがWHATWG HTMLの厳密な部分集合ではなく、W3C HTMLにWHATWG HTMLとは異なる独自の規定があるという点が肝となります。
</p>

<p><figure>
<img src="/wp-content/uploads/2016/09/pic1.png" alt="" class="alignnone size-medium wp-image-21121" srcset="/wp-content/uploads/2016/09/pic1.png 640w, /wp-content/uploads/2016/09/pic1-300x167.png 300w, /wp-content/uploads/2016/09/pic1-207x115.png 207w" sizes="(max-width: 640px) 100vw, 640px" />
<figcaption>図1 2つのHTMLの技術的な違い</figcaption>
</figure></p>

<p>
具体的にどのように違うのか、というのは2つのHTMLの違いを明瞭に記述した文書が存在しないため、その全容を正確に把握するのは困難が伴います。理論上は両HTMLのGitHubのコミットログを丹念に追いかければ可能ですが、ここではW3C HTML (HTML 5.1の勧告案) とWHATWG HTML（HTML <abbr title="Living Standard">LS</abbr>）の要素や属性の違いなどについて、紙面の都合上その全部の詳説は省きますが、主に両者の索引の比較からその一端を明らかにしようと思います。まず、要素の違いについて表2に示します。
</p>

<table>
<caption>表2 2つのHTMLの違い（要素）</caption>
<thead>
<tr><th>要素</th><th>W3C HTML 5.1</th><th>HTML LS​</th></tr>
</thead>
<tbody>
<tr><td><kbd>&lt;slot&gt;</kbd></td><td>×</td><td>○​</td></tr>
<tr><td><kbd>&lt;hgroup&gt;</kbd></td><td>×​</td><td>○​</td></tr>
<tr><td><kbd>&lt;rb&gt;</kbd></td><td>○</td><td>×​</td></tr>
<tr><td><kbd>&lt;rtc&gt;</kbd></td><td>○</td><td>×​</td></tr>
<tr><td><kbd>&lt;dialog&gt;</kbd></td><td>×</td><td>○​</td></tr>
</tbody>
</table>

<p>
今年に入ってWHATWG HTMLに導入されたShadow DOMに関わる<kbd>&lt;slot&gt;</kbd>要素を除けば、HTML 5.1とHTML 5.0でそれほど大きな違いはないと言えます。また、要素そのものは存在しますが、少なくとも<kbd>&lt;main&gt;</kbd>の定義や<kbd>&lt;dl&gt;</kbd>の説明にHTML 5.1とHTML LSとの間で差異があることを筆者が確認しています。これ以外にも2つのHTMLの説明で異なるものがあるかもしれません。続いて、属性の違いを表3に示します。
</p>

<table>
<caption>表3  2つのHTMLの違い（属性）</caption>
<thead>
<tr><th>属性</th><th>要素</th><th>W3C HTML 5.1</th><th>HTML LS​</th></tr>
</thead>
<tbody>
<tr><td><kbd>allowusermedia</kbd></td><td><kbd>iframe</kbd></td><td>×</td><td>○​</td></tr>
<tr><td><kbd>as</kbd></td><td><kbd>link</kbd></td><td>×​</td><td>○​</td></tr>
<tr><td><kbd>border</kbd></td><td><kbd>table</kbd></td><td>○</td><td>×​</td></tr>
<tr><td><kbd>inputmode</kbd></td><td><kbd>input; textmode</kbd></td><td>○</td><td>×​</td></tr>
<tr><td><kbd>is</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>longdesc</kbd></td><td><kbd>img</kbd></td><td>○</td><td>×​</td></tr>
<tr><td><kbd>manifest</kbd></td><td><kbd>html</kbd></td><td>×</td><td>○​</td></tr>
<tr><td><kbd>ping</kbd></td><td><kbd>a; area</kbd></td><td>×</td><td>○​</td></tr>
<tr><td><kbd>playsinline</kbd></td><td><kbd>video</kbd></td><td>×</td><td>○​</td></tr>
<tr><td><kbd>referrerpolicy</kbd></td><td><kbd>a; area; iframe; img; link</kbd></td><td>×</td><td>○​</td></tr>
<tr><td><kbd>name</kbd></td><td><kbd>slot</kbd></td><td>×</td><td>○​</td></tr>
<tr><td><kbd>itemid</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>itemprop</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>itemref</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>itemscope</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>itemtype</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
</tbody>
</table>

<p>
そもそもW3C HTMLでは別仕様として切り離されているMicrodata関連の5つの属性を除けば、11の属性が片方の仕様にあってもう片方にはない、という状況になっています。<kbd>longdesc</kbd>属性に至っては、一旦はHTML 5.1自身に含めておきながら、再び拡張仕様に分離する（すなわち、HTML 5.0とlongdesc拡張仕様の関係に戻す）という迷走を見せています。さらに、説明は省きますが、イベントハンドラー属性の違いを表4に示します。
</p>

<table>
<caption>表4  2つのHTMLの違い（イベントハンドラー属性）</caption>
<thead>
<tr><th>属性</th><th>要素</th><th>W3C HTML 5.1</th><th>HTML LS​</th></tr>
</thead>
<tbody>
<tr><td><kbd>onemptied</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>onloadend​</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>onrejectionhandled</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
<tr><td><kbd>onunhandledrejection</kbd></td><td>HTML elements</td><td>×</td><td>○​</td></tr>
</tbody>
</table>

<p>
また、IDL属性として、<kbd>innerText</kbd>がWHATWG HTMLに規定されています。最後に両HTMLの違いとしてコメントの構文の違いを挙げておきます。
</p>

<p></p><pre class="crayon-plain-tag">&lt;!-- これは正当なコメントです --&gt;
&lt;!--------&gt;
&lt;!-- ↑のようなHTML断片を書いたことはありますか？ --&gt;</pre><p></p>

<p>
コード例の2行目は、WHATWG HTMLでは正当なコメントになります。
</p>

<h2>おわりに</h2>

<p>
駆け足でW3C視点での歴史と将来の展望、およびW3C HTMLとWHATWG HTMLとの要素や属性、構文など比較を行いましたがいかがでしたでしょうか。W3C HTMLはあまりうまく策定作業が行われていない一方で、WHATWG HTMLのレポジトリーでは活発に議論が交わされており、毎日のようにHTMLが更新され続けています。当面は勢いのあるHTML Living Standardを参照するようにしてはいかがでしょうか、という提案をもって締めさせていただきたいと思います。
</p>

<p>当日の資料と動画は下記で公開されていますので、こちらも参照してください。</p>

<ul>
<li><a href="https://github.com/momdo/talk/blob/master/webtalk_2016-09-03.pdf" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">講演資料</a></li>
</ul>


<!-- iframe plugin v.4.3 wordpress.org/plugins/iframe/ -->
<iframe src="https://www.youtube.com/embed/K2a4dftTp00" frameborder="0" 0="allowfullscreen" width="100%" height="500" scrolling="yes" class="iframe-class"></iframe>

]]></content:encoded>
		
		<series:name><![CDATA[HTML5 Conference 2016 特集]]></series:name>
	</item>
		<item>
		<title>夏野剛・及川卓也・白石俊平が語る「WebRTCが切り拓く2020年のIoT」～リアルタイムコミュニケーションがもたらす破壊的イノベーション～</title>
		<link>/miyuki-baba/18411/</link>
		<pubDate>Thu, 10 Mar 2016 00:00:47 +0000</pubDate>
		<dc:creator><![CDATA[馬場 美由紀]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[WebRTC]]></category>

		<guid isPermaLink="false">/?p=18411</guid>
		<description><![CDATA[2月16日・17日と2日間にわたって「WebRTC Conference 2016」が開催されました。「2020年」と「IoT」という2つのキーワードを軸に、リアルタイムコミュニケーションがもたらす破壊的イノベーションに...]]></description>
				<content:encoded><![CDATA[<p>2月16日・17日と2日間にわたって「WebRTC Conference 2016」が開催されました。「2020年」と「IoT」という2つのキーワードを軸に、リアルタイムコミュニケーションがもたらす破壊的イノベーションについて語られた「WebRTCが切り拓く2020年のIoT」。<br>HTML5 Experts.jp編集長・白石俊平氏をモデレーターに、夏野剛氏・及川卓也氏を特別ゲストとして迎えての特別セッション。今回は講演内容をほぼ再現版としてお届けいたします。</p>

<p><img src="/wp-content/uploads/2016/03/DSC00720.jpg" alt="" width="640" height="456" class="aligncenter size-full wp-image-18422" srcset="/wp-content/uploads/2016/03/DSC00720.jpg 640w, /wp-content/uploads/2016/03/DSC00720-300x214.jpg 300w, /wp-content/uploads/2016/03/DSC00720-207x147.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<h2>夏野剛氏、及川卓也氏、白石俊平氏が縦横無尽に語り合う</h2>

<p><strong>白石</strong>：まずは、登壇者のご紹介から。慶應義塾大学 政策・メディア研究科 特別招聘教授の夏野剛さんです。あまりご存じない方も多いかもしれませんけど、夏野さんはW3Cのボート（幹事）をずっとやっていらっしゃったんですよね。4年間ぐらいでしたっけ。</p>

<p><strong>夏野</strong>：はい。2期、4年やってました。大変でした（笑）。</p>

<p><strong>白石</strong>：本日はそうした標準化団体に深くコミットしていらした方として、WebRTCについて語っていただきたいと思います。</p>

<p><strong>夏野</strong>：ちなみに、W3Cの設立メンバーが慶應大学なんですよね。ファウンディングメンバー。で、村井先生に「ボードやれ」って言われて、立候補したという。</p>

<p><strong>白石</strong>：次に、Increments株式会社、プロダクトマネージャーの及川卓也さんです。この、WebRTCに関する対談については、前職のGoogleで、Google Chromeの開発に携わっていらっしゃったということで、実装面などについてもお話いただきたいと思います。</p>

<p><strong>及川</strong>：Incrementsは「<a href="https://qiita.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Qiita</a>」というプログラムの情報共有サービスを提供しています。もう辞めちゃったんですけど、Chromeのエンジニアリングマネージャーも、結構大変でございました。楽しかったですけど（笑）。</p>

<p><img src="/wp-content/uploads/2016/03/natsuno2.jpg" alt="" width="100" height="134" class="alignleft size-full wp-image-18432" /><strong>慶應義塾大学 政策・メディア研究科 特別招聘教授　夏野剛氏</strong><br><span style="font-size: 80%;">早稲田大学政治経済学部卒、東京ガス入社。ペンシルバニア大学経営大学院（ウォートンスクール）卒。ベンチャー企業副社長を経て、1997年NTTドコモへ。99年に「iモード」、その後も多くのサービスを立ち上げた。2008年にドコモ退社。現在は慶應大学の特別招聘教授のほか、カドカワ、トランスコスモス、セガサミーホールディングス、ぴあ、グリー、DLE、U-NEXTなどの取締役を兼任。09年から13年までHTMLの標準化機関であるW3C(World Wide Web Consortium)のアドバイザリーボードメンバーを務める。</span></p>

<p><img src="/wp-content/uploads/2016/03/oikawa2.jpg" alt="" width="100" height="117" class="alignleft size-full wp-image-18437" /><strong>Increments株式会社 プロダクトマネージャー　及川卓也氏</strong><br><span style="font-size: 90%;">早稲田大学理工学部卒業後、外資系コンピューター企業の研究開発、マイクロソフト株式会社（当時）の日本語版・韓国語版Windowsの開発統括を経て、グーグルでプロダクトマネージャとエンジニアリングマネージャを務める。2015年11月よりIncrementsにてプロダクトマネージャとして従事。</span></p>

<p><img src="/wp-content/uploads/2016/03/shiraishi2.jpg" alt="" width="100" height="123" class="alignleft size-full wp-image-18440" /><strong>株式会社オープンウェブ・テクノロジー代表取締役CEO　白石俊平氏</strong><br><span style="font-size: 85%;">エンジニア、コピーライター。日本最大のWeb技術者コミュニティhtml5jを5年間リードした後スタートアップを創業、テクノロジー分野に特化したキュレーションサービス「<a href="http://techfeed.io/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">TechFeed</a>」を2015年12月にリリース。日本の開発者の役に立つべく、プロダクトマネージャー兼CEOとして奔走中。「HTML5&amp;API入門」（日経BP）など、著作執筆多数。Web技術者向けメディアHTML5 Experts.jp編集長も務める。</span></p>

<h2>WebRTCをどう見るか？</h2>

<p><strong>白石</strong>：まず最初のテーマは「WebRTCをどう見るか」です。本日のセッションテーマは未来感のあるものが多いので、ビジョン的なお話をお聞きしたいなと思っています。</p>

<p><strong>及川</strong>：基本ポジティブですね。少し前だと、音声やビデオのカンファレンスをやろうとすると、Flashを使わなきゃいけない時代もあった。あれって結構面倒くさいんですよね。音声やビデオで軽く会議をやろうとした瞬間に、プラグイン入っていないから、インストールしてくださいって表示されたりして。そのためのセットアップで、少なくとも1分とか2分経ってしまったり、下手するとブラウザをリロードしなくちゃいけなかったり。</p>

<p>普通のテキストチャットと同じぐらいカジュアルなコミュニケーションができるようになったのは、WebRTCのおかげです。今後はどんなブラウザでも使えるようになっていく、という意味で非常にポジティブかなと。一方でっていうことが、ちょっとあるんですけれども、その前に夏野さんのご意見も聞きたいと思います。</p>

<p><img src="/wp-content/uploads/2016/03/oikawa3.jpg" alt="" width="600" height="424" class="aligncenter size-full wp-image-18459" srcset="/wp-content/uploads/2016/03/oikawa3.jpg 640w, /wp-content/uploads/2016/03/oikawa3-300x212.jpg 300w, /wp-content/uploads/2016/03/oikawa3-207x146.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /><br></p>

<p><strong>夏野</strong>：今及川さんが言ったみたいにパソコンをベースにしてWebで何でもできちゃうと、ソフトをダウンロードすることはほとんど要らなくなって、せいぜいプラグインくらい。そのプラグインすらもHTML5になってくると、ほとんど要らなくなるっていう世界になってきた。</p>

<p>そんな理想型に進んでるのに、スマホが出てきたことによって、状況が変わってきた。スマホが出てきてから5年ぐらい経ちますが、その間にWebの勢いって1回萎えているんですよ。理由は簡単。ネイティブアプリで遊ぶほうが忙しすぎて、Webなんか立ちあげている場合じゃないから。</p>

<p>ネイティブアプリにする理由の一つは、グラフィックスの性能。もう一つはこれ、まさにリアルタイムコミュニケーションなんですよね。このWebRTCをきちんとスマホまで含めて、マルチデバイスで広がっていくと、かなり開発者の負荷も減らせるし、サービスの性能も向上することにつながると思っています。いち早くモバイルも巻き込んだ中で、WebRTCがどんどん広がっていくことを切望しますね。</p>

<p><img src="/wp-content/uploads/2016/03/natsuno4.jpg" alt="" width="600" height="398" class="aligncenter size-full wp-image-18461" srcset="/wp-content/uploads/2016/03/natsuno4.jpg 640w, /wp-content/uploads/2016/03/natsuno4-300x199.jpg 300w, /wp-content/uploads/2016/03/natsuno4-207x137.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<h2>「相互運用性」という課題</h2>

<p><strong>白石</strong>：なるほど。たしかにWebRTCはマルチプラットフォームや、マルチデバイスといったところでは、結構強みがあると思います。及川さんの言いかけたお話を。</p>

<p><strong>及川</strong>：そういう意味で言うと、プラットフォーム、相互運用のところのレイヤーが1つ上がったかたちになっていくと思うんですよ。どのブラウザでも使えるということは、すごい貴重な技術であるのと同時に、もしかしたらロックインされるだとか、相互運用性までを考えないといけない。</p>

<p>例えば、WebRTCを使ってビデオカンファレンスができるかっていう話になったときに、実装依存の部分がたくさんあるわけですよね。おそらく制御のところだったり、ビデオコーデックなんかは、現状すべてのブラウザに当てはまるところはないんじゃないかな。もちろん、相手に合わせて変えるっていうのは実現可能だと思うんですね。GoogleもWebRTCを使ったそういったサービスを出しています。</p>

<p>一方、Facebookのチャットからビデオメッセージやビデオチャットをやりたいといっても、ハングアウトにはつながらないし、（別サービスとは）つながる世界が想像できないわけですね。これって、どっかで見た、過去で見た、未来なんですよ。どういうことかと言うと、シンプルなテキストチャットのときもそういう議論はたくさんあったんですね。</p>

<p>Yahoo!メッセンジャー、AOLメッセンジャーと、MSNのメッセンジャーと、Google Talkをつなげたいよね、という流れになり、ちゃんと仕様を考えましょうということになった。IETF（Internet Engineering Task Force）で、XMPPだとかSimpleが候補に上がりました。陣営二つに分かれちゃったわけですけれども。</p>

<p>Googleはその部分、なぜか知らないけど、すごい積極的にやっていいます。Google Talkは、XMPP完全準拠でJabberというかたちにして、ほかのJabberのサーバーにもつなげられたのに、結局はGoogleもシャットダウンしちゃった。相互運用ができる状況じゃないと。</p>

<p>なぜならば、技術以前にソーシャルグラフというか、ユーザーのデータベースをわざわざ相手に開放したくないわけですよね。なので、この部分まで含めてWebRTCに期待するとしたら、それはちょっと厳しいところもあるし、どこまでの部分をコモディティ化していくか、という課題があるかなと。</p>

<p>本当は全部相互運用ができたほうがいいのだけれども、そこにいくまでには、過去の歴史を見ても、なかなか厳しい現実問題としてある。さっき「でも」というところでちょっと言いたかったことです。</p>

<p><img src="/wp-content/uploads/2016/03/shiraishi3.jpg" alt="" width="600" height="399" class="aligncenter size-full wp-image-18465" srcset="/wp-content/uploads/2016/03/shiraishi3.jpg 640w, /wp-content/uploads/2016/03/shiraishi3-300x200.jpg 300w, /wp-content/uploads/2016/03/shiraishi3-207x138.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<h2>GoogleがWebRTCを立ち上げた背景とは</h2>

<p><strong>白石</strong>：なるほど。ちなみにWebRTCって、もともとの出自はGoogleさんがオープンソースで<a href="https://webrtc.org/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">webrtc.org</a>を立ち上げたところからかなと思うんです。それ、間違いないですか？</p>

<p><strong>夏野</strong>：たぶん、それが最初だったと思いますよ。</p>

<p><strong>白石</strong>：どういうビジョンを持って、このプロジェクトを始められたのでしょうか。</p>

<p><strong>及川</strong>：理由は非常に単純で、Googleも要はすべてWebでやりたいわけですよ。</p>

<p><strong>白石</strong>：検索とか広告とか、そういったところにつなげるためでしょうか。</p>

<p><strong>及川</strong>：それは、ビジネスモデル的には、当然あるとは思います。だけど、Googleって恵まれた会社で、8割以上のエンジニアは、お金のことを全く考えなくていいんですよ。</p>

<p>で、「あなたたちの役割というは、インターネットが健全に発展するためのものです」と。そのネイティブで持っているアプリケーションが使える機能をそのままWebでも使えるようにするために、HTML5を含め、いろんなことをやっていたんですね。</p>

<p>最初は、Canvasだってもともと使えなくって。Canvasが使えないと、この2次元対応で1点から1点までの線を引くことすらできなかったわけですよね。そこから始まり、ちゃんと3Dができるようになり、全部やっていったあとに、自然にビデオカンファレンスだとか、リアルタイムコミュニケーションだとか、そういったものができて当たり前という時代になったんだと思うんです。</p>

<p><strong>白石</strong>：なるほど。</p>

<p><strong>夏野</strong>：僕も標準化の現場にいたのでわかる。面白いのは、Googleってライトサイドのプレイヤーなんです。</p>

<p><strong>白石</strong>：ダークサイドの逆ですね。</p>

<p><strong>夏野</strong>：ダークサイドもいるんだよね（笑）。つまり、ネットの中立性とか、ブラウザがみんなに使われるとか、相互運用がどうのとか、そういうこととは、逆のことを考えている会社もいろいろあって、面白いですよ。</p>

<p><strong>白石</strong>：そういうダークサイドな会社が、W3Cにいるところが面白いですね。</p>

<p><strong>夏野</strong>：それ以上聞かないで（笑）。最近はいなくなりましたけど、10年前は大変でした。</p>

<h2>Webですべてを完結する世界は作れるか</h2>

<p><strong>白石</strong>：僕、さっき及川さんのお話を聞いて、及川さんが昔講演でおっしゃっていたことを思い出しました。デスクトップアプリケーションで起きた最後のイノベーションはSkypeで、そのあとはずっとWebで起きているみたいな話を5年前にしてたんですよね。そのSkypeが今ようやくWebの補完をしているんだなって。覚えていらっしゃいますか、そんなことを言っていたのを。</p>

<p><strong>及川</strong>：そうですね。もう少し補足で説明すると、Webというのはもう多くのユーザーが使っていて、プラットフォームになっています。それをあえてリマインドするために、横軸に時系列で、1990年、2000年、2005年で振り返ってみたんです。</p>

<p>昔はデスクトップ系のちゃんとインストールして使うようなアプリケーションがたくさんあった。それが、2005、2006年からを境に、TwitterやGoogleMap、YouTubeなどのサービスが出てきた。この違いは何かというと、ここから先は「Webですべて完結するようになっているんですよ」、という話は、僕の持ちネタですね(笑)。</p>

<p><img src="/wp-content/uploads/2016/03/oikawa6.jpg" alt="" width="600" height="374" class="aligncenter size-full wp-image-18478" /></p>

<p><strong>夏野</strong>：それと同時期にスマホが流行ってきた段階で、Skypeはアプリを出すのが、結構遅れたんですね。結局、FacebookやTwitterはアプリを出して、よりモバイルのほうにユーザーが寄っていった。ここがまた微妙なところで、PCのほうが進んでいるのに、スマホが出てきて逆転されている。これからの大きな課題なんだろうなと思ってます。もうモバイルの世界は、どんどんネイティブの世界にいってるんですから。</p>

<p><strong>白石</strong>：また（ネイティブ→Webという）歴史は繰り返すのか、というとちょっと疑問ですね。スマホもWeb中心になっていくのかというと、今のところそうとも思えない。</p>

<p><strong>及川</strong>：モバイルのネイティブアプリだけじゃ解決できないものもあります。まず、ユーザーにインストールしてもらえない。インストしたとしても使えない、という壁が二つあるんですね。</p>

<p>例えば、よくあるグルメの人気アプリ。この近くに何か美味しいお店がないかなと考えたときに、ユーザーがぱっと思い浮かぶのは日本を代表するサービスのサイトなんですね。トップ、2番目、3番目、4番目…までインストしてもらうのは難しい。自分のサービスがグルメ業界の4番目だったとしたら、まずはインストしてもらうことが第一の壁です。</p>

<p>さらにその4番目をインストしてもらったとしても、お店を探したときに、1番目、2番目、3番目で解決しちゃったなら、4番目なんて使わないわけですね。するとインストしても使わないわけです。実際には、検索したほうが便利なことがたくさんありますね。検索して、上から本当にいいものって選んでもらったり、もしくは検索したときにそのサービスが気に入ったら、そこからインストしてもらう導線を張ればいいと。</p>

<p>なので、Webとモバイルはハイブリッドにやったほうがいいんじゃないかと。deep linkingだったりだとか、app indexingだったり。</p>

<p>あとは機能面ですね。Geolocationはモバイルのほうが優れているし、昔はブラウザで正確にとることができなかった。だからGoogleみたいなブラウザベンダーが追い付こうと頑張った。でもそうこうしているうちに、モバイルのほうもパフォーマンスだとかUXだとか、機能面でも追いつこうとしているところだと思います。</p>

<p><strong>白石</strong>：なるほど。WebRTCも当然ながらも、デスクトップアプリやモバイルアプリしかできなかったリアルタイムコミュニケーションを、Webに載せていく流れになるわけですね。</p>

<p><img src="/wp-content/uploads/2016/03/DSC00638.jpg" alt="" width="600" height="393" class="aligncenter size-full wp-image-18467" srcset="/wp-content/uploads/2016/03/DSC00638.jpg 640w, /wp-content/uploads/2016/03/DSC00638-300x196.jpg 300w, /wp-content/uploads/2016/03/DSC00638-207x136.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<h2>IoT・ロボティクスとWebRTCの未来は、民主化するイノベーションになるか</h2>

<p><strong>白石</strong>：次のテーマは、「IoTやロボティクスとWebRTCの未来」です。</p>

<p><strong>夏野</strong>：IoTやロボティクスというと、Webとあまり関係なさそうな感じもするんですけど、実は密接に関係している。結局このセンサーというのは、それ自身がコミュニケーション、特にリアルタイムコミュニケーションすることが前提で作られているからです。</p>

<p>じゃあ、すべてのデバイスごとに全部クライアントを作るのか、みたいな話になってくるわけですけど。受け側はWebでいいわけですね。実際、受け側はRTCでやる。実は、RTCの相手先としては、もうこのセンサーやロボティクスとか、いわゆるIoT系は、見逃しちゃいけない。それどころか、それをメインに考えてもいいんじゃないかと。</p>

<p><strong>及川</strong>：去年、慶應大学SFCのORF（オープンリサーチフォーラム）で、村井純先生がギター弾きたくなったという理由で開催されたイベントがあったんです。いきなり「及川さん、ギター弾かないか？」というメールがきて、「はい」って言っちゃったら、ニコ生で全国中継されるっていう（笑）。そのとき東京ビッグサイトか何かでやっていた楽器フェアとニコファーレをつないで何かやろうとなったときに、WebRTCを使ったんです。そこで面白かったのが、Web MIDIやWeb Audioを活用したORFを使ったこと。Web MIDIは電子楽器をつなぐための規格で、楽器をWebのシーケンサーから鳴らせるものなんですけど、ほかの用途にも使えちゃうんですね。</p>

<p>要は、MIDIでデバイスをコントロールするように、MIDI信号を理解してデバイスが動くようにすることができるわけです。今までの技術の歴史を見たときにも、本来と違う使われ方をして、いろんな技術革新が起きていることっていうのはたくさんあります。民主化するイノベーションというのがあって、本来のベンダーが想定したものとは違ういろんなかたちに、クリエイターやユーザーが発展させていくことがある。WebRTCというか、Web MIDIというのもその一例であり、そういった想定外のケースが出てきても面白いんじゃないかなと思いますね。</p>

<h2>リアルタイムの強みをWebRTCはどう切り拓くか</h2>

<p><strong>夏野</strong>：今の話で感化されて、思い出したことがあります。インターネットが出てきて、動画のアーカイブができるようになったことは、最大のメリットだと、みんな思っているんですよね。つまり、テレビと違って縛られないから、いつでも自分のタイミングで、好きなときに動画を見たり、情報を入手できる。</p>

<p>これがインターネットの最大のメリットだったはずなのに、さっきの村井先生のコンサートや演奏みたいなものは、アーカイブで見ようとする人があんまりいないんですよね。リアルタイムで見るほうが価値があるという、不思議なことが起こっていまして。ニコニコはライブ配信したものを、後からタイムシフトというかたちで見たり、アーカイブにして見たりすることができるんですが、ほとんどの動画でリアルタイムで配信するほうが視聴者多いんですよ。</p>

<p>YouTubeは世界的にダウンロード型で成功している話はありますが、感動のレベルっていうのは、やっぱりリアルタイムのほうが大きいんです。これ、ちょっとジレンマというか、ネットのジレンマなんですけどね。いわゆるネットのよさをある意味放棄しているわけですよね。</p>

<p>ニコニコが何でそうなるかというと、コメントが書けるからなんです。リアルタイムで行ったものに書き込むのと、アーカイブで見ているものに書き込むのでは、盛り上がりが違うんですね。今、この瞬間に、何万人が、俺のコメント見ている、こういいうのを書いたよ、という満足感が違うみたいななんですよ。だから、YouTubeとニコニコというのは、全然違うものとして、完全に両立していて、ユーザーは使い分けちゃうわけなんですけども。そういう世界がWebRTCでも繰り広げられていくんじゃないかって思います。</p>

<p><strong>白石</strong>：面白いですね。Web系の標準化技術は、コモディティ化みたいなインパクトが、割と強調されている。今まですごいお金かかったものが安くできますよ、誰でもできますよみたいな価値観ではなく、リアルタイムならではの価値観というか、リアリティみたいなところの面白さや価値はあるのかもなと、ちょっと思いましたね。</p>

<p><img src="/wp-content/uploads/2016/03/DSC00680.jpg" alt="" width="600" height="347" class="aligncenter size-full wp-image-18476" srcset="/wp-content/uploads/2016/03/DSC00680.jpg 640w, /wp-content/uploads/2016/03/DSC00680-300x173.jpg 300w, /wp-content/uploads/2016/03/DSC00680-207x120.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<p><strong>夏野</strong>：一方で注意しなきゃいけないのは、アメリカはやたらとみんな、パソコンの前に座っているんですよ。自分のオフィスでも、プライベートでも。だから、このRTC系のアプリケーションがいっぱい出てくる。SNSもそうだけどね。それがゆえに、Facebookはモバイル対応遅れたっていう話もあるんですけど。一方で、日本はどうかというと、エンジニアは結構PCの前に座っているけど、それ以外の人はもう基本スマホじゃないですか。だからこそ日本が率先して、モバイルとWebを覆うようなRTCのアプリケーションとか、仕様を決めていくのが重要なんじゃないかと思うんです。</p>

<p><strong>白石</strong>：そういう違いもあって、日本人がよくTwitter使うのかもしれないですね。テキストベースで軽いから、リアルタイムで接することができるし。</p>

<p><strong>及川</strong>：やっぱり、Webってリアルタイムじゃなかったんですよね、ずっと。Webのもともとのオリジンが情報じゃないですか。いわゆるHTMLやCSS、Googleドキュメントとか、情報の多くはめちゃくちゃドキュメントなわけですよ。リアルタイムで複数人数がコミュニケーションできるようになってきたとはいえ、どこか静的なものであったり、もしくは動的だといっても限度があったところだったんですよね。だから、リアルタイムでやりとりできるWebRTCが入ってきて、今までのWebの要素技術とどう組み合わせるかということを、考えてはじめているんじゃないかな。</p>

<p>WebRTCのほうに期待したいのは、今までのWebのコア要素の何かをちゃんと生かせるようなこと。Webのいいところは、マッシュアップだなと。WebRTCをいかにもっとWeb化するかというところに、方向性、将来の発展を考えていくのも面白いんじゃないかなと思います。</p>

<h2>IT企業の経営者は『攻殻機動隊』を読むべき！？</h2>

<p><strong>白石</strong>：なるほど、たしかにマッシュアップはありですね。ところで話は変わりますが、遠隔地でロボットを操作したり、触覚とかも再現するみたいな面白い映画があるそうですね。</p>

<p><strong>夏野</strong>：『サロゲート』という最近のアメリカ映画で、ロボットが人間の社会生活のすべてを代行する近未来を描いているんです。ロボットが生活しているから、何かあってもオペレーターである人間は安全という話なんですが、こういう考え方ってすでに『攻殻機動隊』で描かれているんです。</p>

<p>1989年の漫画なんですけど、現在SFで語られているほとんどすべての要素は、全部1989年の日本のコミック漫画に入っているというのは、すごいですよね。だから、僕は、すべてのIT企業の経営者は『攻殻機動隊』を読めと言っています。残念ながら読んでいる人はほとんどいないですね。</p>

<p><img src="/wp-content/uploads/2016/03/DSC00690.jpg" alt="" width="600" height="407" class="aligncenter size-full wp-image-18469" srcset="/wp-content/uploads/2016/03/DSC00690.jpg 640w, /wp-content/uploads/2016/03/DSC00690-300x203.jpg 300w, /wp-content/uploads/2016/03/DSC00690-207x140.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<p><strong>及川</strong>：医療なんて『da Vinci』でしたっけ。医療ロボットがあるじゃないですか。WebRTCで遠隔医療というかたちを提供できるならば、非常に役に立つだろうのもあるんじゃないかなと。</p>

<h2>コミュニケーション・SNS と、(Web)RTCの未来</h2>

<p><strong>白石</strong>：次のテーマは、「コミュニケーションSNSとWebRTCの未来」です。今のコミュニケーションって、基本的には非同期で、ほぼリアルタイムじゃないものがメインだったと思います。でもTwitter等もどんどんリアルタイム化していって、さっきのニコニコの話も出ていましたが、リアルタイムのコミュニケーションの分野にも進化を掘り起こすのではないかなというお話です。</p>

<p><strong>夏野</strong>：SNSの使い方はリアルタイム型に変わってきましたね。Facebookを見ていると、もう誰がオンライン中かわかってしまう。その人からすぐに返答が返ってこない時点で、それが一つのメッセージになっちゃいますよね。</p>

<p><strong>白石</strong>：たしかに。</p>

<p><strong>夏野</strong>：奥さんや上司からの連絡に、オンライン状態にあるのに返事がないと、非常に面倒くさいことになるよね（笑）。でも時代の流れとして、やっぱり同期するほうに向かっている。だから、LINEの既読というのはウザがられながらも、貴重な機能として、みんな受け入れられているんだと思う。</p>

<p>ウザがられても受け入れられるのは、すべてのアプリケーションがそうなってく可能性であって、面白いですよね。昔、携帯電話が出てきたときに、ほとんどのサラリーマンが嫌だと言ったんですけど、みんな受け入れました。だから、もう受け入れた上で何ができるかを考える方が生産的ですね。</p>

<p><img src="/wp-content/uploads/2016/03/natsuno5.jpg" alt="" width="600" height="403" class="aligncenter size-full wp-image-18483" srcset="/wp-content/uploads/2016/03/natsuno5.jpg 640w, /wp-content/uploads/2016/03/natsuno5-300x202.jpg 300w, /wp-content/uploads/2016/03/natsuno5-207x139.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<p><strong>及川</strong>：ツールとして本来目的にしていることと、どう使われるかかにずれが出てくることがありますよね。本来、同期型リアルタイムであるチャットを今言ったみたいに、既読だとかを一切抜きにして言うと、それをリアルタイムとか同期型に使わないことも増えてきていると。</p>

<p>その象徴が、エンジニアの方はよく使っていると思われるSlack。Slackは基本チャットなんだけど、普通のチャットと言われるには、非常に違和感を感じます。もちろんな同期型のコミュニケーションのフロー型と言われ、ストック型じゃないとは言われているんだけど、一方でストック的にも使えたりとか、非同期的なコミュニケーションもしっかりできる。ある時間をすぎると勝手にスリープモードに入るようになったりする機能が入ったりしていて、コミュ障のエンジニアに優しいようなところがあったりする。</p>

<p>だから、RTCもリアルタイムということと、もう一つの非同期と言う言葉が、必ずしも一緒じゃないんじゃないかなと思うんですね。</p>

<h2>ビデオ会議はWebRTCでどう変わるか</h2>

<p><strong>白石</strong>：ちなみに、お二人は海外の方とテレカン（teleconference）やビデオ会議を結構されてたと思うんですが、そういった観点でWebRTCは、どうなんでしょうか。</p>

<p><strong>及川</strong>：電話とビデオが入ったものとの違いは、すごく大きいんですよ。やはり、その五感が伝わったほうがコミュニケーションしやすい。映りたくないからビデオをOFFにしますって、やった途端にその人のプレゼンスは、その会議で下がっちゃうんですよね。顔がちょっと映るというだけでも、バリューはかなりのものがあると思います。</p>

<p>ただし、こういったインターネットのコミュニケーションは技術が発達したとしても、現地に行かなければだめなことが、山ほどあって。常にマイクとカメラがあるわけではないという話もあるですが、要は時差ですね。その人と同じ時間帯でどのぐらい働けるか、空気を共有できるかというのは、絶対にインターネットとかIT技術では解決できない。なので、RTC的なものがどんなに発達したとしても、フェイストゥフェイスでの重要性というのは、まあ、なくならないのかな。いいのか、悪いのか、ちょっとわからないですけど。</p>

<p><strong>白石</strong>：フェイストゥフェイスはビデオ会議よりも、同じ部屋にいたほうが伝わるものが多いというのはありますね。顔も見えているし、表情も全部見えているのに、何か伝わらないみたいな。そういう感覚はありませんか。</p>

<p><strong>夏野</strong>：それは技術的な問題もありますが、面白い話があるんです。Haloというテレビ電話会議のシステムをHPが販売していたんですよ。実は、これを開発したのが映画会社。離れた場所での会議でもリアルな感覚を伝えるために、スクリーンに映る顔のサイズが、本当に座っているのと完全に同じように映るような仕組にした。ここで見ると、向こう側に本当に人がいる感じががある。</p>

<p>イスとか机も、全部そろっていて4カ所までつなげる。4カ所つなぐと、円テーブルに座っている感じにちゃんと映るようになっていて、上のモニターは資料とかを映すんですね。この3面で誰が誰を見ているのが、完全にわかります。これ、飲み会できますよ、マジで。でもこの仕組が異常に高いので、WebRTCが必要なんです。</p>

<p><img src="/wp-content/uploads/2016/03/DSC00704.jpg" alt="" width="600" height="399" class="aligncenter size-full wp-image-18472" srcset="/wp-content/uploads/2016/03/DSC00704.jpg 640w, /wp-content/uploads/2016/03/DSC00704-300x200.jpg 300w, /wp-content/uploads/2016/03/DSC00704-207x138.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<p><strong>白石</strong>：人間はサイズとか、目線とか、そういう情報からもいろいろ得ているんですね。WebRTCは、それを再現できると。</p>

<p><strong>夏野</strong>：これはすごいよくできていますよ。</p>

<p><strong>及川</strong>：でも、逆もあるかなと思うんですね。リアルには会わないということ。いくつか軸があるんですけど、一つはリモートワーク。例えば、GitHubという会社は全員リモートなんですね。だから、どこが主従かというのはないし、リモートを前提にしたコミュニケーションが成り立つ。</p>

<p>もう一つは仮想現実というか、さっきの「アバター」的な話でいうと、リアルに会ったほうが、面倒くさいことってたくさんあるわけですよ。だから、自分の化身がネット上にいて、その人たち同士で話をしますと。その結果、ちゃんと自分が、リアルの世界に持って帰って、何かやりますみたいな、そういったコミュニケーションもあるんじゃないかなと思うんですね。</p>

<p><strong>夏野</strong>：さっきの映画『サロゲート』とか『攻殻機動隊』がそうかな。その世界ではものすごい美人なんだけど、男かもしれない。実は80歳かもしれない。そのほうが見た目に惑わされず、意見とか人間の本質的なメッセージをちゃんと受け取れるということですよね。</p>

<p><img src="/wp-content/uploads/2016/03/DSC00691.jpg" alt="" width="600" height="414" class="aligncenter size-full wp-image-18470" srcset="/wp-content/uploads/2016/03/DSC00691.jpg 640w, /wp-content/uploads/2016/03/DSC00691-300x207.jpg 300w, /wp-content/uploads/2016/03/DSC00691-207x143.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<p><strong>夏野</strong>：冒頭のリアルタイムコミュニケーションの話ですが、実はW3Cでの重要な会議って、全部IRCを使っているんですね。で、発言の要旨を打つ人がいるんですよ。国際的な会議なので、ネイティブなみに英語ができないけど、技術的にはすごい優秀だったりする人もいる。ちゃんと文字化してくれると、話についていけなかったときも、議事録を見て、ちょっと遅れてついてきてくれる。これ、リアルタイムコミュニケーションのすごくいい事例だなと思っています。GoogleがやっているようなWebで自動翻訳されるようになったら、相当、国際会議は楽になるなと。あれ、いいカルチャーですね。</p>

<p><strong>白石</strong>：Google I/Oでもやってましたね。僕も参加したとき、それに感銘を受けました。</p>

<p><strong>及川</strong>：アメリカはそういったキャプチャー的なものが進んでいて、ハンディキャップがある方に、平等な機会を与えるという考えにもつながっているんです。私もTPACとかでW3Cの会議に行ったことあるんですけど、すごい助かりますね。いろんな人がしゃべっていると、追いつかないとこがあるんですが、ログ見ればちゃんと確認できる。</p>

<p>そのときに、もし話すのがちょっと厳しかったら、そこのIRC上で「さっきのところ、実はこうだったよ。今確認したよ」って書いとくだけで、きちっと皆さん読んでくれるし。ログにも残るし、いろんな国から、いろんな言語がネイティブの人が入るときには、非常にいい仕組じゃないかなと思いますね。</p>

<p><strong>夏野</strong>：だからこういうのは、日本こそ、僕は頑張ってほしいなと思っていて。日本人が、一番損しているわけじゃないですか、コミュニケーションってさ。これを技術で解決しようというのを、あんまり困っていない、アメリカの会社がやるより、日本の会社がもっと真剣にやったほうがいいんじゃないかと思うんですけど。</p>

<p><strong>白石</strong>：ぜひ、やっていただきたいですね！</p>

<h2>仮想現実／拡張現実と、WebRTCの未来</h2>

<p><strong>白石</strong>：次は仮想現実、拡張現実みたいなお話をお聞きしたいんですけど。</p>

<p><strong>夏野</strong>：さっきの話って、拡張現実に近いですよ。拡張現実って、その上にアニメキャラを出して何か言わせることだけじゃなくて、リアルに会話しているところに、それが全部テキスト化されるなんていったら、それは拡張現実じゃないですか。</p>

<p>だから、あんまりSFチックなファンタジックな方向に考えないで、もうちょっとリアリスティックに考えると、拡張現実はもっと現実を拡張していくわけなので、もっとあっていいと思うね。ARが何に使えるかというのは、もう誰もまともなソリューション出せないままきてしまったから。でも、よく考えると、ARを使うとここに字幕が出る。これは十分面白いよね。</p>

<p><strong>白石</strong>：たしかに役に立ちますね。</p>

<p><strong>及川：</strong>さっきのSlackは単純なチャットシステムであるのと同時に、いろんなかたちでbotが使えるわけですよね。そのbotに話しかけることによって、継続的インテグレーションして始めるのも面白い。私たちの会社だと、ランチ行きたいって言ったら、ランチのおすすめ教えてくれたりだとか、その時間になると「今日の掃除当番、誰がほうきです、掃除してください」って言ってくれる。</p>

<p>テキストベースでもいろんなことができるし、今、夏野さんがおっしゃったみたいに、ARやVRbotみたいなものが、WebRTCのクラウドとして、いろんな振る舞いしていったりすることが、もう拡張現実の世界になってくるんだと思うんですよね。</p>

<p><img src="/wp-content/uploads/2016/03/oikawa4.jpg" alt="" width="600" height="393" class="aligncenter size-full wp-image-18480" srcset="/wp-content/uploads/2016/03/oikawa4.jpg 640w, /wp-content/uploads/2016/03/oikawa4-300x196.jpg 300w, /wp-content/uploads/2016/03/oikawa4-207x136.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<p><strong>白石</strong>：なるほど。</p>

<p><strong>及川</strong>：実はbotだらけでもいいんじゃないかなと思うことがたくさんあって。人間に話すと面倒くさいことなどは、とっても頭のいいbot、もしくは、人工無脳的にちょっとばかなbotとコミュニケーションするほうが、いろいろ円滑に進めるところがある気がします。テキストだけでなく、RTCの世界でも出てきたりするといいんじゃないかなと思いますね。</p>

<h2>次のデバイスとして期待しているものは？</h2>

<p><strong>白石</strong>：会場からの質問も受け付けたいと思います。</p>

<p><strong>Q:次のデバイスとして期待しているものってありますか？</strong></p>

<p><strong>夏野</strong>：どれぐらいのレンジで考えるかですが、僕はこの30年以内に全部デバイスはなくなると思っています。だから、完全に電脳。電脳の中でWebを浮かべれば、Webが浮かぶし、情報は全部で取れるし、送ろうと思えばすぐ送れることになる。ウェアラブルとかVRモノも出ているけど、期待するのはノーデバイス。あとは、『攻殻機動隊』を読んでください。</p>

<p><strong>及川</strong>：逆張りで言わせていただくと、紙ですね（笑）。要は、やっぱりアナログって強いんですよ。だから、ペンでもって自分で何かを書いてとかっていうのもあるし、目にも優しいですので。今の紙、そのものじゃないかもしれないけれども、こういった紙をメタファーにしたようなデバイスは、インターネットにおいて、ずっと取り残されている。確か、ペーパーレスというキーワードとともに、そのIT化、コンピュータ化の中で、過去のデバイスにされているんだけれども、実は再発明されるべきものじゃないかな。紙みたいなデバイスにRTCが入ってきたら、何かできるのかと期待します。</p>

<p><img src="/wp-content/uploads/2016/03/DSC00637.jpg" alt="" width="600" height="354" class="aligncenter size-full wp-image-18474" srcset="/wp-content/uploads/2016/03/DSC00637.jpg 640w, /wp-content/uploads/2016/03/DSC00637-300x177.jpg 300w, /wp-content/uploads/2016/03/DSC00637-207x122.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>

<h2>WebRTCに期待したいことは？</h2>

<p><strong>白石</strong>：最後にWebRTCに絡めた何か一言づつお願いします。</p>

<p><strong>夏野</strong>：さんざん出してきましたが『攻殻機動隊』です。つまりね、日本のエンジニアはものすごい短視眼的になりがちなんですよ。だけどやっぱり20年先、10年先に何がありそうか、あってほしいか。ありそうかを予測するのは面倒くさいけれど、あってほしいかと言う文脈から戻ってWebRTCを考えることが、そのデバイスをどう考えるとかという発想前にしてほしいんですよね。そうしないと、何か突き抜けられないし、つまらないね。あとは『攻殻機動隊』を読んでください。</p>

<p><strong>及川</strong>：僕は最近、botがすごい好きなんですね。だから、RTCでbot、しかも今誰かがサポートしてくれるんじゃなくて、僕の代わりに全部やってくれると。だから、朝早くビデオ会議とかだと面倒くさいので、もう僕の振る舞いを覚えてくれたら勝手に動いてくれるような、そういった世界観が来るといいなと思います。</p>

<p><strong>白石</strong>：皆さん、楽しんでいただけましたでしょうか。楽しんでいただけた方は、大きな拍手で終わりたいと思います。どうもありがとうございました。（盛大な拍手！）</p>

<p><img src="/wp-content/uploads/2016/03/IMG_5134.jpg" alt="" width="600" height="369" class="aligncenter size-full wp-image-18485" srcset="/wp-content/uploads/2016/03/IMG_5134.jpg 600w, /wp-content/uploads/2016/03/IMG_5134-300x185.jpg 300w, /wp-content/uploads/2016/03/IMG_5134-207x127.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></p>
]]></content:encoded>
			</item>
		<item>
		<title>Web Music Developer Meetup@札幌レポート</title>
		<link>/ryoyakawai/17532/</link>
		<pubDate>Fri, 25 Dec 2015 00:00:02 +0000</pubDate>
		<dc:creator><![CDATA[河合良哉]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[MIDI]]></category>
		<category><![CDATA[TPAC]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[Web Music]]></category>

		<guid isPermaLink="false">/?p=17532</guid>
		<description><![CDATA[本記事は2015年10月25日に札幌で行われたWeb Music Developer Meetup@札幌のレポートです。 Meetupを「札幌」で行うキッカケ 2015年10月末はなぜか札幌でのイベントが多かったと思いま...]]></description>
				<content:encoded><![CDATA[<p>本記事は2015年10月25日に札幌で行われたWeb Music Developer Meetup@札幌のレポートです。<br />
<img src="/wp-content/uploads/2015/11/sapporo01.jpg" alt="sapporo00" width="480" class="aligncenter size-large wp-image-17539" /></p>

<h1>Meetupを「札幌」で行うキッカケ</h1>

<p>2015年10月末はなぜか札幌でのイベントが多かったと思いますが、これ実はW3C Technical Plenary / Advisory Committee(通称：TPAC、てぃーぱっく)というMeetingが札幌で行われたからなのです。</p>

<p>詳細は<a href="https://html5experts.jp/yusuke-naka/16710/" data-wpel-link="internal">Web技術の最新動向と未来を知る！〜Leading the way to W3C TPAC 2015〜【TPAC紹介編】</a>にも書かれていますが、ここでも軽くご説明します。TPACとはWebの標準化団体であるW3Cが年に1回行う全体会合で、通常10月最終週の5日間で北米、ヨーロッパ、アジアのどこかで開催されます。</p>

<p><strong>全体会合</strong>とはいえ、5日間通して全体会議をしている訳ではなくて、実際に全体で集まるのはたいて中間日のTechnical Plenary Dayと呼ばれる日。この日だけはアンカンファレンス形式で進められ、当日の朝に話したい内容がある人が場所を確保して分科会(Breakout Session)を行う、という流れになっています。
<figure>
<img src="/wp-content/uploads/2015/11/breakout00.jpg" alt="breakout00" width="640" class="aligncenter size-medium wp-image-17535" srcset="/wp-content/uploads/2015/11/breakout00.jpg 640w, /wp-content/uploads/2015/11/breakout00-300x200.jpg 300w, /wp-content/uploads/2015/11/breakout00-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" />
<figcaption class="aligncenter">分科会の場所を確保する様子</figcaption>
</figure></p>

<p>この日以外は、W3Cにある43のワーキング・グループ（2015年11月6日現在）からそれぞれが議論したい内容、メンバーのスケジュールから日程設定してFace to Faceでのミーティングを行っています。たいていの場合メンバーは世界各国に散らばっているため、普段は電話での会議をしているので顔を合わせてミーティングを行うのは、非常に貴重な時間となっています。</p>

<p>前段が長くなりましたが、ここから本題です。Web Audio API、Web MIDI API（Web Music）の仕様を策定しているのはW3Cのオーディオ・ワーキンググループ(Audio WG)。今回のTPACでは26日、27日にミーティングを行うことになりましたので、せっかくのこの機会に「Audio WGのメンバーとイベントやろう！」と思い立ったのが、今回のMeetupのキッカケです。</p>

<h1>「札幌」でWeb Musicは初めて</h1>

<p>今まで日本で開催されたWeb Music関連イベントは、東京と京都でのハッカソンとMeetup1回だったので、北海道では初めて。そこで、Meetupにして「Web Musicとはなんぞ？」を中心に伝えられるように、以下の方々に登壇していただきました。</p>

<ul>
<li><a href="https://html5experts.jp//twitter.com/ryoyakawai" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">かわい りょうや</a>（開発者、私です）</li>
<li><a href="https://html5experts.jp//twitter.com/cwilso" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Chris Wilson 氏</a> (Web Audio/MIDI 仕様の編集者)</li>
<li><a href="https://html5experts.jp//twitter.com/aike1000" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">藍 圭介 氏</a>（開発者）</li>
<li><a href="https://html5experts.jp//twitter.com/toyoshim" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">豊島 隆志 氏</a>（ChromiumコミッターでWeb MIDI APIの実装者）</li>
<li><a href="https://html5experts.jp//twitter.com/joeberkovitz" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Joe Berkovitz 氏</a> (Audio WGの共同議長)</li>
<li><a href="https://html5experts.jp//twitter.com/sascacci" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">渡邊 正和 氏</a>（開発者：VJアプリを主に開発）</li>
</ul>

<h1>セッションの内容</h1>

<h3>かわい りょうや</h3>

<p>Web Audio、Web MIDIとは何か、何ができるのか、どのブラウザで使えるのかを中心に話をしました<a href="https://html5experts.jp/ryoyakawai/12569/" data-wpel-link="internal">ブラウザで電子楽器を作ってみよう！</a>でご紹介したWeb Audioで作ったアナログ・シンセ、FMシンセの紹介とデモを行い、基本的な使い方とできることの説明、またそれに加えて今回はServiceworkerを使ったオフラインでの動作のデモ、またデスクトップからアプリを起動できるWebApp Manifestのデモも実施。モバイル上でもWebアプリは進化していてNativeアプリに近づいていることの説明を行いました。<br />
▶ <a href="https://www.slideshare.net/ryoyakawai/web-musicdevelopersmeetupsapporo" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><strong>スライド</strong></a></p>

<h3>Chris Wilson 氏</h3>

<p><img src="/wp-content/uploads/2015/11/cwilso-300x200.jpg" alt="cwilso" width="300" height="200" class="aligncenter size-medium wp-image-17597" srcset="/wp-content/uploads/2015/11/cwilso-300x200.jpg 300w, /wp-content/uploads/2015/11/cwilso.jpg 640w, /wp-content/uploads/2015/11/cwilso-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" />
<strong>Making the Web Rock</strong>というタイトルで<a href="http://webaudiodemos.appspot.com/MIDIDrums/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Drum Machine</a>、<a href="https://webaudiodemos.appspot.com/Vocoder/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ボコーダー</a>、<a href="https://webaudiodemos.appspot.com/input/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Audio Input Effect</a>、<a href="http://webaudiodemos.appspot.com/wubwubwub/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">DJ</a>と次々にデモを披露していただき、「Web Audio API、Web MIDI APIを使うとWebブラウザ上でここまでできます」という点を幅広く説明してくれました。また「この<a href="https://aerotwist.com/blog/guitar-tuner/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Webアプリのチューナ</a>ができたおかげでOSネイティブなチューナーアプリ（iOSやAndroidのアプリ）は全部消した」という実話も披露していただきました。チューナーとは音の周波数（音程）を正しく調整する為に使う器具のことです。<br />
▶ <a href="http://webaudiodemos.appspot.com/slides/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><strong>スライド</strong></a></p>

<p>ここでChris氏の発表の中から「Webアプリのチューナ以外のOSネイティブなチューナーアプリを削除できた」という点について、旬な話題ですので少しだけご紹介します。</p>

<p><strong>どのようにWebアプリのチューナーが実装されているか</strong><br />
チューナーは例えばギターの弦1本1本を正しく調整（チューニング）する為に、1本の弦を弾いた時に発せられる音声を入力して周波数を正しく表示します。この表示に従って、弦毎にあるべき周波数にチューニングをすることで常に正しい音で演奏しています。このチューニングは演奏する間に必ず行うので、自宅のみならず、あらゆる場所で動作することが求められます。ここでまとめるとチューナーという器具には最低限以下の2つの要件を満足することが求められます。</p>

<ul>
<li>入力した音声の周波数を正しく表示する</li>
<li>携帯性に優れている</li>
</ul>

<p>モバイル・デバイスのアプリ（iOSアプリケ、androidアプリ；以後「モバイルアプリ」と略します）で製作したチューナーはこれらの2つの要件を満足します。チューニングに関してはマイクから入力した音の周波数を正しく表示するよく知られたアルゴリズムがありますし、携帯性に関してもチューナーアプリを一度ダウンロードしてインストールしてしまえばネットワークへの接続に左右されることなく携帯端末上で動作することが可能ですので、  場所を選ばずどこでも動作します。<br />
前置きが長くなりましたが、ここからがこの2つの要件をどうやってWebアプリとして再現するのか？という点です。1つ目の「入力した音声の周波数を正しく表示する」に関しては、getUserMedia()を使いマイク入力をWeb Audio APIを使って周波数を割り出せばなんとか出来そうだと、とお気づきになると思います。しかしながら「携帯性に優れている」の点はいかがでしょうか？ネットワーク接続なしにどうやってWebアプリを動作させるのでしょうか？<br />
その解決には <em>Service Worker</em> を使います。Webアプリを最初に起動した時に、アプリ全体をキャッシュしてしネットワーク接続のに場合はそのキャッシュを利用してアプリを動かすのです。WebアプリのチューナのService Workerの実装は<a href="https://guitar-tuner.appspot.com/sw.js" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ココ</a>にされています。詳しい解説はここでは割愛しますが、Servive Workerインストール時（最初にサイトを表示した時と考えていただいて問題ありません）に、以下の部分でWebアプリのチューナーに必要なファイルをキャッシュしていることが分かります。</p>

<p></p><pre class="crayon-plain-tag">self.oninstall = function(event) {

  var urls = [

    '/',
    '/images/chrome-touch-icon-192x192.png',

    '/scripts/guitartuner-core.js',

    '/elements/audio-processor/audio-processor.html',
    '/elements/audio-visualizer/audio-visualizer.html',
    '/elements/tuning-instructions/tuning-instructions.html',
    '/elements/tuning-instructions/tick.svg',
    '/elements/tuning-instructions/up-down.svg',

    '/third_party/polymer.html',
    '/third_party/webcomponents-lite.min.js',

    '/third_party/Roboto/Roboto-100.woff2',
    '/third_party/Roboto/Roboto-300.woff2',
    '/third_party/Roboto/Roboto-400.woff2',

    '/favicon.ico',
    '/manifest.json'

  ];

  urls = urls.map(function(url) {
    return new Request(url, {credentials: 'include'});
  });

  event.waitUntil(
    caches
      .open(CACHE_NAME + '-v' + CACHE_VERSION)
      .then(function(cache) {
        return cache.addAll(urls);
      })
  );

};</pre><p></p>

<p>もう1点は起動に関してです。Webアプリとして再現できたのに、起動がブラウザのブックマークからだったり、URLバーが表示されていては少しガッカリです。androidであれば、Webアプリであっても、ホーム画面のアイコンから起動し、URLバーを表示しないことが可能です。また起動時のデバイスの向き、スプラッシュ画面（起動処理中に表示する画像）を設定することも可能です。これを <em>Web App Manifest</em> と呼ばれる機能になります。Webアプリのチューナでは<a href="https://guitar-tuner.appspot.com/manifest.json" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ココ</a>に実装されています。</p>

<p></p><pre class="crayon-plain-tag">{
  "short_name": "Guitar Tuner",
  "name": "Guitar Tuner",
  "start_url": "./?utm_source=web_app_manifest",
  "icons": [
    {
      "src": "/images/chrome-touch-icon-192x192.png",
      "sizes": "192x192",
      "type": "image/png"
    }
  ],
  "display": "standalone",
  "orientation": "portrait"
}</pre><p> 
この数行のJSONを設置して、メインとなるHTMLには以下の1行を追加して読み込ませたらモバイルアプリと同じユーザー体験（ホーム画面からの起動）を提供することが可能になります。
</p><pre class="crayon-plain-tag">&lt;link rel="manifest" href="/manifest.json"&gt;</pre><p></p>

<p>詳細な説明は割愛してしまいましたが、こういった技術を使ってProgressive Web Appsを作ってみてはいかがでしょうか？</p>

<h3>藍 圭介 氏</h3>

<p><img src="/wp-content/uploads/2015/11/aike-300x200.jpg" alt="aike" width="300" height="200" class="aligncenter size-medium wp-image-17599" srcset="/wp-content/uploads/2015/11/aike-300x200.jpg 300w, /wp-content/uploads/2015/11/aike.jpg 640w, /wp-content/uploads/2015/11/aike-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" />
<strong>Web Audio API Creative Coding</strong>というタイトルで、moogのアナログシンセのWeb版の<a href="http://aikelab.net/websynth/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">2D版</a>、<a href="http://aikelab.net/websynthv2/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">3D版</a>、それ以外にもセンサーを使うことで<a href="http://aikelab.net/iphonewah/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Wahペダル</a>だったり、<a href="http://aikelab.net/sw/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ライトセーバー</a>のような動きに反応するアプリケーションも作ることが可能というデモを実施。Web Audio/MIDI以外のAPIとの親和性も高く、手軽に使えることから「Web Audio/MIDIは音楽のためのみならず、表現メディアのプラットフォームになり得る」という点をご説明してくださいました。<br />
▶ <a href="http://aikelab.net/wmmu/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><strong>スライド</strong></a></p>

<h3>豊島 隆志 氏</h3>

<p><img src="/wp-content/uploads/2015/11/toyoshim-300x200.jpg" alt="toyoshim" width="300" height="200" class="aligncenter size-medium wp-image-17600" srcset="/wp-content/uploads/2015/11/toyoshim-300x200.jpg 300w, /wp-content/uploads/2015/11/toyoshim.jpg 640w, /wp-content/uploads/2015/11/toyoshim-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" />
<strong>Chrome Web MIDI 2015</strong>というタイトルで発表。実際にChromeに実装をしているので、今までのWeb MIDIの実装の歴史、AndroidのWeb ViewでもOperaでもElectronでもChromeと同じようにWeb MIDIが使えるようになっていること、Firefoxでの実装状況、Web MIDI APIの使われる頻度等、APIを実装するという視点から発表をしてくれました。<br />
▶ <a href="http://www.slideshare.net/toyoshim/chrome-web-midi-2015-54372357" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><strong>スライド</strong></a></p>

<h3>Joe Berkovitz 氏</h3>

<p><img src="/wp-content/uploads/2015/11/joe-300x200.jpg" alt="joe" width="300" height="200" class="aligncenter size-medium wp-image-17601" srcset="/wp-content/uploads/2015/11/joe-300x200.jpg 300w, /wp-content/uploads/2015/11/joe.jpg 640w, /wp-content/uploads/2015/11/joe-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" />
<strong>Music Notation and W3C:
Framing the Future</strong>というタイトルでの発表。Audio WGの共同議長でもあり、また2015年7月にW3CでMusic Notation Community Group(楽譜に関するグループ)の立ち上げも行っており、普段はnoteflight Inc.にてブラウザ上で楽譜を表示、演奏するアプリケーションを開発しています。今回の発表では、Noteflightが実際に楽譜表示を軸にどういった機能を実装しているのか、またWeb上で表示できるようになるとどう変わるのかをデモを交えながらの発表でした。<br />
▶ <a href="https://html5experts.jp/wp-content/uploads/2015/11/MusicNotationNext.pdf" data-wpel-link="internal"><strong>スライド(PDF)</strong></a></p>

<h3>渡邊 正和 氏</h3>

<p><img src="/wp-content/uploads/2015/11/watanabe-300x200.jpg" alt="watanabe" width="300" height="200" class="aligncenter size-medium wp-image-17602" srcset="/wp-content/uploads/2015/11/watanabe-300x200.jpg 300w, /wp-content/uploads/2015/11/watanabe.jpg 640w, /wp-content/uploads/2015/11/watanabe-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" />
<strong>ライブパフォーマンス、その他（例えば教育）でのWeb Audio/MIDIの活用事例</strong>を紹介。Audio/MIDIがWeb上で使えることで拡がった、音楽の世界を語ってくれました。<a href="https://dl.dropboxusercontent.com/u/50143793/app/lissajous_float.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">リサジューのデモ</a>も披露。</p>

<ul>
<li><a href="http://sascacci-blog.tumblr.com/post/126325315693/takashi-mori-x-masakazu-watanabe" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Takashi Moriさんの演奏とのコラボ</a></li>
<li><a href="http://sascacci-blog.tumblr.com/post/132239501178/networks" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">NETWORKSとのコラボ</a></li>
<li><a href="http://sascacci-blog.tumblr.com/post/127920844973/%E3%82%A8%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AD%E3%83%9C%E3%82%A4%E3%82%B9%E3%81%A8%E3%83%93%E3%82%B8%E3%83%A5%E3%82%A2%E3%83%AB%E3%82%A2%E3%83%BC%E3%83%88" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">エレクトロボイスとビジュアルアート</a></li>
</ul>

<h1>Lightning Talk</h1>

<p>3名、1団体からの発表がありました。</p>

<ul>
<li><a href="https://twitter.com/aklaswad" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">@aklaswad</a>さん:
wani[WebAudio N Interface]の<a href="http://aklaswad.github.io/wani/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">デモ</a></li>
<li><a href="https://twitter.com/edy555" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">高橋さん</a>：<a href="https://github.com/ttrftech/threejs-spectrum" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ワンセグチューナーから電波を拾ってthree.jsで電波を表示するデモ</a></li>
<li><a href="https://twitter.com/plusadd" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">小池さん</a>：楽譜アプリのpiaScoreの説明とPlasaddがスタッフ募集している件、</li>
<li><a href="http://jp.yamaha.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ヤマハ株式会社</a>：MIDI、音楽系でよく使われるOSC(OpenSound Control)と、Web Socketをごちゃ混ぜのシステムでも簡単に構築できるRaspberry Piで作ったシステムの紹介がありました。</li>
</ul>

<h1>Meetupを終えて</h1>

<p>今回Audio WGでコアに動いている方のほとんどがMeetupに足を運んでくれたこともあって、日本の皆さんにはもとより、Audio WGの皆様には「こういう使われ方もしている」という現状を見ていただけて、とてもよい機会になったと思っています。今後もこういう機会があったら企画したいと考えています。<br />
▶ <a href="https://plus.google.com/u/0/events/coke57atppv4rvgkiueu5mco7tg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><strong>写真等</strong></a></p>

<h1>おまけ：Web Audio、Web MIDIの進捗に関して</h1>

<p>W3Cが定める仕様策定までの5段階のうち、Web Audio/MIDI共に、現在は1つ目の段階（WD:Working Draft）です。しかし、Web Audioは次の段階（LC:Last Call）へと進む気配があります。早くて年内、遅くとも来年4月（<a href="http://webaudio.gatech.edu/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Web Audio Conference 2016があります</a>）ではないでしょうか。またWeb MIDIに関してもFirefoxに実装が進んでいてMac OSでは動いているとのことですので、こちらも次の段階へ進むことへの期待ができるでしょう。</p>

<p><figure>
<img src="/wp-content/uploads/2015/11/audiowg-640x427.jpg" alt="audiowg" width="640" height="427" class="aligncenter size-large wp-image-17579" srcset="/wp-content/uploads/2015/11/audiowg.jpg 640w, /wp-content/uploads/2015/11/audiowg-300x200.jpg 300w, /wp-content/uploads/2015/11/audiowg-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" />
<figcaption class="aligncenter">Audio WGのミーティングの様子</figcaption>
</figure></p>

<p>それでは、今後もWeb Musicをよろしくお願いします！</p>
]]></content:encoded>
			</item>
		<item>
		<title>サイマルキャストはWebRTCになぜ必要なのか？W3C TPACで交わされたもっとも重要な議論を解説する</title>
		<link>/iwase/17582/</link>
		<pubDate>Mon, 30 Nov 2015 00:00:32 +0000</pubDate>
		<dc:creator><![CDATA[岩瀬 義昌]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[TPAC2015]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[WebRTC]]></category>

		<guid isPermaLink="false">/?p=17582</guid>
		<description><![CDATA[2015年10月26日から30日にかけて、札幌で「TPAC2015」が開催されました。本記事はその中でも、29日と30日に開催されたWebRTCワーキンググループの議論をレポートします。 TPACとは? TPACとは、W...]]></description>
				<content:encoded><![CDATA[<p>2015年10月26日から30日にかけて、札幌で「TPAC2015」が開催されました。本記事はその中でも、29日と30日に開催されたWebRTCワーキンググループの議論をレポートします。</p>

<h2>TPACとは?</h2>

<p>TPACとは、Webの標準化団体であるW3C(World Wide Web Consortium)が開催する1週間のイベントのことです。様々な国、様々な企業からメンバーが集まり、現在のWeb標準・将来的なWebの機能(例えば、cryptoやaudio)について議論します。今回は、札幌開催であり主要なWebRTC仕様策定者が一同に日本に集結しました。</p>

<div id="attachment_17586" style="width: 650px" class="wp-caption alignnone"><a href="https://html5experts.jp/wp-content/uploads/2015/11/tpac.jpg" data-wpel-link="internal"><img src="/wp-content/uploads/2015/11/tpac.jpg" alt="pic of tpac 2015" width="640" height="360" class="size-full wp-image-17586" srcset="/wp-content/uploads/2015/11/tpac.jpg 640w, /wp-content/uploads/2015/11/tpac-300x169.jpg 300w, /wp-content/uploads/2015/11/tpac-207x116.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a><p class="wp-caption-text">tpac 2015</p></div>

<h2>最大の議論の焦点となったサイマルキャスト</h2>

<p>WebRTCのW3C側の仕様は、まだCR(勧告候補)になっていませんが、ORTCの議論に後押しされるかたちで、既に次世代の仕様である、WebRTC-NVの議論がはじまっています。今回のTPACではWebRTC 1.0(WebRTC-NVに対して、年内に切り上げる予定のWebRTCのバージョンを1.0としている)に対して、最終的にどの仕様を盛り込むのか、が1つの争点となりました。その中でも特に議論が盛り上がったのがサイマルキャスト(Simulcast)です。TPACで展開されたサイマルキャストの議論を理解するためには、先にサイマルキャストそのものを理解する必要があります。そこで、以下でサイマルキャストとは何か、なぜ必要なのか、を簡単に説明したのち、TPACの議論を紹介します。</p>

<h3>サイマルキャストとは？</h3>

<p>放送業界の用語として、サイマルキャストという用語をお聞きになった方もいるかもしれませんが、WebRTCの文脈で用いられるサイマルキャストは意味合いが異なります。WebRTCで利用するサイマルキャストを一言で表現すると、「送受信側が1つの動画を、異なる品質でエンコードしたストリームを送受信すること」となります。少しわかりにくいので、以下でさらに具体的な例を利用して説明します。</p>

<h3>サイマルキャストがなぜ必要なのか？</h3>

<p>WebRTCの弱点として挙げられる点として、「多人数会議の実現」があります。P2P通信のみで多人数会議を実現すると、ネットワークトポロジはフルメッシュ形式となり、端末の能力・帯域に限界が来てしまい、接続数がスケールしません。それを解決するための案として、何らかのサーバを利用するスター型トポロジを利用する案があります。サーバには大きく分けて、サーバ側で音声映像を結合するMCU、音声映像を結合せずに分配するSFUがあります。（MCU/SFUの詳細は、過去記事の<a href="https://html5experts.jp/iwase/12585/" data-wpel-link="internal">WebRTCにおけるサーバーソリューションの決め手とは？</a>を参照ください）</p>

<p>SFUを利用した場合、受信側デバイスの処理能力・帯域が豊富にあれば良いのですが、モバイル端末の場合は常に得られるとは限りません。そこで、登場するのがサイマルキャストという概念です。</p>

<div id="attachment_17585" style="width: 650px" class="wp-caption alignnone"><a href="https://html5experts.jp/wp-content/uploads/2015/11/simulcast.png" data-wpel-link="internal"><img src="/wp-content/uploads/2015/11/simulcast.png" alt="the picture of simulcast" width="640" height="480" class="size-full wp-image-17585" srcset="/wp-content/uploads/2015/11/simulcast.png 640w, /wp-content/uploads/2015/11/simulcast-300x225.png 300w, /wp-content/uploads/2015/11/simulcast-207x155.png 207w" sizes="(max-width: 640px) 100vw, 640px" /></a><p class="wp-caption-text">simulcast</p></div>

<p>サイマルキャストでは、上図のように送信側が複数の音声・映像ストリームを受信側に送ります。複数のストリームとは例えば、高解像度の映像と低解像度の映像といったストリームを示します。複数ストリームを受け取ったSFUは、受信側の能力に応じて、適切なストリームを分配します。処理能力・帯域に余裕のある受信側クライアントは、高品質のストリームを受信し、余裕のない受信側クライアントは、低品質のストリームを受けとります。その結果、受信側は自身の能力にあったストリームを受信できることになります。</p>

<p>以上が、サイマルキャストの前提知識となります。以降、TPACの議論内容・要点をまとめます。TPACで議論のベースとして用いられた資料は<a href="https://www.w3.org/2011/04/webrtc/wiki/images/e/e3/Simulcast_at_TPAC_2015.pdf" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">こちら</a>です。</p>

<h3>サイマルキャストを実現するために必要な機能</h3>

<p>サイマルキャストを実現するためには、送信側のAPI(JavaScript)でまず、2つ以上のエンコードがあることを明示しなければなりません。具体的なコードサンプルは以下となります：</p>

<p></p><pre class="crayon-plain-tag">var sender = pc.addTransceiver({sendEncodings: [
 {rid: “F”},
 {rid: “H”, scaleResolutionDownBy: 2},
 {rid: “Q”, scaleResolutionDownBy: 4}
]).sender;

// 補足：Transceiverという名前も新規に登場しています。
// 本記事では、詳細に説明いたしませんが、簡単に言えばRTPSenderとRTPReceiverを管理する親のオブジェクトとなります。</pre><p></p>

<p>sendEncodingsの値として、rid(暫定的な名前なため、ridという名前自体は変わる可能性があります。詳細は<a href="https://tools.ietf.org/html/draft-pthatcher-mmusic-rid-02#section-12" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ridが規定されるRFC</a>を参照ください)を利用して、複数ストリームを設定しています。ridの値である&#8221;F&#8221;/&#8221;H&#8221;/&#8221;Q&#8221;は単なる識別子であり、この値はブラウザが選択するのか、それともJavaScriptで設定するのか、について議論がありましたが、最終的にJavaScript側で設定する方向で議論が進みました。</p>

<p>また、scaleResolutionDownbyの値によって、送信ストリームの品質を分けています。scaleResolutionDownByはconstraints(制約)と設定する一例に過ぎず、ここで設定する値についても議論がありました。具体的にはフレームレート、最大ビットレート等で十分なのでは、といった意見が出ていました。</p>

<h3>SDPによるネゴシエーション？</h3>

<p>従来のWebRTCでは、送受信側でコーデックなどのパラメータを、SDPを利用したシグナリングによってネゴシエーションします。ridを利用したサイマルキャストについても、自然に考えれば、同様にSDPを利用したシグナリングになります。しかし、1点問題があります。SDPで規定される内容は、W3Cで規定する仕様ではなく、IETFのMMUSIC WGで規定であるため、仕様策定に非常に時間がかかるのです。(MMUSICの仕様策定には、これまでの歴史から時間がかかるケースが多いため)</p>

<p>そこで、TPACでは</p>

<ul>
<li>MMUSIC WGで、サイマルキャスト向けの仕様策定が上手くいった場合</li>
<li>MMUSIC WGで、サイマルキャスト向けの仕様策定が上手くいかなかった場合</li>
</ul>

<p>の2点を同時に考慮する議論が進みました。具体的な方針は以下の通りです。</p>

<h3>MMUSIC WGの仕様策定が上手くいった場合</h3>

<p>SDPでsimulcast向けのパラメータを記載します。たとえば、以下のようになります。</p>

<p></p><pre class="crayon-plain-tag">// クライアント側のSDP
a=rid:F send
a=rid:H send
a=rid:Q send
a=simulcast rid:F,H,Q

// サーバ側のSDP
a=rid:F recv
a=rid:H recv
a=simulcast rid:F,H</pre><p></p>

<p>上記でネゴシエーションされたRIDをRTP/RTCPの拡張ヘッダの値として規定して、クライアント(例：ブラウザ)とサーバ間(例：SFU)でメディアを送受信する動作になります。</p>

<p>メディアの送受信方法には、いくつか案があり、TPACより前に議論の候補として挙げられていたのは、<a href="https://tools.ietf.org/html/draft-pthatcher-MMUSIC-rid-02" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">RTPのヘッダに載っているPT(Payload Type)の値を利用して、ストリームを識別する案</a>でした。しかし、その案にはペイロード番号を使いきってしまうなどの懸念(この懸念は<a href="https://www.ietf.org/proceedings/94/slides/slides-94-avtext-0.pdf" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">IETFのAVTEXT WG</a>で説明がされています)があったため、RIDをRTP/RTCPヘッダ拡張として設定する案で議論が進んでいます。</p>

<h3>MMUSIC WGの仕様策定が上手くいかなかった場合</h3>

<p>SDPに対する変更は加えられないため、別の方法が必要になります。具体的な方法は、アプリケーション開発者に委譲されており、開発者が任意の手段でSDP以外の方法でシグナリングすることになります。柔軟なシグナリングを必要としなければ、開発者がパラメータを事前に設定しておいて、不要なシグナリングを減らすような案も考えられます。</p>

<h3>どちらの場合でも発生される懸念</h3>

<p>サイマルキャスト向けのJavaScriptAPIが利用できるようになると、送信側のブラウザが複数品質のメディアストリームを送れるようになります。その際、受信側はSFUではなく、ブラウザであるケースももちろんあります。その場合、「ブラウザは受信すべきか？どう振る舞うべきか？」といった議論もありました。この振舞いの仕様自体は、WebRTC 1.0のスコープ外であり、ブラウザにおけるSimucastの受信は定義されていません。仮にブラウザが受け取ったとしても、ブラウザは単に別のストリームとして扱えばいいのではないか、といった意見が上がっていました。</p>

<h3>その他サイマルキャストの仕様策定における重要な考え方</h3>

<p>TPACで重要な点として述べられていたのは、「MMUSICの仕様策定が上手くいかなかっとしても、ネットワーク経路上を飛び交うメディア(RTP/RTCP)については変更を加えない」ようにするという点です。シグナリングは比較的に容易にpolyfillができるので、MMUSICが間に合わなくても、MMUSICの仕様策定が終わり、最終的に整合がとれれば良いという考え方です。</p>

<h2>サイマルキャスト以外のトピック</h2>

<p>以下で簡単にサイマルキャスト以外のトピックを2つほど紹介します。</p>

<h3>IPリーク問題</h3>

<p>WebRTCは、P2Pで通信する際にICE(<a href="https://tools.ietf.org/html/rfc5245" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">RFC5245 Interactive Connectivity Establishment</a>)という技術を活用します。ICEの内部動作としては、可能な限り接続可能性を高めるために、少しでも通信相手と接続できる可能性がある候補を全て収集します。たとえば、プライベートIP、プライベートIPからインターネットへ出ていく際に変換されるNAT後のグローバルIP、などがその候補に該当します。</p>

<p>接続可能性を向上させる、という意味では正常な動作なのですが、全てのIPアドレスを収集するといったその動作の特性上、ユーザのIPが外部に漏れる懸念があります。実際にNY TimesがIP収集に利用していたといった<a href="https://webrtchacks.com/dear-ny-times/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">実例</a>もあります。結果として、同じNAT配下にいるメンバが外部に漏れてしまう、ネットワークトポロジが外部に漏れてしまう、複数のアドレスが同じであることを利用して個人特定に利用される、VPN/Proxyで隠されるべきアドレスが露出してしまうといった懸念があります。これがWebRTC界隈で話題にあがっているIPリーク問題です。</p>

<p>TPACでは、IPリーク問題に対する対応策として<a href="https://www.w3.org/2011/04/webrtc/wiki/images/4/4d/WebRTC_IP_Address_Privacy_TPAC_2015.pdf" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">この資料</a>をベースに議論が実施されました。</p>

<p>結論のみ述べると、以下の4種類のどれかの振舞いをすることで問題を解決します。</p>

<ol>
<li>全ての候補を収集する(ただし、getUserMediaの同意があるときのみ)</li>
<li>制限付き収集その１(ローカルはデフォルトの候補のみと、<a href="https://www.nic.ad.jp/ja/translation/rfc/1918.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">RFC1918</a>で規定されるアドレスの候補を集める。これがデフォルトの動作になる)</li>
<li>制限付き収集その２(ローカルの候補は無し。ただしpreferenceやextensionで設定が必要)</li>
<li>プロキシのみ(preferenceやextensionで設定が必要)</li>
</ol>

<p>上記の[2]においては、どの程度のアドレスを集めるのか、選択肢が2つあります。選択肢の1つ目はデフォルトのホスト候補のみ、もう1つの選択肢はRFC1918の全ての候補を集めるといったものです。結論は、実際に計測実験を実施して、接続確率がどの程度低下してしまうのか、たしかめてから最終的な動作を決定する、といった結論になりました。</p>

<h3>RtpTransceiver</h3>

<p>新たにRtpSenderとRtpReceiverをまとめ、SDPのm=セクションをモデル化したオブジェクトとして、RtpTranceiverが追加されています。アプリケーション開発者はRtpTranceiverを利用することで、メディアストリームトラックの行き先を柔軟にコントロールできるようになります。</p>

<p>TPACではRtpTransceiverに関する議論がいくつかあり、例えばこれまでのWebRTCでa=recvonlyを設定するために利用していたOfferToReceiveオプションは、Tranceiver側でも制御できるようになるため削除する、などが議論に上がりました。</p>

<hr />

<h2>最後に</h2>

<p>ここまで、TPAC WebRTC WGでの議論となった課題の背景、議論内容を紹介してきました。2日間の議論であったため、全てを本記事で紹介できたわけではありません。さらに興味のある方は、以下のアジェンダ・議事録をご覧ください。</p>

<ul>
<li><a href="https://www.w3.org/2011/04/webrtc/wiki/October_29_-_30_2015#Thursday_October_29" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">アジェンダ</a></li>
<li><a href="http://www.w3.org/2015/10/28-webrtc-minutes.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">WebRTC WG 1日目議事録</a></li>
<li><a href="http://www.w3.org/2015/10/29-webrtc-minutes.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">WebRTC WG 2日目議事録</a></li>
</ul>
]]></content:encoded>
			</item>
		<item>
		<title>【HTML5 Experts.jp】2015年10月のブラウザ関連ニュース</title>
		<link>/myakura/17525/</link>
		<pubDate>Wed, 25 Nov 2015 00:00:52 +0000</pubDate>
		<dc:creator><![CDATA[矢倉 眞隆]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[ES6]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[WebKit]]></category>
		<category><![CDATA[ブラウザ]]></category>

		<guid isPermaLink="false">/?p=17525</guid>
		<description><![CDATA[連載： WEB標準化動向 (6)Safari 9.0リリース 10月1日にOS X 10.11 El Capitanがリリースされ、先月のiOS版に続きOS X版のSafariも9.0になりました。 Safari 9.0...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/webstandards-news/" class="series-156" title="WEB標準化動向" data-wpel-link="internal">WEB標準化動向</a> (6)</div><h2>Safari 9.0リリース</h2>

<p>10月1日にOS X 10.11 El Capitanがリリースされ、先月のiOS版に続きOS X版のSafariも9.0になりました。</p>

<p>Safari 9.0ではWeb Inspectorに力がはいったようで、UIの刷新ほか既存の機能もかなり強化されています。</p>

<ul>
<li><a href="https://www.webkit.org/blog/3574/web-inspector-interface-changes/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Web Inspector Interface Changes</a></li>
<li><a href="https://www.webkit.org/blog/3516/web-inspector-console-improvements/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Web Inspector Console Improvements</a></li>
<li><a href="https://www.webkit.org/blog/3961/styles-sidebar-refinements-in-web-inspector/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Styles Sidebar Refinements in Web Inspector</a></li>
<li><a href="https://www.webkit.org/blog/3846/type-profiling-and-code-coverage-profiling-for-javascript/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Type Profiling and Code Coverage Profiling for JavaScript</a></li>
<li><a href="https://www.webkit.org/blog/3996/introducing-the-rendering-frames-timeline/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Introducing the Rendering Frames Timeline</a></li>
</ul>

<p>いくつかの機能は他のブラウザに追いついたものですが、スタイルサイドバーのMatch StylesやJavaScriptの型プロファイルはユニークですね。</p>

<p>また、ES6実装状況についても簡単にまとめた記事が公開されています。</p>

<ul>
<li><a href="https://www.webkit.org/blog/4054/es6-in-webkit/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ES6 in WebKit</a></li>
</ul>

<p>ここ最近になりかなり実装が進んでいますが、Default parametersやArrow Functionsなどは次のメジャーバージョンになるようですね。</p>

<h2>Chrome 46リリース</h2>

<p>10月13日に<a href="http://googlechromereleases.blogspot.jp/2015/10/stable-channel-update.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Chrome 46がリリースされました</a>。新しく追加された機能などは<a href="http://blog.chromium.org/2015/09/chrome-46-beta-flexible-animations-and.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Chromium Blogのエントリ</a>…よりもChromiumベースなOperaのブログのほうが読みやすいです。</p>

<ul>
<li><a href="https://dev.opera.com/blog/opera-33/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Dev.Opera — Opera 33 released</a></li>
</ul>

<p><code>rel=preconnect</code> はCSSやスクリプトなどで他originのリソースを読み込む際にパフォーマンスを向上させられるかもしれません。詳しい説明や使い方は <code>preconnect</code> が定義されている <a href="https://w3c.github.io/resource-hints/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Resource Hints仕様</a>のEditorである<a href="https://www.igvita.com/2015/08/17/eliminating-roundtrips-with-preconnect/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Ilya Grigorikのエントリ</a>をお読みください。</p>

<h3>DevToolsのUI変更中</h3>

<p>そういえば、Chrome 45くらいからUIの変更を含め、DevToolsがいろいろ変わっています。こうした変更点について、Developer AdvocateのAddy Osmaniが行ったトークが公開されています。</p>

<ul>
<li><a href="https://www.youtube.com/watch?v=XpGa6IzmmQg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Addy Osmani &#8211; What’s New in Chrome DevTools &#8211; YouTube</a></li>
</ul>

<p>また、先月発売された<a href="http://gihyo.jp/magazine/wdpress/archive/2015/vol89" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">WEB+DB PRESS 89号</a>でもエキスパートの<a href="https://html5experts.jp/ahomu/" data-wpel-link="internal">佐藤さん</a>と<a href="https://html5experts.jp/1000ch/" data-wpel-link="internal">泉水さん</a>によるChrome DevToolsの解説記事が掲載されています。すこし先の変更（Chrome 47 Canaryでの情報をもとに執筆）とのことで、現時点のChromeと若干違うかもしれませんが、大いに参考になりそうです。</p>

<h2>FirefoxがWebKit接頭辞つき機能のサポートを本格化</h2>

<p>FirefoxのNightlyで、WebKitの接頭辞つき機能がサポートされ始めました。<code>-webkit-linear-gradient</code>、<code>-webkit-radial-gradient</code>といったCSSのグラデーションを始め、<code>Element.webkitMatchesSelector()</code>メソッドなどDOM APIにの実装も行われています。</p>

<ul>
<li><a href="https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?changeset=a17eed123926" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">mozilla-inbound: pushlog ― Bug 1210575 &#8211; Add native support for parsing -webkit-linear-gradient &amp; -webkit-radial-gradient</a></li>
<li><a href="https://groups.google.com/forum/#!topic/mozilla.dev.platform/YXDTm13wZzI" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Intent to implement and ship: webkitMatchesSelector &#8211; Google Groups</a></li>
</ul>

<p>WebKit接頭辞なCSSのサポートですが、これまでは中国や日本の一部のサイトに限って有効にされていました。</p>

<ul>
<li><a href="http://myakura.hatenablog.com/entry/2015/04/24/211849" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">FirefoxのCSS Unprefixing Service &#8211; fragmentary</a></li>
</ul>

<p>ただ思った以上にWebKit接頭辞のみを仕様していることなどから、やむなく<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1177263" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">すべてのサイトで有効にするよう</a>です。</p>

<p>こうしたマッピングをベンダー独自にやってしまうことで、新たな互換性問題を生んでしまう可能性もあります。このためMozillaのCompatibility Teamが中心となり、互換性のためのドキュメント<a href="https://compat.spec.whatwg.org/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Compatibility Standard</a>の作業も始まっています。</p>

<p>また、<code>Element.webkitMatchesSelector()</code> についてはまとめやすさの都合からか、標準の <code>Element.matches()</code> エイリアスとして<a href="https://github.com/whatwg/dom/commit/9ac9c1548661a309c15168d71e6fb6af92d4d610" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">DOM仕様で定義されました</a>。ベンダー拡張だった機能の標準化はHTML、DOM、XMLHttpRequestなど多数の仕様で行われましたが、接頭辞つきの名前で仕様に定義されるのは、このメソッドが初めてかと思います。</p>

<p>なお、ベンダー接頭辞だけでなく、日本のWebが起こしている互換性の問題については、Compatibility TeamのKarl Dubostが以前に<a href="http://www.otsukare.info/2015/04/17/web-compatibility-japan" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">自身のブログに記しています</a>。彼は今月の<a href="http://www.mozilla.jp/events/devcon/2015/tokyo/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Firefox Developer Comference</a>でも登壇し、互換性の話をしました。とてもおもしろかったので、ビデオが公開されたらチェックしてくださいね。</p>
]]></content:encoded>
		
		<series:name><![CDATA[WEB標準化動向]]></series:name>
	</item>
		<item>
		<title>Web技術の最新動向と未来を知る！〜Leading the way to W3C TPAC 2015〜【TPAC紹介編】</title>
		<link>/yusuke-naka/16710/</link>
		<pubDate>Wed, 21 Oct 2015 08:00:15 +0000</pubDate>
		<dc:creator><![CDATA[仲 裕介]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[Eddystone]]></category>
		<category><![CDATA[Physical Web]]></category>
		<category><![CDATA[TPAC2015]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">/?p=16710</guid>
		<description><![CDATA[皆さん、来週2015年10月26日〜30日の5日間、W3C Technical Plenary / Advisory Committee Meetings Week(TPAC)というイベントが開催されるのをご存知ですか？...]]></description>
				<content:encoded><![CDATA[<p>皆さん、来週2015年10月26日〜30日の5日間、<a href="http://www.w3.org/2015/10/TPAC/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">W3C Technical Plenary / Advisory Committee Meetings Week(TPAC)</a>というイベントが開催されるのをご存知ですか？</p>

<p>TPACはWebの標準化団体である<a href="http://www.w3.org/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">W3C</a>が年一回開催する全体会合です。今年はその会合がなんと、札幌で開催されます。最先端のWeb標準に関する様々な議論が日本で交わされること記念して、TPACの魅力を伝えるとともに、Web標準の今をわかりやすく紹介するイベント「Leading the way to W3C TPAC 2015」が、8月終わりに開催されました。テーマは「Webの未来の肌触りを感じよう」。</p>

<p>来週TPACに参加される方もそうでない方も、全ての方に改めてWeb標準に興味関心を持っていただきたいと考え、そのイベントの模様をレポートします！</p>

<h2>はじめに</h2>

<p>イベントはW3C Keioサイトマネージャーの中村修氏の挨拶から始まりました。
<a href="https://html5experts.jp/wp-content/uploads/2015/08/nakamura_sensei.jpg" data-wpel-link="internal"><img src="/wp-content/uploads/2015/08/nakamura_sensei-300x225.jpg" alt="中村修氏" width="300" height="225" class="alignright size-medium wp-image-16810" srcset="/wp-content/uploads/2015/08/nakamura_sensei-300x225.jpg 300w, /wp-content/uploads/2015/08/nakamura_sensei.jpg 640w, /wp-content/uploads/2015/08/nakamura_sensei-207x155.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<h4>W3CとIETFの関わり</h4>

<p>今年は、Web標準を作るW3CのTPACと、インターネットプロトコルの標準を作るIETFが、それぞれ10月と11月に日本で開催される。この2つの会議が同じ時期に同じ国で行われることは歴史的にみても初めての試みだ。例えば、Webブラウザ上でP2Pによる通信を実現するWebRTCを例にとると、関連するプロトコルの議論はIETF、APIやアーキテクチャの議論はW3Cで議論が進められており、今や両者は密接に関わっている。そのため、今回のような取り組みは非常に重要な意味を持つ。また、IETFとW3Cが作る標準は「オープン標準」であることが最も重要なこと。みんなが自由にソフトウェアを書いて、その上で同じく自由に新しいサービスを作っていけるように、そのための基盤作っていく作業をIETFとW3Cは日々やっている。そこを理解してほしい。</p>

<h2>TPAC2015の歩き方</h2>

<p>最初のセッションはHTML5 Experts.jpのエキスパートでもある<a href="https://html5experts.jp/myakura/" target="_blank" data-wpel-link="internal">矢倉眞隆氏</a>による「W3Cの歩き方」です。矢倉氏は以前、W3Cメンバーであるミツエーリンクスに所属しており、そこで標準活動を積極的に行っていた経歴を持ち、2007年からほぼ毎年TPACに参加しているそうです。
<a href="https://html5experts.jp/wp-content/uploads/2015/08/yakura_san.jpg" data-wpel-link="internal"><img src="/wp-content/uploads/2015/08/yakura_san-300x225.jpg" alt="矢倉氏" width="300" height="225" class="alignright size-medium wp-image-16812" srcset="/wp-content/uploads/2015/08/yakura_san-300x225.jpg 300w, /wp-content/uploads/2015/08/yakura_san.jpg 640w, /wp-content/uploads/2015/08/yakura_san-207x155.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<h4>W3Cの情報ってどうやって収集するの</h4>

<p>W3Cの標準化に関する活動の様子を知る手段としては、<a href="https://lists.w3.org.Achives/Public/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">「メーリングリスト」</a>、<a href="https://github.com/w3c" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">「GitHub」</a>、「F2Fミーティング」の3種類がある。中でも今はGitHubでの議論が活発。Issuesを活用し様々なトピックについて議論がなされているため、議論に加わりたい方にはオススメ。気軽にコメントやPRができる。F2Fミーティングは、各ワーキング・グループ毎にTPAC以外で、年2回以上は開催されており（グループごとに差がある）、コミュニケーションが密に取れるという意味では大変重要な役割を担っている。例えば、CSSのワーキング・グループでは、図形に関する議論が多いため、F2Fでプロジェクターを見ながら議論することで、より捗る傾向にある。</p>

<h4>TPAC2015ではどのようなことが行われるのか</h4>

<p>TPACはW3Cの全体会合（TECHNICAL PLENARY）、運営会議（ACミーティング）、F2Fミーティング（グループミーティング）で構成されており、年に1回実開催される。スケジュールやどのようなグループが議論を行うかは、<a href="http://www.w3.org/2015/10/TPAC/schedule.html" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">公式サイト</a>に掲載されている。</p>

<p>中でも注目は、水曜日に開催される「TECHNICAL PLENARY DAY」だ。これは、アンカンファレンス形式で進められる。TPACの参加者自身が喋りたい内容をその日の朝に出し合い、早い者勝ちで予め用意されているミニセッション枠を確保する。他の参加者たちは好きなセッションに参加可能である。これは、各グループの垣根を超えたコミュニケーションを促進することで、イノベーションを促進する狙いがある。</p>

<h4>なぜTPACに参加するのか</h4>

<p>標準化に関する内容は、Webで簡単に手に入る時代になった。この時代に、あえてTPACに行く理由はなにか？開発者目線のTPACは、ブラウザベンダにこのようなAPIを実装してほしい、ここの部分が使いにくいので変えてほしい等、開発者の声を積極にアピールする場になっている。また、直接あって話がしたい、発表したい、他の開発者と差を付けたいなど、野心的な想いを持った開発者も多い。</p>

<h4>これからの標準化と開発者の関わり方</h4>

<p>最近では、ブラウザベンダも標準をかなり意識し始めている。標準じゃないと実装しないという風潮になりつつある。そして、標準化の現場も変わりつつある。これまで標準化の場で作り出されるAPIは、開発者からの要望に基づいたハイレベル（高機能）なものが多かった。そのため、新しく出てくる様々なユースケースに対応できなかった。（対応に時間がかかっていた）今後は、様々なユースケースに短期間で対応できるように、ブラウザで扱える範囲にはなるが、比較的ローレベル（低機能）なAPIの標準化が主流になる。それを組み合わせることで、開発者は様々なユースケースに迅速に対応できる。（いわゆるExtensible Webの流れ）また、JQueryのように、ローレベルなAPIを開発者自らがラッパーしてわかりやすいAPIを定義するということが、増えてくるだろうと期待もされている。</p>

<h2>Developer Meetup in Sapporoが開催されます！</h2>

<p><a href="https://html5experts.jp/wp-content/uploads/2015/09/dev_meetup_1.jpg" data-wpel-link="internal"><img src="/wp-content/uploads/2015/09/dev_meetup_1-300x225.jpg" alt="Developer Meetup in Sapporoの紹介" width="300" height="225" class="alignright size-medium wp-image-17066" srcset="/wp-content/uploads/2015/09/dev_meetup_1-300x225.jpg 300w, /wp-content/uploads/2015/09/dev_meetup_1.jpg 640w, /wp-content/uploads/2015/09/dev_meetup_1-207x155.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<p>次のセッションは、TPAC2015の開催に合わせて札幌で開催される「Developer Meetup in Sapporo」の紹介です。登壇は、このイベントをホストするNTTコミュニケーションズの本間咲来（さっくる）氏。</p>

<p>TPAC2015は参加条件があるため、一般の開発者が参加するにはちょっとハードルが高いイベント。そこで、TPAC2015の為に来日する海外のエキスパートと日本のエンジニアの交流の場として、TPAC2015初日（10/26）に<a href="http://www.w3.org/Consortium/Hosts/Keio/meetup-sapporo" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">「Developer Meetup in Sapporo」</a>が開催されます。会場はW3Cと同じ会場。展示やトークセッション、懇親会が企画されていて通訳も用意されるそうです。まだ<a href="https://www.eventbrite.com/e/w3c-developer-meetup-in-sapporo-tickets-18509843440" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">参加登録</a>を受け付けているようなので、興味がある方は是非参加してみては？（参加は無料です）</p>

<p>また、イベント開催に合わせて、クリプトン・フューチャー・メディア株式会社主催の<a href="https://opendata.doorkeeper.jp/events/30873" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">北海道オープンデータハッカソン</a>が10/17に開催されました。ハッカソンの優秀者の作品はDevelopers Meetupで展示されるそうです。</p>

<div style="width:300px; float:left;">
<a href="https://html5experts.jp/wp-content/uploads/2015/09/dev_meetup_3.jpg" data-wpel-link="internal"><img src="/wp-content/uploads/2015/09/dev_meetup_3-300x225.jpg" alt="Developer Meetup in Sapporo" width="300" height="225" class="aligncenter size-medium wp-image-17075" srcset="/wp-content/uploads/2015/09/dev_meetup_3-300x225.jpg 300w, /wp-content/uploads/2015/09/dev_meetup_3.jpg 640w, /wp-content/uploads/2015/09/dev_meetup_3-207x155.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a>
</div>

<div style="width:300px; float:right;">
<a href="https://html5experts.jp/wp-content/uploads/2015/09/dev_meetup_4.jpg" data-wpel-link="internal"><img src="/wp-content/uploads/2015/09/dev_meetup_4-300x225.jpg" alt="アイディアソン・ハッカソン" width="300" height="225" class="alignright size-medium wp-image-17078" srcset="/wp-content/uploads/2015/09/dev_meetup_4-300x225.jpg 300w, /wp-content/uploads/2015/09/dev_meetup_4.jpg 640w, /wp-content/uploads/2015/09/dev_meetup_4-207x155.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a>
</div>

<div style="clear:both;">
</div>

<p>※写真はイベント開催時（8月末）のものです
<br></p>

<h2>Eddystoneで始まるPhysical Webの世界</h2>

<p>ここからは、ゲストスピーカーによる最新のWeb技術に関する、テクニカルセッションが続きます。</p>

<p>最初のセッションはリクルートテクノロジーズの加藤亮氏。加藤氏は<a href="https://html5experts.jp/shumpei-shiraishi/16263/" target="_blank" data-wpel-link="internal">以前当メディアで取材したPhysical Webのエキスパート</a>です。このセッションでは、Physical Webをテーマに、Googleが7月に発表したばかりの標準規格である、Eddystoneについて解説していただきました。
<a href="https://html5experts.jp/wp-content/uploads/2015/09/kato_san.jpg" data-wpel-link="internal"><img src="/wp-content/uploads/2015/09/kato_san-300x225.jpg" alt="加藤亮氏" width="300" height="225" class="alignright size-medium wp-image-17095" srcset="/wp-content/uploads/2015/09/kato_san-300x225.jpg 300w, /wp-content/uploads/2015/09/kato_san.jpg 640w, /wp-content/uploads/2015/09/kato_san-207x155.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<h4>Eddystoneとはなにか？</h4>

<p>EddystoneはGoogleが7月に発表したBeacon Platformを構成するもので、ビーコンの規格。ビーコンは、フレームと呼ばれるデータを定期的にブロードキャストするもので、この規格では、ビーコンデバイスの振る舞いや、発信するパケットのフォーマットを規定している。Googleはオープン・スタンダードを提唱している。</p>

<p>Eddystoneには3つのフレーム（Eddystone-TLM、Eddystone-UID、Eddystone-URL）がある。Eddystone-TLMは、ビーコンの管理情報を送信するもので、バッテリ電圧や温度、起動後の経過時間、パケット送信料などを送る。重要なのは、Eddystone-UIDとEddystone-URLの方。</p>

<h4>Eddystone-UID</h4>

<p>Eddystone-UIDは、NamespaceとInstanceIDと呼ばれる固有IDを送信します。ビーコン受信側では、Namespaceを見て自分のサービスのビーコンかどうかを判断し、InstanceIDを利用して複数のビーコンをまたがった移動などを検知することができる。iBeacon的な用途をカバーするする、洗練されたオープン・スタンダードな仕様だといえる。</p>

<h4>Eddystone-URL</h4>

<p>Eddystone-URLは、Physical WebのおけるURIBeaconのことであり、NamespaceとInstanceIDの代わりにURLを送信する。小さいパケットの中にURLを載せるための工夫がなされているほか、長いURLは短縮URLを使うといった配慮が必要。これは、いわゆるPhysical Webの世界を現実のモノにするためのモノで、実験フェーズから実践フェーズへの移行を象徴付ける存在である。</p>

<h4>Eddystone-URLはビーコンの新たなエコシステムを作る</h4>

<p>一番の醍醐味は近接通信をサービスに活用できること。Eddystone-URLを使えば、ビーコンからBluetooth Low Energy（以下、BLE）でURLをブロードキャストできる。近くにいるスマホは、複数のビーコンから受信したURLを元にOGPなどを収集、リスト表示してユーザに提示することができる。</p>

<p>URLが必ずしも必要かといえばそうではなく、UIDとURLの変換テーブルをもったスマホアプリを独自に作れば同じようなことができる。これは今までのBeacon（iBeaconやEddystone-UID）のエコシステムで、独自に設置したビーコンとそれ専用のスマホアプリを配布し使ってもらうというもので、開発費もかかり、ユーザにビーコン毎に別のスマホアプリを導入してもらう必要があり、ハードルが高かった。</p>

<p>Eddystone-URLを利用すれば、URLという共通のフォーマットでデータのやり取りができるため、スマホには標準準拠アプリ（例えばWebブラウザ）を1つ入れておけばよく、コンテンツ提供側はビーコンとWebコンテンツを用意すればよい。これは、標準規格の上で様々なコンテンツが充実したWebのエコシステムによく似ており、ビーコンにおける新たなエコシステムと言ってもいい。今後周辺ビジネス含めて新たな競争が生まれる可能性を秘めている。つまり、Eddystone-URLはただの機能的なイノベーションの話ではなく、プラットフォームとしての意味合いが強いと言える。</p>

<h4>すぐに使えるのか</h4>

<p>もともとPhysical Webと言われていたこの技術であるが、7月にGoogleがBeacon Platformを正式発表したことで、実験フェーズから実践フェーズに移行したといってもいい。Eddystone-URL対応ビーコンデバイスも出始めており、既存のiBeaconでもファームウェアのアップデートで対応できるものもある。（例：<a href="http://estimote.com/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Estimote</a>）</p>

<p>また、Beacon Platform発表のすぐ後にChrome（最新iOS）がPhysical Webに対応した。Physical Webの機能をONにすれば受信したURLをウィジェットにリストアップすることが可能で、もちろんEddystone-URLからの情報を受けることもできる。まだ実験的な対応であることは否めないが、普及に向けた第一歩であることは間違いない。尚、本命はGoogle Nowで活用したいのではないかと考える。キラーアプリの登場が普及の鍵を握っている。</p>

<h4>Web開発者が考えなければならないこと</h4>

<p>サービス提供側としては、ビーコンを活用する関係でリアル・ワールドを考慮したサービス設計（UI/UXデザイン）が必要になる。例えば、スマホは基本的にはインポケットデバイスである。ビーコンの情報を受信してもユーザがスマホを見てくれなければ意味がない。ユーザが自然にスマホを見るような環境に上手くビーコンを配置したり（バス停やレストラン等）、サイネージなどと組み合わせて、歩いているユーザを立ち止まらせるような仕掛けを合わせて考えなければならない。</p>

<h4>今後の展望</h4>

<p>近接通信を活用したPhysical Webの普及で、WebブラウザからIoTデバイスへのダイレクトアクセスという需要が出てくる可能性がある。今でもWebBluetoothやWebNFCの議論があるが、FirefoxOSなどのWebOSで使えるようにすることが主目的となっている。今後、近接通信を前提とするWebサービスを作りたいという要望が出てくれば、純粋なWebブラウザ上のWebアプリケーションからもこれらの機能が必要となってくる。そして、これらの機能が整備されると、ビーコンにかぎらず、他の様々なIoTデバイスや近接通信機器とのIFとなり得るため、デバイスが普及した暁には、Webの大きなアドバンテージになっているはずである。</p>

<h4>発表資料</h4>

<p>加藤氏の発表資料はこちらで公開されているので、ぜひご覧ください。</p>

<div class="aligncenter">
<iframe src="//www.slideshare.net/slideshow/embed_code/key/2VfFCFngpKNWti" width="595" height="485" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" allowfullscreen> </iframe> <div style="margin-bottom:5px"> <strong> <a href="https://html5experts.jp//www.slideshare.net/recruitcojp/eddystonephysical-web" title="Eddystoneで始まるPhysical Webの世界" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Eddystoneで始まるPhysical Webの世界</a> </strong> from <strong><a href="https://html5experts.jp//www.slideshare.net/recruitcojp" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Recruit Technologies</a></strong> </div></div>

<h3>終わりに＆次回予告</h3>

<p>次回は加藤氏に続く3人のゲストスピーカーによるセッションの模様をお伝えします。そして、来週からはじまるTPACでの熱い議論、参加される方は現地で、参加されない方もインターネット等を通して、ぜひウォッチしてみてください！新しい発見があるかもしれません。</p>
]]></content:encoded>
			</item>
		<item>
		<title>【HTML5 Experts.jp】2015年9月のブラウザ関連ニュース</title>
		<link>/myakura/17320/</link>
		<pubDate>Wed, 14 Oct 2015 04:00:39 +0000</pubDate>
		<dc:creator><![CDATA[矢倉 眞隆]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[ブラウザ]]></category>

		<guid isPermaLink="false">/?p=17320</guid>
		<description><![CDATA[連載： WEB標準化動向 (5)Chrome 45でES2015のArrow Functionsに対応 9月1日にChrome 45がリリースされました。 Chrome 45ではJavaScriptエンジンのV8が更新さ...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/webstandards-news/" class="series-156" title="WEB標準化動向" data-wpel-link="internal">WEB標準化動向</a> (5)</div><h2>Chrome 45でES2015のArrow Functionsに対応</h2>

<p>9月1日に<a href="http://googlechromereleases.blogspot.jp/2015/09/stable-channel-update.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Chrome 45がリリース</a>されました。</p>

<p>Chrome 45ではJavaScriptエンジンのV8が更新され、ECMAScript 2015のサポートが向上しました。新たにサポートされた機能には、関数の読みやすさ・書きやすさが上がるArrow Functionsがあります。同月リリースされたNode 4.0でもArrow Functionsが使えますし、これから見る機会が増えてくるかなと思います。</p>

<p>パフォーマンス改善点として、<a href="https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/KIoVljZw5fc" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">スクロール中のカーソル位置を更新しなくなった</a>というものがありました。スクロール中に<code>:hover</code>のスタイルやマウスイベントが反応すると、不必要な処理や描画が増えてしまうため、パフォーマンスが低下します。今回の変更で、IEやFirefoxとだいたい同様の挙動（スクロール停止100ms後にカーソル位置を更新）となったようです。<a href="https://bugs.webkit.org/show_bug.cgi?id=99940" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">WebKitも今年春に同様の変更を行った</a>ようなので、今後は<a href="http://www.html5rocks.com/en/tutorials/speed/unnecessary-paints/#toc-combination" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">スクロール中にスタイルを無効にし、タイマーを仕掛けスクロール後に再適用する</a>なんてことをしなくてもよくなりそうです。</p>

<h2>Alliance for Open Media設立</h2>

<p>9月1日にGoogle, Microsoft, Mozilla、ほか数社が、ロイヤリティフリーなビデオコーデックを推進するアライアンスの設立を発表しました。</p>

<ul>
<li><a href="http://www.mozilla.jp/blog/entry/10501/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ビデオの特許使用料をなくすためのアライアンスを結成しました | Mozilla Japan ブログ</a></li>
</ul>

<p>Webでのビデオコーデックというと、HTML5の<code>video</code>要素やWebRTCが求めるコーデックで激しい議論が行われた過去があります。映像・機器業界などが推し進めるコーデック（<code>video</code>, WebRTCともH.264）が特許使用料を求めるため、Webのオープン性との関わりから反対があるのです。</p>

<p>次世代コーデックとしてはHEVC（H.265）が出ていますが、新たなパテントプールHEVC Advanceがコンテンツ提供者からの使用料徴収を検討していることから、ストリーミング配信事業者から警戒されています。Alliance for Open MediaではCiscoのThor、MozillaとXiph.OrgのDaala、GoogleのVPシリーズといったビデオコーデックをはじめ、ロイヤリティフリーなフォーマットや音声コーデックを推進していくとしています。</p>

<h2>WOFF2の圧縮アルゴリズムBrotliをサーバにも</h2>

<p>Webフォントのフォーマット、WOFF2で採用された圧縮アルゴリズムBrotliを一般的なコンテンツの圧縮にも適用しようという動きが進んでいます。<a href="https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/xdVm8c2GOMQ/DsIZc8mhkPcJ" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Blink</a>, <a href="http://bitsup.blogspot.jp/2015/09/brotli-content-encoding-for-firefox-44.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Gecko</a>で実装が進められています。</p>

<ul>
<li><a href="http://google-opensource.blogspot.jp/2015/09/introducing-brotli-new-compression.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Introducing Brotli: a new compression algorithm for the internet &#8211; Google Open Source Blog</a></li>
</ul>

<p>WOFF 1.0ではDEFLATEアルゴリズムが採用されましたが、圧縮率の点では新しいフォーマットに劣ります。WOFF2では当初LZMAなど圧縮率の高いアルゴリズムを検討していたのですが、メモリの使用量が大きいことやLZMAの仕様が存在していないことなどから、代わりのアルゴリズムとしてGoogleが開発し、そして採用されたのがBrotliです。</p>

<ul>
<li><a href="http://myakura.hatenablog.com/entry/2014/02/05/022608" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">WOFF 2.0 Evaluation ReportとBrotli &#8211; fragmentary</a></li>
</ul>

<p>Content-Encodingでの利用によって、gzipよりもさらにbandwidthの削減を見込めます。プロキシソフトFiddlerの開発者Eric Lawrence氏が<a href="http://textslashplain.com/2015/09/10/brotli/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Brotliを試した</a>ところ、gzipに比べてCSSでは12％、JavaScriptでは9％の削減がみられたそうです。</p>

<p>FacebookやCloudFlareなども興味を示しており、今後の普及が期待されます。</p>

<h2>iOS 9のコンテンツブロッカーに賛否</h2>

<p>9月16日にiOS 9がリリースされました。iPhone 6sの機能も話題ですが、iOSの新機能、コンテンツブロッカーが話題となっています。</p>

<ul>
<li><a href="https://www.webkit.org/blog/3476/content-blockers-first-look/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Surfin&#8217; Safari &#8211; Blog Archive » Introduction to WebKit Content Blockers</a></li>
</ul>

<p>コンテンツブロッカーを使うアプリをインストールすると、Safariは広告とおぼしきリソースをダウンロード＆実行しなくなるため、表示時間やメモリ使用量が減るといった利点があります。反面、広告による収益が多くを占めるWebにおいて、こういったものが広まるのはWebに良い影響をもたらさないという反応もあり、なかなかに激しい議論が起こっています。</p>

<p>広告ブロックの是非はさておき、コンテンツブロッカーを使うアプリにはWebフォントをブロックするオプションも用意されていたりします。WebKitはWebフォントが読み込まれるまでテキストを表示しないため、回線速度やサーバーの性能、フォントファイルの容量によってはページを見られるまでに非常に時間がかかります。</p>

<p>コンテンツブロッカーがWebフォントをブロックできるようにしたのはそのためかと思われますが、ブロックされてしまうとアイコンフォントが読み込まれなくなります。リガチャを利用したアイコンフォントであればテキストが読めるかと思いますが、Private Use Area上のコードポイントにアイコンを設定しているフォントは問題になるでしょう。最近は<a href="https://24ways.org/2014/an-overview-of-svg-sprite-creation-techniques/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">SVGでのアイコンスプライト</a>が流行っている感じがするので、アイコンフォントに問題を感じる方は試してみてはいかがでしょう。</p>

<h2>Firefox 41でCSSの縦書きが可能に</h2>

<p>9月22日にFirefox 41がリリースされました。</p>

<ul>
<li><a href="http://www.mozilla.jp/firefox/41.0/releasenotes/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Firefox 41リリースノート</a></li>
</ul>

<p>今回のリリースでは、<a href="http://drafts.csswg.org/css-writing-modes/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">CSS Writing Modes</a>の基礎部分に対応しました。<a href="https://developer.mozilla.org/ja/docs/Web/CSS/writing-mode" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><code>writing-mode</code>プロパティ</a>や<a href="https://developer.mozilla.org/ja/docs/Web/CSS/text-orientation" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><code>text-orientation</code>プロパティ</a>が使えるようになったので、基礎的な縦書きが実現できます。</p>

<p>またFirefox 41では、<code>Document.execCommand('cut')</code>と<code>Document.execCommand('copy')</code>がサポートされました。Webアプリなどでクリップボードにコピーさせたい場合、これまではFlashを使う方法が使われてきましたが、それをJavaScriptで実現できます。Chromeも春頃に対応したので結構使えそうですね。</p>

<ul>
<li><a href="https://hacks.mozilla.org/2015/09/flash-free-clipboard-for-the-web/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Flash-Free Clipboard for the Web — Mozilla Hacks</a></li>
<li><a href="https://developers.google.com/web/updates/2015/04/cut-and-copy-commands" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Cut and Copy Commands — Google Web Updates</a></li>
</ul>

<p>開発者ツールには、選択したノードのスクリーンショットを撮るコンテキストメニューが追加されました。これまでも<a href="https://developer.mozilla.org/ja/docs/Tools/GCLI" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">開発ツールバー</a>からコマンドを打てば特定のノードのスクリーンショットを撮れたのですが、CSSセレクタを調べなければならず面倒でした。今回右クリックというUIがついてかなり使いやすくなりました。</p>

<div id="attachment_17324" style="width: 650px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2015/10/FirefoxDevToolsScreenshotNode-640x346.png" alt="Firefox開発者ツールのインスペクトパネルのスクリーンショット" width="640" height="346" class="size-large wp-image-17324" srcset="/wp-content/uploads/2015/10/FirefoxDevToolsScreenshotNode.png 640w, /wp-content/uploads/2015/10/FirefoxDevToolsScreenshotNode-300x162.png 300w, /wp-content/uploads/2015/10/FirefoxDevToolsScreenshotNode-207x112.png 207w" sizes="(max-width: 640px) 100vw, 640px" /><p class="wp-caption-text">ノードを選び右クリックメニューにある”Screenshot Node”を選ぶだけ</p></div>
]]></content:encoded>
		
		<series:name><![CDATA[WEB標準化動向]]></series:name>
	</item>
		<item>
		<title>Webのメモリアルイヤー！W3C20 ANNIVERSARY SYMPOSIUM ライブレポート(1/2)</title>
		<link>/komasshu/11213/</link>
		<pubDate>Wed, 29 Oct 2014 21:41:46 +0000</pubDate>
		<dc:creator><![CDATA[小松 健作]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">/?p=11213</guid>
		<description><![CDATA[連載： イベントレポート (26) 今年は、Webのメモリアルイヤー。Web生誕25周年、W3C設立20周年、そして昨日アナウンスされたようにHTML5の勧告化が完了した年です。このようなメモリアルイヤーを記念し、本日（...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (26)</div><p>
今年は、Webのメモリアルイヤー。Web生誕25周年、W3C設立20周年、そして昨日<a href="https://html5experts.jp//www.w3.org/2014/10/html5-rec.html.ja" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">アナウンスされたように</a>HTML5の勧告化が完了した年です。このようなメモリアルイヤーを記念し、本日（10/29）PM3時～6時（現地時間）、シリコンバレーのサンタクララマリオットホテルにて<a href="https://html5experts.jp//www.w3.org/20/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">W3C20 Anniversary Symposium</a>が開催されます。本稿では、その模様を現地よりライブレポーティングします。<br>

<img src="https://lh3.googleusercontent.com/-8ed9fAldjLk/VFFTtYpQGaI/AAAAAAAAD1c/hTgMWZm7IIo/w506-h750/5F6A3815-97B1-4CAB-A90F-FDF5D4469770.JPG" alt="w3c20logo">
</p>

<p>
<i>
※このレポートは、<a href="https://html5experts.jp/komasshu/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">小松 健作</a>, <a href="https://html5experts.jp/alan-iida/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">飯田 アレン真人, <a href="https://html5experts.jp/sakkuru/">本間 咲来</a>の3名で共同作成しました。
</i>
</p>

<h2>Welcome and Introductions</h2>

<h3>Jeff Jaffe, W3C CEO</h3>

<p>
イベント開始は、W3CのCEOを務める Jeff氏よりウェルカムトーク。<br>
W3Cの役割は、webのポテンシャルを広げること。webの素晴らしさ、広がりは今さら言うまでもない。Webはデバイスまで広がり、そのポテンシャルは広がる一方であることを述べました。<br>
<img src="//lh6.googleusercontent.com/-TRXlF0UIgCg/VFFkTATw0rI/AAAAAAAAD2c/ui1MwLEjYZs/w506-h750/0E25F251-7808-428D-A83C-FE56B8C7176D.JPG”"><br>

</p>

<h2>招待講演</h2>

<h3>Vint Cerf &#8211; A Long Term View of the World Wide Web</h3>

<p>
最初の招待講演は、TCP/IPの発明者 Vint Cert氏。WWWへの長期的な観点について述べられました。<br>
Internetの最初のドキュメントが公開されたのは40年前。それから現在にいたるまで多くのことが変わりました。そして、我々のコミュニケーション手段のほとんどは、インターネットで行われるようになりました。<br>
様々なメディアが現れ、消滅していきました。floppy disk, CDメディア。いずれなくなるでしょう。長きに続くメディアが必要です。優れた設計が施されたソフトウェア。更なるプライバシーの保護も重要でしょう。<br>
<img src="//lh5.googleusercontent.com/-1BoGeg4cGX8/VFFlJXZ6HvI/AAAAAAAAD2w/SlqKCgwzY9Y/w506-h750/94046B4A-D3B2-4AF6-92AA-1FF7F1A45EA2.JPG”">
</p>

<h3>David-Michel Davies &#8211; Forging the Big and Beautiful Web</h3>

<p>
1990年代のWebサイトは、ほんとにひどいものでしたが、最終的には彼らがWebを前進させてくれました。感謝しなければいけません。<br>
フランスには、ストリートアートを飾るビルディングがありますが、それらが陳腐化するのを防ぐため、WebGLでオンライン公開することにしました。<br>
<img src="https://lh6.googleusercontent.com/-sRzg4gjqo3I/VFFn5DcM6xI/AAAAAAAAD3Y/wQ1GF0yx6-o/w506-h750/DE436EB4-D802-4E7B-91AD-239865C9FFA7.JPG"><br>
優れたインターフェースは、人々が伝えたいことの価値を高めます。ビデオやインタラクティブにより、スクロールするだけでストーリーを語ってくれます。<br>
人々は、様々なルールを壊してきました。大きな会社がルールを壊し始めた時、AdobeはFlashの提供を開始しました。Flashでサイトを作るのはどうかという考えもありますが、FlashはWebを大きく前進させました。ルールを壊すことで、前進が生まれるのです。
</p>

<h3>Anders Wahlquist &#8211; Stories Empower, and We Power Stories</h3>

<p>
<br>
Webの表現力は、格段に上がりました。1999年のWebは制限が強く、クリエイティブなものを提供することはできませんでした。2008年には、Flashでホラーゲームを作れるようになり、iPhoneの登場で、その役割はHTML5へと移されていきました。また現実世界とWebとの繋がりも始まりました。例えばロボットを動かすとか。<br>
ムービーを作るために、参加者がそれを手伝うことができるようになりました。コンテンツをpushするほど、良いストーリーが作られていきます。<br>
10年前にできなかったことが、今ではWebでできるようになりました。クリエイティビティの美しさは、技術の進化と共に変わっていきます。良いストーリー、優れたデザインには常にニーズがあり、テクノロジーはそれを支え続けるのです。<br>
<img src="https://lh4.googleusercontent.com/-Lmc1rJrbAGc/VFFsIfPVkDI/AAAAAAAAD6o/1ll1k6rudW4/w506-h750/57694ACB-ADE1-48CF-B578-F66FC4871058.JPG">
</p>

<h3>Di-Ann Eisnor &#8211; Solving Problems Together: Beyond Crowdsourcing toward Mass Participation</h3>

<p>
クラウドソーシングについて。多くの人が少しのコントリビュートを行うことで大きなことをできるようになりました。Wikipediaやmapなど。<br>
スケールは大きく広がり、2billionのスマートフォンが、様々なデータを収集し、それらをオープンに共有することができるようになりました。<br>
オンラインゲームで10日で得られるデータは、科学者が15年間探し続けてきたもの。50ミリオンのドライバーが地図の作成にコントリビュートし、トップコントリビューターはチームに入ることができます。<br>
ハリケーンサンディの時も、人々の10,000に上るレスポンスから、ガスステーション情報の入手などの問題が解決されました。<br>
各都市の自動車問題も、クラウドソーシングにより解決されていくでしょう。
<img src="https://lh4.googleusercontent.com/-gOAbC-lvHn0/VFFwbnL0zjI/AAAAAAAAD8Q/qD7GbKzIOcA/w506-h750/5DEA85C4-8FB4-4E89-9AD4-30946710215F.JPG">
</p>

<h3>Moh Haghighat &#8211; Bringing the Full Power of Modern Hardware to the Open Web Platform</h3>

<p>
JavaScriptは、本当に高速化されました。ここ数年で数百倍のパフォーマンスを示すようになり、ネイティブアプリとの違いも1.5倍程度の処理時間と、かなり接近してきました。CPUはマルチスレッド化が進んでいます。アプリケーションは並列処理に最適化されるべきです。レンダリングの33%は並列化されるようになりましたが、残りはまだ最適化の余地があります。SIMD &#8211; single instruction, multiple data。Javascriptに組み込むことでより高速化が促進されます。9-18fpsがSIMDを使うことで、30fps以上になるというデータも。Web Workerを使うことで100fps以上も可能です。<br>
3Dカメラを使うことで、遠くのオブジェクトをフィルターし、最適化された映像処理を行うことも可能になります。<br>
コンピュータ演算コストの高い、エッジ抽出を用いたモーション検出も可能に。モーション検出を用いたゲームも楽しむことができるようになりました。<br>
Webは、今もっとも広範なクロスプラットフォームです。さらに、ユビキタスアプリケーションのプラットフォームになっていくことでしょう。
<br>
<img src="https://lh4.googleusercontent.com/-Vn4sYIrjYrE/VFFztDVenZI/AAAAAAAAD9s/I1GH-v9MJTc/w506-h750/FF166571-88E5-4F2C-8A3F-77C095379EAC.JPG">
</p>

<h3>Alex &#8216;Sandy&#8217; Pentland &#8211; Toward A Sustainable Digital Ecology</h3>

<p>
10年前に、最初のスマートフォンを用い地図上で、人々がどこに行くのか、どのレストランに行くのかをビジュアライズしました。データから、どのような生活をしているかがわかります。これは良いことですが、人々に恐れを感じさせました。政府は、それをハッピーと感じ、人々はそれから安心を得て、企業は収益を得る必要があります。<br>
人々は、データをコントロールできなければいけません。削除可能でなくてはなりません。この機能がないと、経済は回りません。<br>
これらのディスカッションを通し、私はp2pを活用した信頼されたネットワークというアイディアを思いつきました。クラッキングされることのない、信頼された。openPDSは認証からパスワードをなくします。&#8221;are you in california?&#8221;といったYes/No質問に答えることで。<br>
データを集中せず、分散させることで、クラッキングの脅威を低減します。<br>
データの分散を制御できるようになることで、子供の社会生活を向上することができます。プライベートデータは匿名化されることで共有可能となります。信頼されたネットワークを使うことで。<br>
<img src="https://lh6.googleusercontent.com/-rdb6O6I3Ruw/VFF3X3Fh8jI/AAAAAAAAEAM/B-a4fyN8ri8/w506-h750/CE0B4793-B446-485F-8605-CFCDB77F1DC6.JPG">
</p>

<h3>Commissioner Jessica Rosenworcel &#8211; Access for All</h3>

<p>
TEDのトークで、ティム・バーナーズ=リーより、Webのためにmagna cartaを作って欲しいと頼まれました。目の不自由な方が参加できるように、壁を壊さなければなりません。数週間前にスティービー・ワンダーが私を訪れました。スティービー・ワンダーは伝説的なミュージシャンというだけではなく、目の不自由な方への伝道師です。ビデオキャプションを作るためのガイドラインに関する法律を策定しました。<br>
最大の問題は、文章を読めないこと。なので、OCRと音声合成機を用いています。彼のオフィスのスキャナーには全てOCR機能が実装されています。<br>
ウェアブル、バーチャル・リアリティ、無人カー。グローバルスケールで、これらの技術がもたらすものについて考えなければいけません。165の国々でシンポジウムを開催しました。これはとても成功し、他国は興味を示しました。こういった活動を続ける必要があります。そして、数年後にはソリューションが得られるはずです。<br>
<img src="https://lh3.googleusercontent.com/-xBqPDbLgXU4/VFF7QQjEXeI/AAAAAAAAEA4/eNF0oHceC4o/w506-h750/C03541CA-7A44-483E-A99A-C62DA8ED4FD2.JPG">
</p>

<h2>Panel and Discussion: “The Future of the Web and How it is Run”</h2>

<ul>
<li>Lee Rainie (Moderator)</li>
<li>Fadi Chehadé</li>
<li>Jun Murai</li>
<li>Darren Walker</li>
</ul>

<p>
<img src="https://lh3.googleusercontent.com/-VXqMAKhhu14/VFF-T_NavxI/AAAAAAAAEBM/GV1S6nwrTOk/w506-h750/EB53620C-C140-46B5-A32C-87117624DD3B.JPG">
</p>

<dl>
<p>
&#8212;
</p>
<p>
<dt>Lee</dt>

<dd>
アメリカで、「Webは何を成し遂げたか？」というアンケートを取りました。生活の向上が 90%, 社会性の向上が 75%でした。<br>
発展途上国へのインターネット普及は、更なる社会性をもたらしました。このようなチャレンジと変革のタイミングにおいて、どのようにそれを政治的に行っていくべきでしょうか？
</dd>
<img src="https://lh6.googleusercontent.com/-BlLjVl3SHAg/VFGBGIIcojI/AAAAAAAAEB8/HlqccV6asWU/w506-h750/EE964904-91C6-4637-9B9A-58B2E08E157C.JPG"><br>
<b>Lee Rainie (Moderator)</b><br>
</p>

<p>
<dt>Fadi</dt>
<dd>
21世紀の政治システムは Web により様々なチャレンジが行われています。Web はパワフルで、我々はそれをコントロールしようとしています。もし我々が人々のパワーとWebによる拡散性を政府に認識させることを怠ったら、様々な問題が起こるでしょう。<br>
もし、我々が価値を保ちつつそこに参加していく方法を見つけることができれば、素晴らしいWebを実現できることでしょう。<br>
来年の<a href="http://en.wikipedia.org/wiki/United_Nations_General_Assembly" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">The General Asssembly of UN</a>では、コミュニケーションにフォーカスを置きます。<br>
Webは人々の団結にとって最も重要な情報源として作用しています。我々は、挑戦を続けています。政府の役割を見つけるために。<br>
さもないと、彼らは彼らの方針と司法権を行使してくるでしょう、万人共通となったときに。
</dd>
<img src="https://lh4.googleusercontent.com/-FDKeM-bI44I/VFF-mvl4WSI/AAAAAAAAEBU/7GB-Wtm_HeQ/w506-h750/E8E684F4-59C9-4471-9393-D4B5D6A00F6F.JPG"><br><b>Fadi Chehadé</b><br>
</p>

<p>
<dt>Murai</dt>
<dd>
この部屋の殆どの人はアメリカや日本などからインターネットがすでに普及している国々から来ていますが、グローバルスペース（発展途上国）へのインターネット普及を助ける責任をもっています。<br>
グローバルスペースと、インターナショナルスペースの違いはなんでしょう？インターネットは最初にグローバルスペースを作った技術です。インターナショナルスペースで無く。
</dd>
<img src="https://lh4.googleusercontent.com/-8Ngksw0k1hU/VFF_iCZKmvI/AAAAAAAAEBg/ftquveqbX4w/w506-h750/ED0D0A66-3DB9-4D12-9DA1-EAF6D81F143C.JPG"><br><b>Jun Murai</b><br>
</p>

<p>
<dt>Darren
<dd>
私は理想郷と暗黒卿の間で、このような会話を見つけました。私からのクエスチョンは、民主化への人々の動員です。来年のUNで、我々は人々の動員についてのディスカッションを行うために何を考えなければいけないでしょうか？<br>
市民権と人権をケアする人々はどこにいるのか？
</dd>
<img src="https://lh4.googleusercontent.com/-n-DQXpigSkA/VFGAdyZP4hI/AAAAAAAAEBs/oPH8_QGPP-g/w506-h750/B9BAA716-7A4E-46DB-B93B-004429717243.JPG"><br><b>Darren Walker</b><br>
</p>

<p>&#8212;</p>

<p>
<dt>Lee</dt>
<dd>
我々は、30ヶ国でインターネットの検閲について尋ねてきました。パキスタンだけが 100% のオープンインターネットを望みました。ほとんどの南アメリカの国々は 75% 程度でした。<br>
インターネットの脅威と、コミュニティはいかにそれを解決しうるかをお話しいただけますでしょうか？
</dd>
</p>

<p>
<dt>Fadi</dt>
<dd>
インターネットのフラグメンテーション。現在部分的なフラグメンテーションは増加傾向にあり、人々の考えが伝えられていく流れを止めてしまいます。インターネット上での摩擦が多い国々はGDPが減少しており、人々の団結と経済に影響を与えています。<br>
摩擦はISPによって起こります。かれらはコンスタントに攻撃を受け、会社は彼らの壁に囲まれたインターネットを作りたがります。我々は、法的に技術的に摩擦を削減する努力を行う必要があります。どこに摩擦が生じ、誰が責任者かを見つけ、それらと戦う必要が有ります。
</dd>
</p>

<p>
<dt>Murai</dt>
<dd>
フラグメンテーションは、最大の脅威です。別の脅威は透明性が無くなること。何度も人々は「インターネットは危険だ」と言い、切断すべきと言ってきました。
</dd>
</p>

<p>
<dt>Darren</dt>
<dd>
ポリシーと政治。我々は、最終的に人々に影響をおよぼす、これらの問題を解決する可能性を持つ構造を保有していません。科学者は課題と認識していますが、人々は、どこでこの議論をしているのか
</dd>
</p>

<p>&#8212;</p>

<p>
<dt>
Lee
</dt>
<dd>
人々はテクノロジーに精通していません。教育が語れることで、何が最も欠けているでしょう？
</dd>
</p>

<p>
<dt>
Murai
</dt>
<dd>
データを欲している人が誰なのかに関する誤解です。それは誰のデータなのか？所有しているのは、個人、建物、会社どれなのか。個々の産業は現在インターネットの上に存在しています。
</dd>
</p>

<p>&#8212;</p>

<p>
<dt>
Lee
</dt>
<dd>
人々からの期待に対し、何が最もフラストレーションを覚えますか？また、ICANで行いたい役割は何ですか？
</dd>
</p>

<p>
<dt>
Fadi
</dt>
<dd>
最も大きなフラストレーションは、ICANNがインターネットを運営していると人々が考えていることです。ICANNはとても目立つ存在です。故に、注目をあげ、収入を得ています。しかし、役割は制限されています。
</dd>
<dd>
他のフラストレーションは、インターネットを管轄するには、トップダウンモデルを取るしか無いと、人々が考えていることです。それは、インターネットが動いている仕組みに反抗します。<br>
我々は、ガバナンスの他心性の上で仕事を進めています。たとえ、フランス政府がトップダウンレベルが必要であると考えたとしても。
</dd>
</p>

<p>&#8212;</p>

<p>
<dt>
Lee
</dt>
<dd>
人々が抱えている問題を気づかせるために、どのようにしたら良いと考えていますか？
</dd>
</p>

<p>
<dt>
Darren
</dt>
<dd>
指導は年間10億ドルの価値を、政策と戦い、民主化を推し進めることに与えられるでしょう。しかし、彼らは数十年に渡り、古い方法論を用いています。なぜなら、テクノロジーは彼らにとって脅威だからです。草の根運動の巨大なパワーは存在しますが、まだ未開発です。
</dd>
</p>

<p>&#8212;</p>

<p>
<dt>会場より質問</dt>
<dd>
マグナ・カルタなどは数百年以前のものですが、再度考慮する必要が有ります。インターネットは、境界で分割されていない共有の空間を作り上げました。
<dd>
</p>
<p>
<dt>
回答
</dt>
<dd>
2つのスタンスがあります：「政策立案者と協調的な関係を結ぶこと」と「政府が、保守的な体制をとること」です。テクノロジーによって、我々は政府を助ける必要があります。政府は敵ではありません。
</dd>
</p>

<p>&#8212;</p>

<p>
<dt>会場より質問</dt>
<dd>
我々は、インターネットを結合させるためにDNSに依存しています。しかし、それは毎年満了します。単一障害点となるのを防ぐために、より強化する必要があるのではないでしょうか？毎年お金を払うべきではないと考えます。
</dd>
</p>
<p>
<dt>回答(Lee)</dt>
<dd>
我々は、それの周辺で動いている金銭額がいくらになるのかを心配しています。最近のトップレベルドメインのオークションでは30ミリオンダラーを超えました。
</dd>
</p>

<p>&#8212;</p>

<p>
<dt>会場より質問</dt>
<dd>
トップレベルドメインの新しいコミュニティにより何がもたらされるとお考えですか？
</dd>
</p>
<p>
<dt>回答（Fadi）</dt>
<dd>
新しいトップレベルドメインには価値が芽生えるでしょう。ガバナンスへの影響として。アマゾンは、.amazon ドメインを買おうとしましたが、アマゾンの人々から嫌われました。.gay ドメインを欲する人は、全てのコミュニティにそれをさらけ出すことになります。
</dd>
</p>

<p>&#8212;</p>

<p>
<dt>会場より質問</dt>
<dd>
政府は、国家的な力を欲し、通常はそれはOKです。私は、データを何に使うかに関するコミュニティにいます。UNに行く前の文書では、それは公共のものであるべきと述べています。おそらく、我々はそれを基に進めていきます。
</dd>
</p>
<p>
<dt>回答（Murai）</dt>
<dd>
世界経済を考えた時、それはグローバルの課題です。インターネット上の個人を考えた時、既にグローバルです。ほとんどの国々は、世界中にマーケットを広げることで彼らの経済をのばそうとします。
</dd>
</p>

<p>
<dt>回答(Fadi)</dt>
<dd>
革命は、課題を帰着点で解決するためのプロセスです。これを進める際、2つの先導者がいます。一つは、世界のトッププレイヤーたち。彼らは通常、意思決定者としては参加しないことが重要です。これは良いことです。なぜなら、我々は彼らに従事することを望み、彼らは我々が Web に何を望んでいるかを聴くことができます。それ以外のサークルからは聴くことができない。もう一つの先導者は、物事をどう進めるかを決める人たち。技術面からではなく、政治家や法律家の視点より。現在我々は、これまでには見られなかったことですが、革命をボトムアップですすめている。
</dd>
</p>
</dl>

<p><br></p>

<h4>関連レポート</h4>

<ul>
<li><a href="https://html5experts.jp/komasshu/11258/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">ティムのクロージングトークが素晴らしい！「W3C20 ANNIVERSARY SYMPOSIUM」ライブレポート(2/2)</a>
</p></li>
</ul>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>CSSWG Seoul F2Fレポート──2014年5月のWeb標準化動向</title>
		<link>/myakura/7038/</link>
		<pubDate>Tue, 03 Jun 2014 00:00:41 +0000</pubDate>
		<dc:creator><![CDATA[矢倉 眞隆]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">/?p=7038</guid>
		<description><![CDATA[連載： WEB標準化動向 (4)5月19日から5月21日の3日間、韓国でCSS Working GroupのFace to Face meetingが行われ、そちらにオブザーバーとして参加してきました。議題に上がったもの...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/webstandards-news/" class="series-156" title="WEB標準化動向" data-wpel-link="internal">WEB標準化動向</a> (4)</div><p>5月19日から5月21日の3日間、韓国でCSS Working GroupのFace to Face meetingが行われ、そちらにオブザーバーとして参加してきました。議題に上がったものから、いくつか取り上げてお届けします。</p>

<h2><code>calc()</code> のクセ、そのままに</h2>

<p><a href="http://dev.w3.org/csswg/css-values" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">CSS Values &amp; Unitsモジュール</a>には <a href="http://dev.w3.org/csswg/css-values/#calc-notation" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><code>calc()</code> 記法</a> という機能があります。記法内で四則演算ができるほか、「左右のボーダー計10pxを除きあとは100％の幅」など単位の混在も可能です。</p>

<p></p><pre class="crayon-plain-tag">img {
  width: calc(100% - 10px)
}</pre><p></p>

<p>ただ <code>calc()</code> については少しややこしいルールがあります。<code>+</code> と <code>-</code> を使う場合、その記号前後に空白を入れないといけないのです。これが制作者にとって紛らわしいということで、文法を調整しないかという提案がでました。しかしながらベンダー接頭辞や <code>attr()</code> など、他の関数表記を組み合わせた際の処理が複雑になることが懸念され、変更されないことになりました。</p>

<h2><code>image()</code> が簡略化、複数の画像はおあずけ</h2>

<p><a href="http://dev.w3.org/csswg/css-images/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">CSS Image Valuesモジュール</a>には <a href="http://www.w3.org/TR/2012/CR-css3-images-20120417/#image-notation" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><code>image()</code></a> という機能があります。中に複数の画像を指定可能で、対応されているものをブラウザに選ばせるものです。</p>

<p></p><pre class="crayon-plain-tag">#cosmetic {
  background-image: image( url(&quot;photo.webp&quot;), url(&quot;photo.jpg&quot;) ) ;
  ...
}</pre><p></p>

<p>また、画像がない際のフォールバックとして色を指定できます。これを応用すれば、色を画像化して背景画像として利用できたりもします。</p>

<p></p><pre class="crayon-plain-tag">#overlay {
  background-image:
    image(rgba(255, 255, 255, .5)),
    url(&quot;photo.jpg&quot;) ;
  ...
}</pre><p></p>

<p><code>image()</code> が提案された後に、Appleが提案したものが元になった <a href="http://dev.w3.org/csswg/css-images/#image-set-notation" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><code>image-set()</code></a> が追加されました。デバイスのピクセル密度比に応じて画像を選択させる仕組みです。</p>

<p>これと <code>image()</code> の相性がよくないことが問題となりました。<code>image()</code> は中に指定した画像を「順に」選ぶのに対し、<code>image-set()</code> は指定された画像を「並列に」扱い最適なものを選びます。「フォールバック」といっても仕組みが違うため、2つを組み合わせた際にうまく動きません。</p>

<p>決定として、<code>image()</code> 単に画像から色にフォールバックするための仕組みに機能が省略されました。画像形式をふまえたフォールバックの仕組みはLevel 4以降で独立した仕組み（<code>fallback()</code> が案として出ていました）を検討するとのことです。</p>

<h2>Font LoadingがLast Callに</h2>

<p><a href="http://dev.w3.org/csswg/css-font-loading/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Font Loadingモジュール</a>では、Webフォントを読み込んだかどうかを取得するAPIが定義されています。</p>

<p></p><pre class="crayon-plain-tag">// FontFaceを定義
var hxjp = new FontFace('hxjp', 'url(&quot;http://example.com/hxjp.woff&quot;)');

// フォントを読み込み、完了したらh1に適用
hxjp.load().then(function (font) {
  document.fonts.add(font);
  document.querySelector('h1').style.fontFamily = 'hxjp';
});</pre><p></p>

<p>今回のミーティングではAPIが依存するECMAScript 6のPromisesの状況がどうなっているかといった軽い確認のみされ、Last Callとすることが決まりました。F2Fの終了翌日の22日に、<a href="http://www.w3.org/TR/2014/WD-css-font-loading-3-20140522/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Last Call Working Draft</a>が公開されています。</p>

<h2>Media QueriesのオブジェクトがEventTargetに</h2>

<p><a href="http://dev.w3.org/csswg/cssom-view/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">CSSOM View</a>では <a href="https://developer.mozilla.org/docs/Web/API/Window.matchMedia" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><code>window.matchMedia()</code></a> という関数で、指定したメディアクエリーにマッチするかを調べられます。</p>

<p></p><pre class="crayon-plain-tag">var mql = window.matchMedia('(screen and max-width: 360px)');
if (mql.matches) { console.log('せまいです。') }</pre><p></p>

<p><code>window.matchMedia()</code> は <code>MediaQueryList</code> オブジェクトを返しますが、これにイベントリスナーも設定できます。</p>

<p></p><pre class="crayon-plain-tag">var mql = window.matchMedia('(screen and max-width: 360px)');
mql.addListener(function (mqlist) {
  // mqlist.matches とか使ってマッチした際の処理を書いたり
});</pre><p></p>

<p>これが普通のイベントとどう違うのという疑問が出され、<code>MediaQueryList</code> が <code>EventTarget</code> インターフェースを継承することが決まりました。これで <code>addEventListener</code> でリスナーを設定できます。またシンプルに書けるよう、<code>onchange</code> ハンドラも定義されます。</p>

<h2>Shadow DOM関連セレクタの名前がいろいろ変更</h2>

<p><a href="http://dev.w3.org/csswg/css-scoping/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Scopingモジュール</a>は、HTMLのScoped StylesheetsやShadow DOMなど、スタイルシートの適用範囲が限定される機能について、その仕組みを定義するモジュールです。</p>

<p>今回のF2Fでは、Shadow DOM関連のセレクタがいくつか変更されました。プロジェクトされた後のDOMツリーを選択するセレクタはこれまで <code>::distributed</code>、<code>::content</code> でしたが、一般的すぎることから変更の提案がありました。案としては <code>::projected</code>、<code>::light-content</code>が上がっています。これらを制作者に尋ね、最終的な名前を決定するそうです。</p>

<p>また、複数のShadow Rootをまたいだツリーを選択したい際に、/deep/ というセレクタが使われるのですが、このエイリアスとして &gt;&gt;&gt; というものが定義されました。さらに、これまで空白で表されていた子孫セレクタとの一貫性を鑑み &gt;&gt; を子孫セレクタのエイリアスとすることも決まりました。</p>

<h2>CSSOM Viewのsubpixel precision</h2>

<p>CSSOM/CSSOM Viewの現状共有のセッションがありましたが、気になったのがSubpixel precisionです。これまでintを返していたものをdoubleにすることにより、アニメーションなどがスムーズになるといった効果が期待されています。最近ではWebKitで作業が進められ、ナイトリービルドで有効にされています。</p>

<p>しかし、過去にMozillaが有効にしたところ、後方互換性を崩してしまったという報告がありました。Subpixel precisionが有効になる場合は返り値が小数となるため、整数を期待していたこれまでのコードに影響があったそうです。Internet ExplorerでもIE9時代に同様の事が起こったため一部のプロパティを除き無効にされ、オプトインで有効にする仕組みにしたそうです。</p>

<p>議論では、既存のAPIに手を入れるよりは新しいボックス関連のAPIを定義した方がいいのではという意見もありました。</p>

<h2>イニシャルキャップスのプロパティ</h2>

<p><code>::first-letter</code> 擬似クラスを使い、イニシャルキャップス（ドロップキャップス）を実現するテクニックがあります。しかしベースラインやcap-heightが揃わないといった問題があります。</p>

<div id="attachment_7147" style="width: 310px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/05/Dropcap-E-acute-3line-300x100.png" width="300" height="100" class="size-medium wp-image-7147" srcset="/wp-content/uploads/2014/05/Dropcap-E-acute-3line-300x100.png 300w, /wp-content/uploads/2014/05/Dropcap-E-acute-3line-1024x342.png 1024w, /wp-content/uploads/2014/05/Dropcap-E-acute-3line-207x68.png 207w, /wp-content/uploads/2014/05/Dropcap-E-acute-3line.png 640w" sizes="(max-width: 300px) 100vw, 300px" /><p class="wp-caption-text">適切なドロップキャップの例。「É」のベースラインと3行目のベースライン、そしてcap-heightと1行目のcap-heightが揃っている</p></div>

<p>適切なイニシャルキャップスをCSSに設けられないかという議論があり、<a href="http://dev.w3.org/csswg/css-inline/#sizing-drop-initials" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><code>initial-letter</code> というプロパティ</a> がCSS Inlineに追加されました。<code>initial-letter: 3 3</code> とすると、3行分の高さのドロップキャップスが、3行分落ちることになります。<code>3 2</code> とすると3行分の高さですが2行しか落ちないため、頭がすこし出ちゃいます。</p>

<p>Latin言語圏以外のケースはどうなのだろうという議論が早速出ており、ちょうど帰りの飛行機の機内誌にドロップキャップスを使った例があったので<a href="http://lists.w3.org/Archives/Public/www-style/2014May/0364.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">コメント</a>してみたりしました。</p>

<h2>論理プロパティが追加</h2>

<p>LTR/RTL混在環境などでUIをつくるとき、<code>margin-left</code> や<code>margin-top</code> などのプロパティを使うと面倒です。また、Writing Modesなどでも面倒になるでしょう。</p>

<p>こうした「物理的」なプロパティではなく、direction/writing modeに沿って適切に変化する「論理的」なプロパティがあると都合がよいです。ブラウザではすでに <code>margin-start</code> といった論理プロパティを接頭辞付きで実装しており、UAスタイルシートなどで利用しています。</p>

<p>こうした背景もあり、論理プロパティは数年前にCSS WGのF2Fで話題に上がりましたが、<code>border-*-top</code> など物理プロパティがたくさんあり、それらに対し論理プロパティを再定義することなどに懸念が表明され、仕様に盛り込まれるのは見送られました。しかし、それ以降一部の論理プロパティが実装されたことから、仕様として盛り込まれることが決まりました。</p>

<hr>

<p>ほかにもGrid LayoutのSubgridやFlexbox進捗、Footnoteのマークアップなど様々なトピックが話されています。そのうちまとめもCSS WGのブログに公開されると思います。</p>
]]></content:encoded>
		
		<series:name><![CDATA[WEB標準化動向]]></series:name>
	</item>
	</channel>
</rss>
