<?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>イベント &#8211; HTML5Experts.jp</title>
	<atom:link href="/tag/イベント/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>HTML5ハイブリッドアプリの濃いネタ満載！第1回Cordova勉強会まとめ</title>
		<link>/masahiro/11351/</link>
		<pubDate>Mon, 17 Nov 2014 00:00:52 +0000</pubDate>
		<dc:creator><![CDATA[田中 正裕]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[Cordova]]></category>
		<category><![CDATA[イベント]]></category>

		<guid isPermaLink="false">/?p=11351</guid>
		<description><![CDATA[連載： イベントレポート (28)先週の11月5日、Apache Cordova勉強会の第1回が開催されました。HTML5ハイブリッドアプリについて、実際の開発者によるプレゼンテーションが行われました。今回は、参加できな...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (28)</div><p>先週の11月5日、Apache Cordova勉強会の第1回が開催されました。HTML5ハイブリッドアプリについて、実際の開発者によるプレゼンテーションが行われました。今回は、参加できなかった方のために、その勉強会のまとめを紹介したいと思います。</p>

<h3>Cordova勉強会とは？</h3>

<p>まず始めに、そもそも勉強会の目的から。<a href="http://cordova.apache.org/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Apache Cordova</a>というのは、<a href="http://phonegap.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">PhoneGap</a>や<a href="http://ja.monaca.io/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Monaca</a>といった製品に組み込まれている、HTML5ハイブリッドアプリを開発するためのオープンソースなフレームワークです。このCordovaの技術情報を共有するために、「日本Cordovaユーザー会」として、月に1度のペースで勉強会を開く活動を行っています。今回は、その第1回となります（第1回の案内は<a href="https://atnd.org/events/57562" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">こちら</a>）。</p>

<ul>
<li>Twitterハッシュタグ: <a href="https://twitter.com/search?q=https%3A%2F%2Fhtml5experts.jp%23cordovajp&amp;src=typd" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">#cordovajp</a></li>
<li>YouTube公開録画: <a href="https://www.youtube.com/watch?v=Fn_6Soc2U10" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">第1回Apache Cordova勉強会</a></li>
</ul>

<h3>Cordovaの最近ホットな話題</h3>

<p><a href="http://www.slideshare.net/AsialCorp/cordova-41147919" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer"><img src="http://image.slidesharecdn.com/cordova-141105044351-conversion-gate01/95/cordova-1-638.jpg?cb=1415185221" alt="Cordovaで業務アプリを作る" width="300" class="aligncenter size-medium wp-image-11421" /></a></p>

<h4>新しいbrowserプラットフォームは、ブラウザー上でデバイスAPIをエミュレーション動作</h4>

<p>これまで、iOSやAndroidアプリの開発を目的としていましたが、ブラウザー用のAPIも整備が進み出しました。現時点ではまだ対応APIも少ないものの、今後は充実していくことになりそうです。</p>

<p>browserプラットフォームを使うと、ブラウザー上でCordova APIのエミュレーションが実行されます。ビルドはzip形式で圧縮します。</p>

<h4>ChromeベースとGeckoベースの新しいWebViewエンジンを使えるように</h4>

<p>Cordova 4.0では、WebViewエンジンを選択することができるようになりました。それに伴い、Intelが主導する<a href="https://crosswalk-project.org/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Crosswalkプロジェクト</a>ではChromiumベースのWebViewエンジンが、MozillaはGeckoベースの<a href="https://github.com/infil00p/MozillaView" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">MozillaViewエンジン</a>が登場しました。これにより、下記のようなメリットが挙げられます。</p>

<h5>1. ブレークポイントやプロファイリングなどの高度なデバッグ機能が利用可能に</h5>

<p>Crosswalkを組み込むと、Chrome Dev Toolsを用いたデバッグができるようになります。PCブラウザーとほぼ同じデバッグ機能を、Cordovaアプリでも使えるようになります。</p>

<h5>2. Androidのバージョン問題から解放される</h5>

<p>同一Androidバージョンにおいても、端末メーカーが独自にカスタマイズするWebViewでは、細かな実装レベルに違いがありました。WebViewをCordovaアプリに内包することで、すべてのAndroid端末で、同じブラウザーエンジンを使うことができます（その分アプリサイズは大きくなります）。フラグメンテーションが全く存在しないAndroidネイティブアプリ開発が可能になります。</p>

<h5>3. WebGLなどの最新機能が使える</h5>

<p>最新のブラウザーエンジンが持つHTML5機能を利用できます。CanvasやWebGLを使った3Dグラフィックスもスムーズに動きます！</p>

<h4>Cordova 3.5.0での脆弱性問題には速やかに対応を</h4>

<p>Cordova 3.5.0にて脆弱性が<a href="http://securityintelligence.com/apache-cordova-phonegap-vulnerability-android-banking-apps/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">発見されました</a>。そのため、Google Playストアでは、古いCordovaアプリを利用している場合に警告メッセージが表示されます。速やかに最新版にアップデートしましょう（Google Playストアで非公開扱いされるリスクがあります）。</p>

<h3>Cordova開発のベストプラクティスを学ぶ</h3>

<p><a href="https://speakerdeck.com/anatoo/cordovadezuo-ruhtml5haiburitudoapuri-kai-fa-besutopurakuteisuwoxue-bu" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer"><img src="https://speakerd.s3.amazonaws.com/presentations/796fe7f0470c0132b5a75e86c61bf7eb/slide_0.jpg?1415242929" alt="Cordovaで業務アプリを作る" width="300" class="aligncenter size-medium wp-image-11421" /></a></p>

<h4>要件定義が重要</h4>

<p>下記のような内容について、クライアント（もしくは企画側）と話し合い、コンセンサスを得ることが重要です。</p>

<ul>
<li>OSバージョンはどこまで対応するか？</li>
<li>Androidの動作保障端末は？</li>
<li>Cordovaプラグインでどこまで実装するか？</li>
</ul>

<p>これはCordovaに限った話ではありませんが、特にCordovaでは後々の方針変更は大きな痛手になる可能性があります。</p>

<h4>UI設計はOSの違いを考慮する</h4>

<p>プラットフォームごとにUI規約は異なります。それを理解したうえで、UI設計を行いましょう。</p>

<h4>巨大なリスト構造はHTML5には不向き</h4>

<p>巨大な数のDOM要素が入るようなUIはHTML5では難しいです。ページ送りなどで代用することも検討しましょう。</p>

<h4>開発アーキテクチャーは「SPA」</h4>

<p>いわゆるSingle-Page Application形式で開発するのがおすすめです。<a href="http://ja.onsen.io/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Onsen UI</a>や<a href="http://ionicframework.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Ionic Framework</a>など、ハイブリッドアプリ用のUIを組み込んだSPAフレームワークが開発での候補になるでしょう。</p>

<h4>コーディングサイクルを最適化</h4>

<p>毎回コンパイルするのは時間の無駄です。browserプラットフォームを使ってPC上で確認したり、<a href="http://ja.monaca.io/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Monaca Localkit</a>のような高速に実機に転送してくれるツールを利用しましょう。</p>

<h4>ボトルネック探しはインスペクターを使う</h4>

<p>JSの処理・CSSのマッチング処理・DOMリフロー・GPUへの転送・描画処理など、アプリのボトルネックの要因は様々です。<a href="https://speakerdeck.com/anatoo/html5deiosapuriandroidapuriwozuo-rou-html5haiburitudoapurikai-fa-ru-men" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">こちらの資料</a>を参考にしてください。<a href="https://www.genuitec.com/products/gapdebug/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">GapDebug</a>というツールも便利です。</p>

<h4>DOMリークをきちんと対処する</h4>

<p>DOMリークとは、解放されるべきDOM要素がJSから参照されたまま解放されない問題です。やっかいなのが、ドキュメントに含まれないDetatched DOMツリー自体がリークしてしまい、そこに含まれる画像などもメモリー上から解放されません。DOMリークを防ぐ方法として、必要に無くなったDOM要素の参照をきちんと切ったり、イベントリスナーをremoveすることが重要です。</p>

<h4>実機がない端末はクラウドでテスト</h4>

<p>たとえば<a href="http://appkitbox.com/testkit/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Remote Test Kit</a>というサービスでは、クラウドを通じて実端末を一定時間レンタルすることができます。自由にアプリをインストールすることができるため、機種問題で悩まされている場合は、こういったツールが非常に効果的です。</p>

<h3>開発事例 〜iPad向け業務アプリ（サービスマン支援システム）〜</h3>

<p><a href="http://artisanedge.jp/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">アルティザンエッジ合同会社</a>の井上さんより、実際の業務アプリの事例と、そのなかで苦労した点や工夫した点を紹介して頂きました。</p>

<p><a href="https://html5experts.jp//www.slideshare.net/inoccu" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/11/Untitled-300x168.png" alt="Cordovaで業務アプリを作る" width="300" height="168" class="aligncenter size-medium wp-image-11421" srcset="/wp-content/uploads/2014/11/Untitled-300x168.png 300w, /wp-content/uploads/2014/11/Untitled-1024x576.png 1024w, /wp-content/uploads/2014/11/Untitled-207x116.png 207w, /wp-content/uploads/2014/11/Untitled.png 640w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<ul>
  <li>Cordovaを採用した理由</li>
  <li>BackboneやjQuery Mobileを用いたアーキテクチャー</li>
  <li>ネイティブで開発した「Cordovaプラグイン」も数多い</li>
  <li>Cordovaアプリ開発でハマったこと</li>
  <li>メモリー消費量について</li>
</ul>

<p>ぜひ<a href="https://html5experts.jp//www.slideshare.net/inoccu" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">このリンク</a>より、スライドをご覧になってください。</p>

<h3>次回の勉強会について</h3>

<p>第2回Cordova勉強会は、12月2日午後7時より開始予定です。ご興味ある方は、ぜひ下記のリンクよりお申込みください。</p>

<p><a href="http://7b543bd41af4571f0bdafff1b5.doorkeeper.jp/events/17138" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">第2回Apache Cordova勉強会（DoorKeeper）</a></p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>PhoneGap/Cordovaの最新トピック満載！「PhoneGap Day US 2014」イベントレポート</title>
		<link>/masahiro/11178/</link>
		<pubDate>Tue, 28 Oct 2014 04:00:58 +0000</pubDate>
		<dc:creator><![CDATA[田中 正裕]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[Cordova]]></category>
		<category><![CDATA[Monaca]]></category>
		<category><![CDATA[PhoneGap]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[海外]]></category>

		<guid isPermaLink="false">/?p=11178</guid>
		<description><![CDATA[連載： イベントレポート (25)2014年10月24日、米サンフランシスコにてPhoneGap Day US 2014が開催されました。3年前から始まった本イベントですが、これまでアメリカではオレゴン州ポートランドで開...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (25)</div><p>2014年10月24日、米サンフランシスコにて<a href="http://pgday.phonegap.com/us2014/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">PhoneGap Day US 2014</a>が開催されました。3年前から始まった本イベントですが、これまでアメリカではオレゴン州ポートランドで開催されていて、残念ながら参加する機会がありませんでした。今年は同じくサンフランシスコで開催された<a href="http://html5devconf.com/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">HTML5 Dev Conf 2014</a>と同じ週となった関係で、両方のカンファレンスに参加することができました。</p>

<p>HTML5ハイブリッドアプリ開発として幅広く使われているPhoneGapは、またの名を「<a href="http://cordova.apache.org/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Cordova</a>」と呼ばれます。CordovaはApache FoundationベースのOSSプロジェクトで、それをAdobeが製品として出している名称がPhoneGapとなります。そのため、PhoneGap Dayの内容も、主にCordovaに関するものがほとんどです。それもGoogleやMozilla、Microsoftなどに所属するCordova開発者のスピーチが多く、とてもオープンなカンファレンスとなっています。</p>

<p>司会は毎度ながらPhoneGap開発チームのリーダー的存在な<a href="http://brian.io/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Brian LeRoux</a>。<a href="http://app.phonegap.com/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">PhoneGap Desktop App</a>の紹介などが行われました。</p>

<blockquote class="twitter-tweet" lang="en"><p>.<a href="https://twitter.com/Adobe" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">@Adobe</a>&#039;s <a href="https://twitter.com/brianleroux" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">@brianleroux</a> kicks off PhoneGap Day 2014 <a href="http://t.co/PJqfunCgwE" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">http://t.co/PJqfunCgwE</a> <a href="https://twitter.com/hashtag/pgdayus14?src=hash" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">#pgdayus14</a> <a href="https://twitter.com/hashtag/pgday14?src=hash" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">#pgday14</a> <a href="http://t.co/cIiYBoSYPP" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">pic.twitter.com/cIiYBoSYPP</a></p>&mdash; Eric Oesterle (@erico) <a href="https://twitter.com/erico/status/525687388425945088" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">October 24, 2014</a></blockquote>

<h2>ハイライト紹介</h2>

<h3>CrosswalkエンジンでAndroid WearでもCordovaが動いた</h3>

<p>Joe Bowserの「Many Webviews on PhoneGap Android」より。Intelがオープンソースプロジェクトとして進めている<a href="https://crosswalk-project.org/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Crosswalk Project</a>。これは、Chromium互換WebViewエンジンをCordovaに組み込み、ハイブリッドアプリの大きな課題であるAndroidバージョン依存や実行パフォーマンス、JavaScriptデバッグ機能の強化などを解決してしまおうというものです。PhoneGap Dayに先立ち公開されたCordova 4.0では、WebViewをAndroid標準WebViewからサードパーティ製のものに切り替える仕組みが備わり、Crosswalkの導入も簡単になりました。これを使うと、WebViewを持たないAndroid Wearにおいても、Cordovaアプリを動作させることができるとのこと。メモリーの問題等で実用ではないらしいですが、面白い取り組みです。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/10/20141024_115359-e1414397245495.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/10/20141024_115359-e1414397245495-300x165.jpg" alt="20141024_115359" width="300" height="165" class="aligncenter size-medium wp-image-11184" srcset="/wp-content/uploads/2014/10/20141024_115359-e1414397245495-300x165.jpg 300w, /wp-content/uploads/2014/10/20141024_115359-e1414397245495-1024x565.jpg 1024w, /wp-content/uploads/2014/10/20141024_115359-e1414397245495-207x114.jpg 207w, /wp-content/uploads/2014/10/20141024_115359-e1414397245495.jpg 640w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<h3>Visual StudioでCordova開発。次バージョンでiOSにも対応</h3>

<p>現在プレビュー公開されている<a href="http://www.visualstudio.com/en-us/explore/cordova-vs.aspx" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Multi-Device Hybrid Apps</a>ですが、近日中にアップデートが行われ、iOSのビルドができる機能が搭載されるとのこと。Windowsローカル環境で具体的にどうやって実現するのかなと思ってみていると、どうやらMac上にエージェントを起動し、Visual Studioはそのエージェントに対して、ネットワーク経由でリモートビルドをかけることで対応するようです。これで<del><a href="http://monaca.mobi/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Monaca</a>を使わなくても</del>WindowsユーザーがCordovaでiOS開発ができるようになりますね！</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/10/20141024_134936.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/10/20141024_134936-300x168.jpg" alt="20141024_134936" width="300" height="168" class="aligncenter size-medium wp-image-11185" srcset="/wp-content/uploads/2014/10/20141024_134936-300x168.jpg 300w, /wp-content/uploads/2014/10/20141024_134936-1024x576.jpg 1024w, /wp-content/uploads/2014/10/20141024_134936-207x116.jpg 207w, /wp-content/uploads/2014/10/20141024_134936.jpg 640w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<h3>Ionic Frameworkの正式リリースは11月末か？</h3>

<p>モダンなUIフレームワークとして注目されている<a href="http://ionicframework.com/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Ionic Framework</a>ですが、11月末ごろに正式リリースされるという話がありました。これまで1年間ずっとベータ版のままでしたので、正式リリースでどのようになるのか楽しみです。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/10/20141024_141039.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/10/20141024_141039-300x168.jpg" alt="20141024_141039" width="300" height="168" class="aligncenter size-medium wp-image-11186" srcset="/wp-content/uploads/2014/10/20141024_141039-300x168.jpg 300w, /wp-content/uploads/2014/10/20141024_141039-1024x576.jpg 1024w, /wp-content/uploads/2014/10/20141024_141039-207x116.jpg 207w, /wp-content/uploads/2014/10/20141024_141039.jpg 640w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>

<h3>まとめ</h3>

<p>他にも、PhoneGapアプリのデバッグをするツールや、Mozillaが開発中の新しいWebViewエンジン、iOS 8で登場したWKWebViewの話など、PhoneGap/Cordovaデベロッパーにとって非常に面白いテーマが目白押しで、個人的にとても楽しむことができました。それと同時に、HTML5ハイブリッドアプリの世界は、CordovaというOSSフレームワークを通じて、メジャーどころが共同で開発を担っていることが実感されました。今後、PhoneGap Blogではセッションの録画ビデオを掲載していくと思いますので、ぜひチェックしてみてください。</p>

<h4>PR: Cordovaユーザー会で一緒に最前線を探索しませんか？</h4>

<p>PRとなりますが、このたびHTML5ハイブリッドアプリ全般の技術を扱うためのオープンソースコミュニティ「Cordovaユーザー会」を立ち上げました。この会では、HTML5ハイブリッドアプリ、とりわけCordovaの普及に向けて、実際にアプリ開発を実践されている方々が積極的に情報共有をしていくことを目的としています。キックオフ第1弾として<a href="https://atnd.org/events/57562" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">第1回Cordova勉強会</a>を11月5日、午後7時から開催する予定です。ぜひ興味ある方はご参加ください。</p>

<p>P.S. Google Chrome Apps Mobileの方に、Monacaの紹介をしてもらいました。Cordovaプラグインを開発しやすくするためのツールを作っていきます。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/10/20141024_161004-e1414398586530.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/10/20141024_161004-e1414398586530-300x166.jpg" alt="20141024_161004" width="150" height="83" class="aligncenter size-medium wp-image-11188" srcset="/wp-content/uploads/2014/10/20141024_161004-e1414398586530-300x166.jpg 300w, /wp-content/uploads/2014/10/20141024_161004-e1414398586530-1024x567.jpg 1024w, /wp-content/uploads/2014/10/20141024_161004-e1414398586530-207x114.jpg 207w, /wp-content/uploads/2014/10/20141024_161004-e1414398586530.jpg 640w" sizes="(max-width: 150px) 100vw, 150px" /></a></p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>HTML5とかモバイルとかJSフレームワークとか、ぶっちゃけどうなの座談会</title>
		<link>/amurachi/10569/</link>
		<pubDate>Thu, 04 Sep 2014 00:00:51 +0000</pubDate>
		<dc:creator><![CDATA[村地彰]]></dc:creator>
				<category><![CDATA[システム開発]]></category>
		<category><![CDATA[ServiceWorker]]></category>
		<category><![CDATA[Web Components]]></category>
		<category><![CDATA[html5j]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[エンタープライズ]]></category>

		<guid isPermaLink="false">/?p=10569</guid>
		<description><![CDATA[連載： エンタープライズ開発特集 (4)最近のシステム開発の現場では、HTML5やモバイル、JSフレームワークなどの新しい道具が次々と登場してきます。「そうした新しい道具ってエンタープライズではどうなの？」「現場として受...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/enterprise/" class="series-197" title="エンタープライズ開発特集" data-wpel-link="internal">エンタープライズ開発特集</a> (4)</div><p>最近のシステム開発の現場では、HTML5やモバイル、JSフレームワークなどの新しい道具が次々と登場してきます。「そうした新しい道具ってエンタープライズではどうなの？」「現場として受け入れられているの？」といったぶっちゃけトークを行う座談会が、8月11日に美人で有名なおだんみつさんのいる<a href="http://www.ni-ichicafe.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">21cafe</a>で開催されました。1時間半にわたる長時間のトークから特に盛り上がった話を紹介します。</p>

<p><img src="/wp-content/uploads/2014/09/talk1.jpg" alt="" width="600" height="400" class="alignnone size-full wp-image-10570" srcset="/wp-content/uploads/2014/09/talk1.jpg 600w, /wp-content/uploads/2014/09/talk1-300x200.jpg 300w, /wp-content/uploads/2014/09/talk1-207x138.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /><br><span style="font-size: 80%;">　▲パネラーたち（左から株式会社クレスコ・小川充さん、グロースエクスパートナーズ株式会社・酒巻瑞穂さん、NTTコムウェア株式会社・川田寛さん）</span></p>

<h2>日本のエンタープライズが抱える悩ましい問題とは</h2>

<p><br>
<b>川田</b>：世の中は技術革新で勉強会に行くとワクワクするんですが、でも皆さん本当に使ってますか？<br>
私はあるところで「勉強会で紹介される技術ってお花畑だよね」「俺たちそこまでアグレッシブじゃないよね」って聞いてショックを受けたんです(笑)。とは言え、イケてるものは世の中にいっぱい出てきていて、OSS由来のベンダー製品も、モバイルもたくさん出てきています。でも日本のエンタープライズだと、結構悩ましい問題を抱えているように思うのですよ。</p>

<p><img src="/wp-content/uploads/2014/09/talk5.jpg" alt="" width="600" height="338" class="alignnone size-full wp-image-10580" srcset="/wp-content/uploads/2014/09/talk5.jpg 600w, /wp-content/uploads/2014/09/talk5-300x169.jpg 300w, /wp-content/uploads/2014/09/talk5-207x116.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /><br><span style="font-size: 80%;">　▲日本のエンタープライズは世界のスタンダードと離れすぎている</span>
<br><br>
（スライドを示して）そもそもですけど、エンタープライズって、エンジニアを取り巻くエコシステムが欧米と日本とで全然違いますよね。SIerなんかがまさにそれで、ユーザ企業さんのシステム費を下げようとして頑張るんですが、システム費が下がると受注費が下がるし、エンジニアが評価されないしで、利害がうまく一致せず難しい状況。<br><br>
そんな中で、ITで働き方をよくしようとか、エンジニアの技術で競争力アップに貢献していこうとか、そういう投資を提案していけるかんじにはなかなかなれず、海外とかと比べると日本はよくない方向に向かってる。エンタープライズは今とてもツラい状況に陥っているのではないでしょうか。そこで今日は前向きに企業のITをよくしていく方法を、フロントエンドという観点から、語り合えたらいいなと考えています。今日のアジェンダですがこの3つです。</p>

<ul>
<li>古いシステムのツラいところ、例えばIE6/VB6とか</li>
<li>これから結構使えそうなWeb技術</li>
<li>どうやって新しい技術を入れるか、上司を説得するか</li>
</ul>

<p><br>
これらの課題を考えていく会にしたいと思います。早速パネラーに自己紹介してもらいましょう。<br><br>
<b>小川</b>：エンタープライズ部の小川です。システム提案とか社内で利用するフレームワークの選定、エンジニアのトレーニングとかをやってます。<br><br>
<b>酒巻</b>：同じくエンタープライズ部の酒巻です。前職ではHTML5関係の技術を仕事に取り入れてました。転職して直接HTML5関連は減ってるんですが、前職の経験からエッジの効いたエンタープライズっぽいところには関っている、という結構幸せな仕事をしてます(笑)。前職では小川さんと同じ社内標準の選定や、教育を含めてオープンソースの技術をどう使っていくのかという取り組みをやってました。</p>

<h2>レガシーシステムとの付き合い方</h2>

<p><br>
<b>川田</b>：では、まず「古いシステムのツラいところ」から。
<br><br>
<b>酒巻</b>：自分の場合は、IE6やVB6でも苦しめられることがありますね。IE6ってXPと同時に死に絶えるかと思ったら、「サポート切れてるけど長期的に見て2年後にリプレース」みたいなところがあって。その資産とエッジの技術が今ぶつかってる。特に技術者が少ない部分、ActionScriptとかPrototypeJSとかに特有の癖などをよく知っている技術者が少ないんです。そういうニッチなことを知ってる人に負荷が集中してるのが、今よく見る状況ですね。VBも一緒だと思います。VBができるエンジニアって社内で貴重です。
<br><br>
<b>川田</b>：VB6知ってる人とか「神」扱いですよね。
<br><br>
<b>酒巻</b>：そういう人はたいていエッジなものも知ってるから、一人に対してよけいに負荷が集中してしまう。知らない人は定時で帰れるのに。
<br><br>
<b>小川</b>：私は今は幸いにIE6じゃなくIE8なんですけど、VBからIE6とJava EEに置き換わってという、まずはオープン系に置き換わって、その次のリプレースってのが多いですね。私は今日は話すほうよりも、皆さんからヒントをいただきたいので、いろいろ聞きたいんです。
<br><br>
<strong>──ここで川田さんが、会場にIEの案件をやっている人の挙手を募ったところ、意外と少ない結果に。さらにAndroid2.3標準ブラウザについても聞いてみると…</strong>
<br><br>
<b>川田</b>：Android2.3標準ブラウザだと、IE6とあまり変わらないくらいの存在ですね。IE8を使ってるということは、エンタープライズだとJavaなどが多いと思いますが、JSFあたりは拡張にいろいろと制約が出てきませんか？
<br><br>
<b>小川</b>：私の周りでは、そもそもJSFを使ってるケースがあまり例がありません。実際はまだJSPで作られているものが多くて、それを今のHTMLベースのアプリケーションに置き換える時に、BackboneなのかAngular.jsなのか、という議論です。
<br><br>
<b>川田</b>：JavaScriptフレームワークの活用に進んだのですね。小川さんは、ちなみにどっち派ですか？
<br><br>
<b>小川</b>：今はAngular推しなんですけど、どちらかというとSenchaのように、UIのコンポーネントを持っているもののほうがエンタープライズとしてはよいのではないかと思っています。
<br><br>
<b>川田</b>：エンタープライズの重要なポイントとしてサポートというのもあるけど、ちょっと安い案件はサポートなしでいこうかな、みたいなラインを狙ってるようですが、そのあたりどう思いますか？
<br><br>
<b>小川</b>：持続可能性を考えると、オープンソースだけタダだからって単体で使うのは、ちょっと違うなと思ってます。サポートがあるというのとは別に、いろんなものを組み合わせるとどこで不整合が起きるか分からないですし、ライセンスの問題もありますし、結構難しいんですね。そう考えるといろんなオープンソースを組み合わせて、一個のプロダクトにしているものの方がよいと思います。
<br><br>
<b>川田</b>：なるほど。話は変わりますけど、「古いIE向けのシステムはIE8や9でDocumentModeを使って動かせる」という神話があるんですが、実際に中身にはJavaアプレットがあったり、もう一つはFlash/Flexだったりするわけですね。そういうのを入れ替えたり、維持したりというのはありますか。
<br><br>
<b>酒巻</b>：2年くらい前の話なんですけど、その時に自分はネイティブを選んじゃったんです。2年くらい前だとFlashでやれることがHTMLではまだつらかった時期で、しかもIE7までサポートという条件があって。技術的にはできるんですよ、技術的には。ただ投資効果が…リプレース案件だったのでお金が出ないんですよ。それで一番安く上げる方法は…ってなるとFlashになっちゃう。自分はこれはHTMLでやったら面白そうだなとは思ってたんですが…。
<br><br>
<strong>──会場からJavaで画像を操作するところをFlashを使おうとしたが、許可が下りなかった話が投げかけられた。ソースや設計書もなかったが、動いたのだという。</strong>
<br><br>
<b>川田</b>：JavaアプレットとかFlashを置き換える案件、いい方法はありますか？
<br><br>
<b>小川</b>：作り変えた方がいいと思います。作られた当時のビジネス要件と今のビジネス要件では、状況が違いますから。お客さんにとっては、システム更改はグローバル化に代表される様々な変化と戦うための、新しいシステムを手に入れるチャンス。我々エンジニアとしてはそこに新しい技術を入れていく方法を考えていくべきかと。
<br><br>
<b>酒巻</b>：部分置き換えって長期的に見てコストがよろしくないケースのほうが多くて、会社レベルで業務計画の一環として古い資産を置き換えていくべきってのは、常に意識してます。
<br><br>
<b>川田</b>：この世界には、「三割改修は全入れ替えと変わらない」の法則がありますからね。</p>

<h2>エンタープライズでも注目の最新Web技術</h2>

<p><br>
<b>川田</b>：これから先、ビジネスになりそうな技術を探っていこうかなと思うんですが、「この辺の技術要素はアツいぜ」ってのはありますか。
<br><br>
<b>酒巻</b>：鉄板ですが、Web ComponentsとServiceWorkerがすごく「来る」と思ってます。Web ComponentsのビジネスモデルとServiceWorkerのオフラインアプリケーションというのが、今の微妙に足りないHTML5プラットフォームにぴったり当てはまりそうな気がしてるんです。
<br><br>
<b>小川</b>：私の会社はWebだけでなく組込みやクラウドもやっていますが、その中で考えていくと、WebSocketですね。いろいろなデバイスがありますし、今後は薬の中にもセンサーが入るような時代になっていく。そうするとそれらのデータをどうやってWebやクラウドに上げて分析をしていくかが重要になっていて、今「何か」と「何か」をつなぐインフラとしてWebが一番適しているんですよ。そこで今注目している通信技術としてはWebSocketですね。
<br><br>
<b>川田</b>：私はやっぱり業界全体の流れに全力に乗っかろうということで、モバイルに期待していたりします。私はこれからは「モバイルファースト」じゃなく「モビリティファースト」になる説を推しています。実は<a href="http://furoshiki.hatenadiary.jp/entry/2014/08/11/122614" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ブログ記事</a>でも上げてるんですが。
<br><br>
<b>小川</b>：見ました。同感ですね。
<br><br>
<b>川田</b>：従来はデスクトップコンピューターに縛られたシステムだけです。それが今変わってきて、安価で汎用的なデバイスの中から、取捨選択しながらシステムを作っていく時代になると思うんです。デスクトップだけで完結したシステムを作るんではなく、いろいろなデバイスの中から適切なものを選んで、システムで業務フローを実現するような時代になっていくのではないかと。
<br><br>
<b>酒巻</b>：タブレットは結構もてはやされていましたが、仕事で要件とかワークフローを作っていくと専用機の方が優秀になることが多いんです。ワコムのペンタブレットとか、専用のUSBを挿すだけで動くような端末とかで。それがさっき小川さんが言ったWebSocketで通信する、API互換、Web標準でそういったマシンが繋がることがシステム開発の土台となってくれたら、すごい嬉しいなと思います。
<br><br>
<img src="/wp-content/uploads/2014/09/talk2.jpg" alt="" width="600" height="400" class="alignnone size-full wp-image-10575" srcset="/wp-content/uploads/2014/09/talk2.jpg 600w, /wp-content/uploads/2014/09/talk2-300x200.jpg 300w, /wp-content/uploads/2014/09/talk2-207x138.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /><br><span style="font-size: 80%;">　▲当日の会場は、テーブルには川田さんのおごりのビールが最初から並べられました</span></p>

<h2>エンタープライズにUXって必要？</h2>

<p><br>
<b>川田</b>：モバイル絡みの話になりますが、エンタープライズにUX（への配慮）って必要だと思いますか？
<br><br>
<strong>──会場からの挙手はUXいらないと思う人、いると思う人が半々という結果に</strong>
<br><br>
<strong>（参加者）</strong>：ミスを少なくするというような観点で、誤解が少ないラベリングや紛らわしくないアイコンといったものは絶対必要。そういう理由で僕はUXは必要だと思います。
<br><br>
<strong>（参加者）</strong>：スマートフォンのOSを乗り換えるということがあるけど、たいていの人はすぐに使いこなせる。それはなぜかというと、UXがものすごく考えられていて分かりやすいから。でもエンタープライズの技術では新しいのになると「使わない」「使えない」って言われるのは、UXを考えてないからなんじゃないか。なので新しい技術で日々革新してことになったら、UXの部分だけは一本筋を通してあげないとダメではないかと…。
<br><br>
<b>小川</b>：UI/UXはお金にならないと言われる機会が多いです。例えば非常に使いにくいUIを変えたとき、現場の反応を見ると最初は大変評判が悪い。でも半年くらい経つと「使いやすい」と言われるようになる。その半年間の業務効率低下のコストと、そこで得たUI/UXが本当に等価だったのか自分は結構悩んでいて、WebとかであればUI/UXのベストプラクティスってあるんでしょうけど、企業システムの閉じた世界だと一般論では語れない何かがあるんではないかなと思ってます。
<br><br>
<b>川田</b>：私はUXは暫定的には儲からないんですけど、これから先は必要になると思ってます。エンタープライズとWebで公開されているサービスの大きな違いって評価軸で、Web系のサービスはたくさん利用してもらうことに価値がある。でも業務システムは嫌でも毎日使う。
<br><br>
ところが業務ってシステム化されているはずなのに案外現場に見にいってみると「使いにくい」あるいは「現場に合ってない」と思われるところをアナログに戻してるんです。そういう意味で今まであったものを置き換えるとなった時に、UXは重要なポイントになる。エンタープライズでは、モバイルとUXはセットだと考えているんです。
<br><br>
<b>酒巻</b>：UXじゃなくて、UIの話題の方がまだエンタープライズでは多いんですね。まだUIが出そろっていない「こういう時にこうする」っていうベストな選択肢が、まだ分かってない部分が多いんじゃないかなあと。
<br><br>
<b>川田</b>：エンタープライズは「ベストプラクティス」が好きですよね。
<br><br>
<b>酒巻</b>：むしろその言葉に安心して、みんな次の一歩へ進みたいっていうのがあるんじゃないかな。
<br><br>
<b>小川</b>：「モビリティ」の考え方は非常にありだと思っていて、例えば日本だとどんどん人口が減ってきていて、出産後の女性の活用、オフィスに縛られない働き方の中ではデバイスだったりノートPCが必要だけど、それは今までの業務システムの業務フローにないんです。そこで新しく再設計した上で、全部最適化されたら素晴らしい未来があると思ってますが、なかなかピンときてくれないんですね。ただ今後そういう企業や事例などが増えて、日本でもそういう働き方が普通になってくると思うので、そういうのを実現するための新しいテクノロジーはありだと思うんです。
<br><br>
<b>酒巻</b>：それは自分も夢に見ることがあるんですけど、そうなるために企業が何をするかっていうと「一部改修」「部分改修」で何とかしようって考えが多くて、それでコストが大きくなって結局取りやめようってケースが多かったんです。
<br><br>
<b>小川</b>：そこで相手側のステークホルダーを考え、「経営者の方に話すときは企業としての将来計画、ビジョンといったものをきちっと立てる」ことが必要だと思ってます。</p>

<h2>オープンソースのフレームワークはどう？</h2>

<p><br>
<b>川田</b>：別の新しい技術の話も取り上げてみましょう。「オープンソースのフレームワークってぶっちゃけどうよ？」に何か意見はありますか？
<br><br>
<b>酒巻</b>：現在のエンタープライズで一番注目株といえば、Cordovaですね。お客様からのご要望で、ネイティブのファイルAPI、ローカルファイルにアクセスしたいっていう話が結構あるんです。「ActiveXなどで使えたのが同じWebなのに何で使えないの」って話が出てくるんですよ。そのための逃げ道として、Cordovaなどが出てきているんじゃないかと。ただ将来的に、Cordovaだけでやっていくのは怖いなって自分は思ってます。
<br><br>
<b>小川</b>：あれはまだ「闇」ですね(笑)。私もHTMLだけ作ればネイティブできますよっていうCordovaの甘い誘惑に誘われていったら、なぜかAndroidのネイティブ部分を触ることもあるという(笑)。技術の選択肢としてはありだと思いますけど、選定する側としてはメリット/デメリットをちゃんと把握した上できちんと利用するべきで、そのために一番大事なのは「味見」ですよね。
<br><br>
<b>川田</b>：弊社にはオープンソースの匠みたいな人がゴロゴロといるんですが、彼らが言うには「ここ最近の技術革新は早すぎる」。ここ10年くらいはゆっくり動いていたのに、滅茶苦茶早くなってしまった。そんな中で戦うために必要なのは、やはり「味見」だと思います。
<br><br>
<b>酒巻</b>：ブログや記事で紹介されている「光」の面だけ見て理解した気になり、とりあえず仕事に取り入れてみよう、というスタートはデスマのサイクルに陥る一因。その間に自分で味見やプロトタイプを作り、評価をするって課程が今後必要になってきますね、オープンソースをしっかり使う上では。
<br><br>
<b>川田</b>：「味見部」は何かやります？そこに html5j味見部部長の<a href="https://html5experts.jp/canidoweb/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">金井健一</a>さんもいらっしゃるので…
<br><br>
<b>金井</b>：基本的に新しい技術が出たら味見をしています。なので「人柱」です。新技術がたくさん出てきても当たりなんて1割あるかどうか、本当にひと握りです。
<br><br>
<img src="/wp-content/uploads/2014/09/talk6.jpg" alt="" width="600" height="400" class="alignnone size-full wp-image-10614" srcset="/wp-content/uploads/2014/09/talk6.jpg 600w, /wp-content/uploads/2014/09/talk6-300x200.jpg 300w, /wp-content/uploads/2014/09/talk6-207x138.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /><br><span style="font-size: 80%;">　▲html5j Web先端技術味見部部長　AngularJS Japan User Group 管理人の金井健一さん</span>
<br><br>
<b>川田</b>：エンタープライズのエンジニアがみんなユーザー企業にいるなら、システム費を下げればそれは直接自分たちの成績になるけど、日本では中間にSIerがいますからね。そこで新しい技術でできることとしてまず考えられるのは、「入れ替えの技術」。まず、「VB6とかFlashを使ってきたことを入れ替える技術は何だ」ってところからスタートして、その後モバイルでどうするのかを考えていくべきかと。</p>

<h2>エンタープライズを「モダン」にするための技術</h2>

<p><br>
<b>川田</b>：最後にどうやって新しい技術を入れていくか、ぶっちゃけ「どうやって上司を説得するか」という話になります。酒巻さんはフレームワークを導入した時、どういう説得をしました？
<br><br>
<b>酒巻</b>：Angularを実際のそれなりの規模のあるシステムに取り入れました。何が大変だったかというと、エンジニアの下からの反発と、それで本当に見積り出せるのかという上からの反発ですね。
<br><br>
<b>川田</b>：見積りなんですか、上からは。
<br><br>
<b>酒巻</b>：これは何万円でできて、ウチに何万円の利益が出るかを最初にかなり正確に出したがるんです。フレームワークは前例がない。それに比べて、JSPで作ったらものすごく具体的に数値ができるんです。そこをいかに「最初に（見積もりを）作りあげるか」でしたね。
<br><br>
<b>川田</b>：Angularを入れるメリットは説明したんですか？
<br><br>
<b>酒巻</b>：はい。説明資料もかなり作りました。自分もBackboneとかEmberとかの当時エッジなJSフレームワークを味見して、最初にいけると思った唯一のフルスタックがAngularだったんですよ。
<br><br>
<b>川田</b>：一つで完結できるってことですか。
<br><br>
<b>酒巻</b>：テストとCIまでが、Angularのページに「こうすればいい」と載っています。Angularの基礎の部分を一回理解すると、それをそのまま設計に転用できるというのがすごく大きい。特にバックエンドのノウハウをそのまま使ったクラスコード、モジュール設計をできたのは上司を説得する上での説得材料になりました。
<br><br>
それをもとに実際に部下たちにAngular.jsを触らせて、実際できたら「できるじゃん」というノリですよね。言いかたが悪いですけどサラリーマンプログラマの人たちは安定した技術、昨日やっていたことを今日もやりたいと思う人が多いんで、それをどう切り替えさせるのか、「ほら簡単だよ」「やったらできるでしょ」さらに「こんなに楽になるよ」というのを教えてあげる、体験させてあげるっていうのが重要かなと思います。
<br><br>
<b>小川</b>：同感です。その点、Angular.jsはいいフレームワーク。後はUIフレームワークですね。SenchaやKendoUIなども検討してみてもいいと思います。
<br><br>
あとマイクロソフトのWinJS、これが正式にリリースされたら結構インパクト大きいと思います。企業システムのHTML5化をする上で一番ネックなのが、バックエンドの既存システムをどうやってWebAPIにするかという点です。バックエンドの話で言うと、マイクロソフトの.NETの技術はかなり素晴らしいですね。そことペアになる、マイクロソフトのサポートがあるUIフレームワークが出てきたら、乗っかってもいいかなと思っています。
<br><br>
<b>川田</b>：最近のエンタープライズでは、OSSよりベンダー製品の方が明らかに尖ってきていますよね。新製品の選定をOSSで縛ると、できないことが多すぎて困ってしまうのですが。
<br><br>
<b>酒巻</b>：自分は、Angularは入れましたけど、実際にガンガンやっていくんであれば、SenchaとかEasyUIの方が安心はできますよね。
<br><br>
<img src="/wp-content/uploads/2014/09/talk7.jpg" alt="talk7" width="600" height="400" class="alignnone size-full wp-image-10616" srcset="/wp-content/uploads/2014/09/talk7.jpg 600w, /wp-content/uploads/2014/09/talk7-300x200.jpg 300w, /wp-content/uploads/2014/09/talk7-207x138.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" />
<br><br>
<b>川田</b>：ほかにこの辺りが来るんじゃないってのはありますか？
<br><br>
<strong>金井</strong>： Angular.jsユーザー会会長だからAngularを推しているわけじゃないんですけど、Build 2014というマイクロソフトの技術者カンファレンスでも「.NET系とAngularの相性がすごくいい」とめちゃくちゃ盛り上がってました。マイクロソフト系列のKnockoutの話が全然出てこなかったんですよ。
<br><br>
<b>小川</b>：ちなみにJavaOne TokyoでもAngularが取り上げられていたそうです。エンタープライズJavaとの組み合わせでも、Angularは注目されているのかもしれない。
<br><br>
<b>金井</b>：たぶん、JavaScriptを書きたくないんですよね。Angularを使えば、JavaScriptの記述量をかなり減らせるから。
<br><br>
<b>川田</b>：私も「みんなJavaScriptなんか書きたくないんじゃないか」と思ってるんですよ。jQueryは「jQuery」っていう言語で、JavaScriptとは言いがたいじゃないですか。ひょっとするとここにいる皆さんも、本当はJavaScriptが嫌いなんじゃないんですか！？
<br><br>
<strong>(会場から) え～(笑)</strong>
<br><br>
<b>川田</b>：で、新しい技術をどう入れていくかの一歩前に戻るんですけど、フロントエンドってJavaScriptを書かない方向に行くんじゃないですか？
<br><br>
<b>金井</b>：JavaScriptにWeb Componentsが実装されると、苦手な人はわざわざJavaScript書かなくていいよっていうふうに、未来はなってます。
<br><br>
<b>小川</b>：コンポーネントが安定的に提供されて、JavaScriptに慣れないエンジニアでも大規模なものが作れるようになればいいなあと思いますね。
<br><br>
<b>川田</b>：思ったよりモバイルとフレームワークの話に行きましたよね。モバイルとフレームワークは非常に関心が高いのだと思います。モバイルに関しては「適用方法はいくらでもあるけど、提案する方法が見つからない」なのですが、フレームワークの場合は「良さは分かっているけど、お客さんにその良さを伝えられないというのが苦しい」のだと全体的に感じました。
<br><br>
ということで、90分にわたりいろいろ議論していただいてありがとうございました。最後にもう一度乾杯で締めましょう。乾杯！</p>
]]></content:encoded>
		
		<series:name><![CDATA[エンタープライズ開発特集]]></series:name>
	</item>
		<item>
		<title>Web技術者も知るべきデモ・プレゼンの極意（西脇資哲氏）「Microsoft de:code」イベントレポート</title>
		<link>/iwase/7172/</link>
		<pubDate>Wed, 11 Jun 2014 00:00:40 +0000</pubDate>
		<dc:creator><![CDATA[岩瀬 義昌]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[イベント]]></category>

		<guid isPermaLink="false">/?p=7172</guid>
		<description><![CDATA[連載： イベントレポート (19)5月29日、30日にかけてMicrosoftの開発者向けイベントである「de:code」が開催された。本記事では、Microsoftのエバンジェリストである西脇資哲氏のセッション「de:...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (19)</div><p>5月29日、30日にかけてMicrosoftの開発者向けイベントである「<a href="http://www.microsoft.com/ja-jp/events/developer/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">de:code</a>」が開催された。本記事では、Microsoftのエバンジェリストである西脇資哲氏のセッション「de:code参加者に捧げる最新Microsoftデモ・プレゼンの極意」について紹介する。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0270.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0270.jpg" alt="decode_西脇氏" width="768" height="512" class="alignnone size-full wp-image-7197" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0270.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0270-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0270-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<h2>プレゼンテーション・デモとは</h2>

<p>プレゼンテーションでは相手に、話をする、画像・動画・デモを見せる等を行う。このプレゼンテーションにおいて、重要なことはまず相手に伝わること、そして相手に伝わった結果、さらに重要なのが相手が動いてくれることだ。相手が動いてくれるとは、例えばプロジェクトについて説明した結果、相手が人・お金のリソースを出してくれる、ということだ。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0297.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0297.jpg" alt="プレゼンとは" width="768" height="512" class="alignnone size-full wp-image-7201" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0297.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0297-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0297-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>このプレゼンテーションのテクニックとして、本セッションでは2つのテクニックを紹介する。1つはスピーチのテクニックで、もう1つはデモのテクニックだ。</p>

<h2>スピーチのテクニック</h2>

<p>スピーチのテクニックとは、魅力がある話し方・相手に伝わる話し方のテクニックである。</p>

<h3>プレゼンテーションはテクニックである</h3>

<p>世の中にはプレゼンテーションが上手い人・下手な人がいるが、上手い・下手を決めている要因は、生まれ持った能力ではなくテクニックである。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0309.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0309.jpg" alt="プレゼンはテクニック" width="768" height="512" class="alignnone size-full wp-image-7217" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0309.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0309-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0309-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>一般的に、「カリスマ性の高い人はプレゼンテーションが上手い」と言われることがあるが、それは逆で、プレゼンテーションが上手くなる努力をしており、プレゼンテーションが上手いから、カリスマ性が高く見えるのだ。</p>

<p>以下では、プレゼンテーションが上手くなるためのテクニックを紹介する。</p>

<h3>最初の言葉と最後の言葉だけは決めておく</h3>

<p>プレゼンテーションの最初の言葉は上手な人が多い。しかし、締めの言葉が下手な人がいる。一番最後の言葉が、ビシッと決まるプレゼンテーションを実施している人は非常に印象が良い。そのため、最後の言葉を決めておくとよい。例えば、「ご清聴ありがとうございました」でもいいし、会社でユニークな、製品にまつわるものでもいい。</p>

<h3>事実(Fact)と意見(Opinion)</h3>

<p>プレゼンテーションやデモで述べる内容には、事実(Fact)と意見(Opinion)がある。このうち、意見(Opinion)を伝えるのがプレゼンテーションだ。例えば、「情報漏洩は年間5万件起きている」と単に述べるのではなく、「情報漏洩は年間5万件おきており、これは大変な脅威ですね」と、意見を伝えるようにする。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0313.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0313.jpg" alt="事実と意見の組み合わせ" width="768" height="512" class="alignnone size-full wp-image-7203" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0313.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0313-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0313-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<h3>プレゼンテーションでは必ず引用する</h3>

<p>プレゼンテーションは、どうしても自分本位になりがちである。それは時には良いこともあるが、自分のプレゼンテーションのときこそ、周りや前後を引用する。</p>

<p>例えば、「私も先ほどの人と同じように…」のように述べる。もし、発表順でトップバッターであれば、「皆さんをはじめ、多くの人があまり経験のない…」のようにすると、プレゼンテーションが上手に聞こえる。</p>

<h3>絶対時間と相対時間を織り交ぜる</h3>

<p>時を表すセンテンスには、絶対時間と相対時間がある。絶対時間とは、例えば「2016年6月」という表現で、相対時間とは今を基準にした「2年後」のような表現である。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0315.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0315.jpg" alt="絶対時間と相対時間" width="768" height="512" class="alignnone size-full wp-image-7220" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0315.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0315-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0315-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>相対時間は言葉づかいのマジックの1つであり、相手の立場に立った表現となるため、相手に強い印象を持たせられる。例えば、「2時間後の今日9時に」は、相対時間と絶対時間を織り交ぜた表現となる。</p>

<h3>言葉を修飾をせよ</h3>

<p>センテンスは、名詞と修飾する言葉でできている。プレゼンテーションでは修飾する言葉を伝えるのだ。例えば、「皆さんは」とだけ言わない。「非常にスキルの高い開発者である皆さんは」と述べる。これにより、プレゼンテーションがカッコよく、リッチに聴こえる。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0316.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0316.jpg" alt="言葉は修飾する" width="768" height="512" class="alignnone size-full wp-image-7224" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0316.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0316-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0316-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>このテクニックは日常でも使われている。レストランにいくと、メニューには単に「サラダ」とは書かれておらず、「シェフの気まぐれサラダ」というように修飾されている。</p>

<h3>3つの語尾</h3>

<p>プレゼンテーションでは、センテンスの語尾が重要になる。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0317.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0317.jpg" alt="3つの語尾活用方法" width="768" height="512" class="alignnone size-full wp-image-7207" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0317.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0317-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0317-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<h4>体現止め</h4>

<p>名詞でビシっとセンテンスを止める方法だ。例えば、「我々はこうやって危険性を指摘してきたのです」ではなく、「我々が行ってきたのはとても重要なことです、そう、危険性の指摘」のように述べる。</p>

<h4>質問と回答</h4>

<p>自ら質問して、自ら答える方法だ。例えば、「今日はなぜiPadを使っていると思いますか？　カメラとして使うのです」のように述べる。</p>

<h4>魅力の語尾</h4>

<p>魅力的な言葉をセンテンスの最後に残す方法だ。例えば、「1024段階の筆圧感知をするスタイラスペン」は、普通の言い方だが、「こちらのスタイラスペン、1024段階、高精密・高精細です」とすると、魅力的なキーワードが最後に残る。</p>

<h3>催眠効果を植え付ける</h3>

<p>プレゼンの中盤や後半で、「だんだん皆さん理解して、わかりやすくなりましたよね」と話すと、相手が理解が深まったかなぁ、というように感じる。これはTV、情報番組でよく利用されるテクニックだ。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0319.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0319.jpg" alt="催眠効果" width="768" height="512" class="alignnone size-full wp-image-7226" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0319.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0319-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0319-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>もし、相手に伝わってなかったら、相手は質問してくる。相手に伝わったという印象を持ってもらうほうが重要なのだ。</p>

<h3>一般的にやってはいけない事項</h3>

<p>若い男性に多い行為で「たとえ<strong>ばー</strong>」「今日<strong>はー</strong>」のように、単語の後の母音強調があると、だらしなく聴こえる。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0320.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0320.jpg" alt="一般的に指摘される注意事項" width="768" height="512" class="alignnone size-full wp-image-7209" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0320.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0320-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0320-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>また、エンジニアに大変多いのは「はいっ」と述べてしまう癖だ。スライドがめくれるたびに「はいっ、続いては…」のように、話すとカッコ悪く聴こえる。これを、直すのに便利なテクニックとして、スライドが先ではなく、しゃべりを先にする方法がある。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0321.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0321.jpg" alt="スライドを送る前にしゃべる" width="768" height="512" class="alignnone size-full wp-image-7208" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0321.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0321-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0321-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>つまり、自分が話し始めてから、ほんの少し遅れてスライドが表示されることで、自分がプレゼンテーションをリードするようにする。なぜ、こうするかというと、先にスライドを出すと、相手はスライドを先に読んでしまい、スピーカーの話を聴かなくなってしまうからだ。</p>

<h2>デモの極意</h2>

<p>これまで、スピーチのテクニックについて説明してきたが、デモのテクニックについても説明する。</p>

<h3>Touch Feedbackを利用する</h3>

<p>Touch Feedbackとは、指でどこを押しているところが分かるという、Windows OSの持つユニークな機能である。TouchFeedbackで、コントロールパネルから設定可能だ。本機能はWindows Phone8.1でも設定可能だ。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0327.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0327.jpg" alt="TouchFeedbackの設定(windows phone)" width="768" height="512" class="alignnone size-full wp-image-7215" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0327.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0327-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0327-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<h3>ピクチャーパスワードを設定する</h3>

<p>ピクチャーパスワードとは、Windows8の特徴的なパスワード機能で、線や丸、タップといったタッチ操作の組み合わせで、ユーザー認証を実現する仕組みだ。画像には、動物や圧倒的に美しい景色を入れてほしい。</p>

<h3>デモは画面の上半分でデモをする</h3>

<p>人間の特性として、画面の上のほうでおきていることは、素早く綺麗に見える。そのため、デモは画面の上半分で行うべきだ。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0337.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0337.jpg" alt="画面上部を利用する" width="768" height="512" class="alignnone size-full wp-image-7204" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0337.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0337-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0337-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>画面の下に目がいくと、タスクバーに目が行きがちになるので、画面上部での操作が良い。</p>

<h3>より自然に見せるため拡大と蛍光ペン</h3>

<p>Windowsの標準機能や、ZoomIt等の拡大の機能を用い、さらに蛍光ペン（マジカル・ペンシル等）を用いて、視点誘導することで、デモンストレーションが綺麗に見える。</p>

<h3>マウスは動かしすぎない</h3>

<p>マウスを動かしてはいけない、なぜならば見ている人が追ってしまうからだ。講演者が緊張するとマウスを動かしがちだが、説明しているときはなるべく動かさない。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0341.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0341.jpg" alt="マウスを動かさない、読み上げをする" width="768" height="512" class="alignnone size-full wp-image-7205" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0341.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0341-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0341-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<h3>タッチは一瞬で行わない</h3>

<p>タッチは一瞬で行わず、場所を特定するようにすることで、相手が何を押しているかわかるようになる。たった一秒のテクニックだが、デモが上手いように見える。</p>

<h3>画面を読み上げよ</h3>

<p>デモの上手い人は「画面にあるオレンジ色のタイルであるムービーショータイムを…」のように具体的に述べる。その結果、プレゼンテーションが分かりやすくなり、デモが上手く見える。単に「映画を見てみようと思います」とは言わない。</p>

<h3>ショートカットはみせよ</h3>

<p>Ctrl+Cなどのショートカットは便利だが、右クリックでメニューを出して、コピーをする。なぜならば、ショートカットを使うと、見ている人がわかりにくいからだ。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0343.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0343.jpg" alt="ショートカットは見せる" width="768" height="512" class="alignnone size-full wp-image-7222" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0343.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0343-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0343-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>プレゼンテーションでは、見ている人が何をやっているか分からないと意味がない。</p>

<h3>プレゼンテーション・デモ中は空白は作らない</h3>

<p>空白を作ると、「製品が遅い、止まっちゃった？」という緊張感を相手に与える。また、それにより自分にも緊張感を与えてしまう。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0345.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0345.jpg" alt="デモ中は空白を作らない" width="768" height="512" class="alignnone size-full wp-image-7213" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0345.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0345-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0345-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>プレゼンテーション・デモ中では、話していれば話しているほど、相手は早く感じる。</p>

<h3>競合製品は使わせていただく</h3>

<p>「Aの機能はBの機能より劣っているからダメ」というように比較するのではなく、機能の有無の違いやコンセプトを説明する。時には競合製品の方が出来が良くてもいい。</p>

<h3>機材の特性、技術の特性を伝える</h3>

<p>例えば、Bluetoothを使うのであれば、ケーブルレスであることを強調する。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0349.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0349.jpg" alt="機材の特性、技術の特性を伝える" width="768" height="512" class="alignnone size-full wp-image-7211" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0349.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0349-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0349-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<p>また、データの転送が何秒でされるか事前に把握して見せる、相手に機材の特性・技術の特性を伝える。</p>

<h3>単純なことでも大胆に、華麗に</h3>

<p>例えば、プレゼンスという機能がある。退席中をLyncのプレゼンスを出すために、実際に、ノートブックを閉じる作業を見せることで、Lyncのプレゼンスがオフラインになるのを、見せる。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0359.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0359.jpg" alt="プレゼンス変更の操作を見せる" width="768" height="512" class="alignnone size-full wp-image-7228" srcset="/wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0359.jpg 640w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0359-300x200.jpg 300w, /wp-content/uploads/2014/06/20140604_decode_prezen_IMG_0359-207x137.jpg 207w" sizes="(max-width: 768px) 100vw, 768px" /></a></p>

<h2>最後に</h2>

<p>本セッションでは、スピーチのテクニック、デモのテクニックについて、お伝えした。本セッションの内容が皆様のお役に立つことを願っている。</p>

<h5>(編集部注釈)</h5>

<p>本記事は実際にプレゼンテーションを行った西脇氏の許可のもと作成されています。</p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>イベント生中継！ html5j パフォーマンス部 第一回勉強会の模様をライブでお届けします</title>
		<link>/yusuke-naka/6410/</link>
		<pubDate>Thu, 08 May 2014 09:58:13 +0000</pubDate>
		<dc:creator><![CDATA[仲 裕介]]></dc:creator>
				<category><![CDATA[システム開発]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[パフォーマンス]]></category>
		<category><![CDATA[高速化]]></category>

		<guid isPermaLink="false">/?p=6410</guid>
		<description><![CDATA[連載： イベントレポート (16)この記事では、html5j パフォーマンス部 第一回勉強会の模様をライブでお届けします。勉強会に参加したくても参加できなかった方は必見です！ はじめに html5jでは部活動という形で様...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (16)</div><p>この記事では、<a href="http://atnd.org/events/50159" title="atnd" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">html5j パフォーマンス部 第一回勉強会</a>の模様をライブでお届けします。勉強会に参加したくても参加できなかった方は必見です！</p>

<p><span id="more-6410"></span></p>

<h2>はじめに</h2>

<p>html5jでは部活動という形で様々な分野の勉強会が活発に行われています。今回の勉強会を主催するパフォーマンス部もその一つで、昨年暮れに構想が持ち上がり、今回第一回目の勉強会開催となりました。今回の会場はDeNAさんの会議室です。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/photo1.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/photo1.jpg" alt="photo1" width="576" height="324" class="size-full wp-image-6417" srcset="/wp-content/uploads/2014/05/photo1.jpg 576w, /wp-content/uploads/2014/05/photo1-300x168.jpg 300w, /wp-content/uploads/2014/05/photo1-207x116.jpg 207w" sizes="(max-width: 576px) 100vw, 576px" /></a></p>

<p>本日の勉強会はWebパフォーマンスの最前線でどのような事が行われているのか、３名のスペシャリストが余すことなくしゃべります！</p>

<h2>開会の挨拶＆5jcupの告知</h2>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8700.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8700-300x200.jpg" alt="白石さん" width="300" height="200" class="alignright size-medium wp-image-6426" srcset="/wp-content/uploads/2014/05/IMG_8700-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8700-207x138.jpg 207w, /wp-content/uploads/2014/05/IMG_8700.jpg 640w" sizes="(max-width: 300px) 100vw, 300px" /></a>
はじめに、html5j管理人の白石さんから、開会の挨拶と今絶賛開催中の<a href="https://5jcup.org/" title="5jcup" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">5jcup</a>の告知が行われました。</p>

<p>5jcupにはWebパフォーマンス部でも<a href="https://5jcup.org/awards/html5j-performance" title="html5j-performance" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">「Webパフォーマンス賞」</a>という賞を提供しています。この賞は応募されたWeb作品のパフォーマンス計測を実際に行い、パフォーマンスへの配慮を怠っていないWebサイト、Webアプリケーションに対して賞を提供するというものです。イベントの最後に、Webパフォーマンス部部長の竹洞さんから、現在は「副賞なし」となっていますが、現在、<strong>副賞を用意する方向で検討している</strong>との追加コメントが有りました。興味がある方は是非応募してみましょう！　
<a href="https://5jcup.org/" title="5jcup" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/webperformance_awards1.png" alt="webperformance_awards" width="497" height="180" class="aligncenter size-full wp-image-6634" srcset="/wp-content/uploads/2014/05/webperformance_awards1.png 497w, /wp-content/uploads/2014/05/webperformance_awards1-300x108.png 300w, /wp-content/uploads/2014/05/webperformance_awards1-207x74.png 207w" sizes="(max-width: 497px) 100vw, 497px" /></a></p>

<h2>Session 1.【総論】Webパフォーマンス事始め</h2>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8720.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8720.jpg" alt="竹洞さん２" width="300" height="200" class="alignright size-medium wp-image-6433" srcset="/wp-content/uploads/2014/05/IMG_8720.jpg 640w, /wp-content/uploads/2014/05/IMG_8720-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8720-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a>
html5jパフォーマンス部部長の竹洞さんのセッションです。竹洞さんは、元々は司法書士事務所で働いていて、そこからIT業界にキャリアチェンジし、VMwareやAKAMAI、Verizonを経て現在は、Keynoteという1995年に世界ではじめてパフォーマンス計測（クライアントはヤフー）を行った会社の日本代表をされています。</p>

<p>今回のセッションでは、欧米ではどのようなWebのパフォーマンス管理がなされているのか、国内企業のWebサイトのパフォーマンスの現状を紹介しつつ、Webパフォーマンスの最前線の手法や考え方について説明がありました。</p>

<h3>日本のWeb・パフォーマンスサイトの現状</h3>

<p>日本の主要なWebサイトのパフォーマンス計測結果が示されました。現在、アメリカの主要なWebサイトのトップページは読み込みが１秒きっており、それと比べれば、日本のサイトは軒並み遅いという現状が有ります。このスライドは日本のデスクトップサイトのパフォーマンス測定結果（正規分布図を箱ひげ図に変換）です。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8736.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8736.jpg" alt="IMG_8736" width="640" height="427" class="aligncenter size-full wp-image-6450" srcset="/wp-content/uploads/2014/05/IMG_8736.jpg 640w, /wp-content/uploads/2014/05/IMG_8736-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8736-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>パフォーマンスを見る際に統計学の観点で重要なことは、複数の測定データを用いて平均値からどの程度離れているか（偏差）を算出し比較することになります。平均値を単純に比較してはいけません。偏差が離れていれば離れているほどばらつきが多い（成績が悪い）といえ、逆に偏差が短いほどサイト品質が良いといえます。この偏差を基に標準偏差を算出し、正規分布図に落とし込み、複数のデータを重ねて見やすいように箱ひげ図に変換したものが、上記画像となります。グラフ左側のひげから右側の箱まで（全体の７５％）に本来は全てのデータが収まることが望ましいのですが、右側にひげとしてそれに収まりきれていない２５％のデータが出ているのがわかります。</p>

<p>※統計学の基礎知識含めて竹洞さんが詳しく説明していますので、もっと知りたい方はYoutube動画をご覧ください。</p>

<h3>Webサイト品質管理</h3>

<p>Webサイト品質管理の為のパフォーマンス計測は定常的に観測を行うことが大切です。FirefoxやChromeの計測ツールで図るのはもちろんOKですが、一時的なデータではなく、継続して計測しなければ、「遅い」というパフォーマンスの情報は見えてきません。先述した箱ひげ図の右側２５％のデータがどういう状況で発生するのか、どのようなパターンでこのデータが変化するのかを定常的な観測データから把握し、Webサイトのパフォーマンス問題を特定していくことが重要となります。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8742.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8742.jpg" alt="IMG_8742" width="640" height="427" class="aligncenter size-full wp-image-6459" srcset="/wp-content/uploads/2014/05/IMG_8742.jpg 640w, /wp-content/uploads/2014/05/IMG_8742-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8742-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<h3>パフォーマンス計測の手法</h3>

<p>大きく分けると以下３種類あります。日本ではServer-Side Monitoringが主流ですが、世界的にホットになっているのはReal User Monitoringとなります。しかしながら、どれか特定の方法で取得するのではなく、３種類全てを活用する必要があります。</p>

<ul>
<li>Server-Side Monitoring</li>
<li>Synthesis Monitoring</li>
<li>Real User Monitoring（RUM）</li>
</ul>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8744.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8744.jpg" alt="IMG_8744" width="640" height="427" class="aligncenter size-full wp-image-6460" srcset="/wp-content/uploads/2014/05/IMG_8744.jpg 640w, /wp-content/uploads/2014/05/IMG_8744-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8744-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>Server-Side Monitoringで測定したサーバサイドでのパフォーマンス値、Synthesis Monitoringで測定したISPでのパフォーマンス値、Real User Monitoringで測定したエンドユーザ側でのパフォーマンス値を適切な手法で計算することで、パフォーマンス問題の原因を特定することが可能になります。どれか一つに手法を絞るのではなく、それぞれの手法の特徴を理解し組み合わせることが重要となってきます。</p>

<p>尚、パフォーマンスデータの取り方については、統計学で「実験計画法」という手法が確立しています。実験計画法を利用するにあたっては３つの原則「局所管理化」、「反復」、「無作為化」があります。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8749.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8749.jpg" alt="IMG_8749" width="640" height="427" class="aligncenter size-full wp-image-6467" srcset="/wp-content/uploads/2014/05/IMG_8749.jpg 640w, /wp-content/uploads/2014/05/IMG_8749-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8749-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>また、「観測者効果」の問題も考慮する必要があります。Google Analyticsのコードを入れて安心してはいけません。それが測定結果にどのような影響を与えるのかを把握する必要があります。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8750.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8750.jpg" alt="IMG_8750" width="640" height="427" class="aligncenter size-full wp-image-6468" srcset="/wp-content/uploads/2014/05/IMG_8750.jpg 640w, /wp-content/uploads/2014/05/IMG_8750-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8750-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>竹洞さんのセッションはかなりのボリュームです。詳しく知りたい方はYoutube動画をご覧いただくか、後日公開される発表資料をご覧ください。</p>

<h2>Session 2.【各論1】JavaScriptの高速化</h2>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8774.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8774.jpg" alt="IMG_8774" width="300" height="200" class="alignright size-medium wp-image-6488" srcset="/wp-content/uploads/2014/05/IMG_8774.jpg 640w, /wp-content/uploads/2014/05/IMG_8774-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8774-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a>
続いては株式会社ディー・エヌ・エー坊野さんのセッションです。坊野さんはもともとWebブラウザの開発を行っていたということです。</p>

<p>今回のセッションでは、Webブラウザ開発者の視点から、どのようなJavaScriptを書けばWebブラウザが高速に実行できるのかという観点で様々なテクニックの解説がありました。また、本題に入る前に、DeNAがなぜHTML5にてアプリケーション開発に取り組むのか、具体的にはどのようなことをやっているのかについても簡単に説明がありました。</p>

<h3>HTML5アプリケーション開発と最適化</h3>

<p>HTML5でのアプリケーション開発は以下の様なことが一般的に言われます。</p>

<ul>
<li>コンパイル不要</li>
<li>遅い</li>
<li>メモリ使用量が多い</li>
</ul>

<p>しかし、最近のブラウザはJavaScriptのコードも機械語にコンパイルして実行するため、Javaなどと比較してなぜ遅いのか？率直な疑問が出てきます。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8779.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8779.jpg" alt="IMG_8779" width="640" height="427" class="aligncenter size-full wp-image-6493" srcset="/wp-content/uploads/2014/05/IMG_8779.jpg 640w, /wp-content/uploads/2014/05/IMG_8779-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8779-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<h3>JavaScriptのコンパイラの動き</h3>

<p>まず、JavaScriptのコンパイラの動きについてについて見ていきます。ブラウザにおけるJavaScriptの実行プロセスは以下のとおり。</p>

<ol>
<li>JavaScriptコードを解析</li>
<li>中間言語に変換</li>
<li>コードブロック解析</li>
<li>機械語コードに変換</li>
<li>実行</li>
<li>実行結果を基にして最適化コードを作成し、実行</li>
</ol>

<p>最近のJavaScriptコンパイラは複数回のコンパイルを行います。（上記プロセスだと5と6が該当）なぜか？静的解析だけではJavaScriptコードの最適化は困難なので、一度最適化なしのコードを実行、プロファイラを用いて最適化の可能性などについて判定を行い、その結果を用いて最適化されたコードを生成、再コンパイルしているのです。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8780.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8780.jpg" alt="IMG_8780" width="640" height="427" class="aligncenter size-full wp-image-6494" srcset="/wp-content/uploads/2014/05/IMG_8780.jpg 640w, /wp-content/uploads/2014/05/IMG_8780-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8780-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<h3>JavaScriptコード最適化の観点</h3>

<p>ブラウザ開発者からみたJavaScriptコード最適化の観点は、以下の通りとなります。JavaSciptコンパイラが出力する機械語コードを最適なものにするように、JavaScriptのコードを変えてあげればいいのです。また、JavaScriptコンパイラの出力のみにある余計なコードは全て最適化を阻害するものとなるため、極力排除する方がよいでしょう。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8784.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8784.jpg" alt="IMG_8784" width="640" height="427" class="aligncenter size-full wp-image-6500" srcset="/wp-content/uploads/2014/05/IMG_8784.jpg 640w, /wp-content/uploads/2014/05/IMG_8784-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8784-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>次に、具体的にどのようなものが最適化を阻害するオーバーヘッドになるかを見ていきます。</p>

<p>JavaScript APIのオーバーヘッド、例えば<strong>Date.now()</strong>・・・
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8786.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8786.jpg" alt="IMG_8786" width="640" height="427" class="aligncenter size-full wp-image-6502" srcset="/wp-content/uploads/2014/05/IMG_8786.jpg 640w, /wp-content/uploads/2014/05/IMG_8786-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8786-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>HTML5 APIのオーバヘッド、例えば<strong>document.createElement(&#8216;canvas&#8217;)</strong>・・・
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8788.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8788.jpg" alt="IMG_8788" width="640" height="427" class="aligncenter size-full wp-image-6504" srcset="/wp-content/uploads/2014/05/IMG_8788.jpg 640w, /wp-content/uploads/2014/05/IMG_8788-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8788-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>これらの処理は複数の工程処理を行う必要があり、実行するにあたってはオーバヘッドになってしまいます。</p>

<h3>JavaScript関数の最適化</h3>

<p>最適化にあたっては、先ほどの観点にならってまず、同一のコードをJavaScript関数とC++関数で実行し速度を比較してみます。今回の例では、前者は183us〜828us（ブラウザにより差分有り）、後者は0.6usという実行結果の差ができました。次に、相違点を列挙し、コードを最適化するというプロセスを実施します。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8792.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8792.jpg" alt="IMG_8792" width="640" height="427" class="aligncenter size-full wp-image-6508" srcset="/wp-content/uploads/2014/05/IMG_8792.jpg 640w, /wp-content/uploads/2014/05/IMG_8792-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8792-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<h3>Web開発者が最適化の美味しいとこどりをするには？</h3>

<p>これまで説明してきたようなことをブラウザ開発者はやっていますが、Web開発者の皆さんは美味しいところだけうまく取り入れて下さい。
具体的に、最適化のやり方として「関数のインライン化」や「変数名の短縮」などはツールを活用すればできるため、オススメしません。おすすめの手法は以下の通りです。</p>

<ul>
<li>ソーシャルネットワークを活用して有識者に聞く（そのためにはわかりやすいコードを書こう）</li>
<li>JavaやC++と比較しやすいコードを書く</li>
<li>API Proxyを使う</li>
<li>Assertionを用いて型チェックを行う</li>
</ul>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8794.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8794.jpg" alt="IMG_8794" width="640" height="427" class="aligncenter size-full wp-image-6511" srcset="/wp-content/uploads/2014/05/IMG_8794.jpg 640w, /wp-content/uploads/2014/05/IMG_8794-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8794-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>最後に、大事なことは「コンパイラの気持ちになってコードを書く！」ということ。</p>

<h2>Session 3.【各論2】ブラウザにやさしいHTML/CSS</h2>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8804.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8804.jpg" alt="IMG_8804" width="300" height="200" class="alignright size-medium wp-image-6529" srcset="/wp-content/uploads/2014/05/IMG_8804.jpg 640w, /wp-content/uploads/2014/05/IMG_8804-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8804-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a>
最後は、株式会社レイハウオリ 猪狩さんのセッションです。猪狩さんはWebサイトの開発、高速化、HTMLの構造化などをかなり突き詰めてやっていて、雑誌執筆などもされています。</p>

<p>Webの高速化を行うためにはブラウザの仕組みを理解する必要があります。下のサイトをみればだいたい把握できるそうですが、内容はかなり難しいということ。そのため今回は、高速化に繋がる部分を簡単に紹介するとともに、沢山のデモを交えた体感型のセッションとなりました。</p>

<p><a href="http://www.html5rocks.com/ja/tutorials/internals/howbrowserswork/" title="HTML5 Rocks" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">http://www.html5rocks.com/ja/tutorials/internals/howbrowserswork/</a></p>

<h3>ブラウザにモテるHTML/CSSとは</h3>

<p>よく言われるWeb高速化の３原則に、「少なくする（数）」、「軽くする（量）」、「近くする（距離）」があります。
具体的には、以下のようになります。</p>

<p>少なくする（数）</p>

<ul>
<li>CSSスプライト</li>
<li>ファイル結合</li>
</ul>

<p>軽くする（量）</p>

<ul>
<li>縮小化</li>
<li>テキスト圧縮</li>
<li>キャッシュ利用</li>
</ul>

<p>近くする（距離）</p>

<ul>
<li>CDNを利用する</li>
</ul>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8822.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8822.jpg" alt="IMG_8822" width="640" height="427" class="aligncenter size-full wp-image-6545" srcset="/wp-content/uploads/2014/05/IMG_8822.jpg 640w, /wp-content/uploads/2014/05/IMG_8822-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8822-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>これら基本的なテクニックについて、もっと詳しい理解を得て応用力をつけ、有用に活用できるようにする必要があります。</p>

<h3>Webページが表示されるまでを知ろう</h3>

<p>Webページを表示するまでの大まかな流れは以下のとおりです。</p>

<ol>
<li>HTTPリクエスト① &#8211; HTMLのみをリクエストする</li>
<li>DNSで名前解決 &#8211; ドメインからIPアドレスを調べる</li>
<li>TCP接続 &#8211; サーバに接続を行う</li>
<li>HTTPリクエスト② &#8211; HTMLのパース結果に基づき各リソースをリクエストする</li>
</ol>

<p>※ これが繰り返されます</p>

<p>HTTPリクエスト②では、HTMLの中身をパースして個別のリソースをサイトの上位から順に取得していきます。
ダウンロードは並列で逐次的に行われます。最大並列数はブラウザによって異なります。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8828.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8828.jpg" alt="IMG_8828" width="640" height="427" class="aligncenter size-full wp-image-6553" srcset="/wp-content/uploads/2014/05/IMG_8828.jpg 640w, /wp-content/uploads/2014/05/IMG_8828-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8828-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>１ホストあたりの各ブラウザの同時接続数
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8829.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8829.jpg" alt="IMG_8829" width="640" height="427" class="aligncenter size-full wp-image-6554" srcset="/wp-content/uploads/2014/05/IMG_8829.jpg 640w, /wp-content/uploads/2014/05/IMG_8829-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8829-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>IE6〜IE7は同時に２本なので他のブライザに比べかなり時間がかかります。</p>

<p>HTMLが読み込まれた後、表示されるまでのプロセスは以下のとおりです。HTMLのパース結果からDOM treeが作られて、それからRender treeが作られます。最後はそれを画面に描画します。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8831.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8831.jpg" alt="IMG_8831" width="640" height="427" class="aligncenter size-full wp-image-6556" srcset="/wp-content/uploads/2014/05/IMG_8831.jpg 640w, /wp-content/uploads/2014/05/IMG_8831-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8831-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>レンダリングプロセスの中でも、特定のCSSを利用するとLender Layerが生成され、その中でも特にGraphic Layerの動きに注目します。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8834.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8834.jpg" alt="IMG_8834" width="640" height="427" class="aligncenter size-full wp-image-6561" srcset="/wp-content/uploads/2014/05/IMG_8834.jpg 640w, /wp-content/uploads/2014/05/IMG_8834-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8834-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>CSSセレクタマッチングについても取り上げます。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8836.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8836.jpg" alt="IMG_8836" width="640" height="427" class="aligncenter size-full wp-image-6564" srcset="/wp-content/uploads/2014/05/IMG_8836.jpg 640w, /wp-content/uploads/2014/05/IMG_8836-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8836-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>JavaScriptの実行については以下のとおりです。
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8838.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8838.jpg" alt="IMG_8838" width="640" height="427" class="aligncenter size-full wp-image-6568" srcset="/wp-content/uploads/2014/05/IMG_8838.jpg 640w, /wp-content/uploads/2014/05/IMG_8838-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8838-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<h3>ブラウザとユーザの気持ちになる</h3>

<p>ブラウザの視点に立ってみると、レンダリングプロセスを実行する上で重要となる点は以下の通りです。</p>

<ul>
<li>見た目から表示したい ->  順序の最適化</li>
<li>時間がかること大変なことは、できるだけ避けたい -> リクエスト、サイズ、消費メモリの最小化</li>
<li>いろんなこと一変にしたくない -> 消費メモリの分散化</li>
<li>他のブラウザいなくなれ（こっそりｗ）</li>
</ul>

<p>ユーザーの気持ちはどうでしょうか？</p>

<ul>
<li>早くコンテンツを見たい -> 順序の最適化</li>
<li>待ちたくない -> リクエスト、サイズ、消費メモリの最小化</li>
<li>スムーズであって欲しい -> 消費メモリの分散化</li>
</ul>

<p>それぞれに共通な「順序の最適化」、「リクエスト、サイズ、消費メモリの最小化」、「消費メモリの分散化」の観点で、それぞれの手法（アプローチ）をライブデモで紹介します。これは、低スペックな端末で見るとより効果がわかりやすいと思います。</p>

<h3>デモで分かるブラウザにやさしいHTML/CSS</h3>

<p>ライブデモはこちらのサイトにまとまっています。</p>

<p><a href="http://goo.gl/zA4ZvQ" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">http://goo.gl/zA4ZvQ</a></p>

<p>ID : tech , PASS : tech-lab</p>

<h4>DNSプリフェッチ</h4>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8843.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8843.jpg" alt="IMG_8843" width="640" height="427" class="aligncenter size-full wp-image-6575" srcset="/wp-content/uploads/2014/05/IMG_8843.jpg 640w, /wp-content/uploads/2014/05/IMG_8843-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8843-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a>
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8849.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8849.jpg" alt="IMG_8849" width="640" height="427" class="aligncenter size-full wp-image-6583" srcset="/wp-content/uploads/2014/05/IMG_8849.jpg 640w, /wp-content/uploads/2014/05/IMG_8849-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8849-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<h4>リソース読み込み順序</h4>

<p>OKパターン
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8850.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8850.jpg" alt="IMG_8850" width="640" height="427" class="aligncenter size-full wp-image-6586" srcset="/wp-content/uploads/2014/05/IMG_8850.jpg 640w, /wp-content/uploads/2014/05/IMG_8850-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8850-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>NGパターン
<a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8851.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8851.jpg" alt="IMG_8851" width="640" height="427" class="aligncenter size-full wp-image-6587" srcset="/wp-content/uploads/2014/05/IMG_8851.jpg 640w, /wp-content/uploads/2014/05/IMG_8851-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8851-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<h4>JSアニメーションとCSSアニメーションの違い</h4>

<p>原則として、JSアニメーションよりCSSアニメーションの方が高速なので、CSSアニメーションを利用するようにしましょう。
特にモバイルでは重要になってきます。
また、モバイルでのCSSアニメーションにおいては、アニメーションする要素はposition absoluteにしなければパフォーマンスで問題が出てきます。</p>

<p>※ライブデモの詳細はYoutube動画をご覧ください。</p>

<h3>イマドキのHTML/CSS高速化って？</h3>

<p>最後に、イマドキのHTML/CSS高速化ってどうなってるの？とよく聞かれるため、昔と変わってきたことに着目して幾つか取り上げます。</p>

<h4>CSSスプライトはしない</h4>

<p>メンテナンスコストの方がパフォーマンスにおけるメリットを上回るため仕様はおすすめしません。特にモバイルでは、回線の品質がまちまちまので、スプライトして画像をまとめるとそこがボトルネックになることもあるため、例えば、１ページの画像数が１０個いかであれば、分割しておいたほうがメリットが大きいのではないでしょうか。</p>

<p>＊比較デモがあるため興味がある方はYoutube動画をご覧ください。</p>

<h4>CSSセレクタのパフォーマンスは気にしない？</h4>

<p>最近はブラウザのCSS実行エンジンが早いので気にしません。よく使います。</p>

<h4>可能な限りベクターでコーディング</h4>

<p>デザインはCSSで極力再現しましょう。CSSでできない場合はSVG、それが難しいようであればPNGでやりましょう。Webフォントも良いアプローチです。</p>

<h4>PCのみ、モバイルのみ、レスポンシブの区分けが大事</h4>

<p>それぞれのターゲットによって設計方針は変えていくべきです。</p>

<h4>パフォーマンス &lt; メンテナンス</h4>

<p>メンテナンス性を犠牲にしてパフォーマンスを追求するのはよくありません。</p>

<h2>Webパフォーマンス部の今後の予定</h2>

<p>Webパフォーマンス部では、第２回から第１１回まで予定がすでに決まっています。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/05/IMG_8870.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/05/IMG_8870.jpg" alt="IMG_8870" width="640" height="427" class="aligncenter size-full wp-image-6622" srcset="/wp-content/uploads/2014/05/IMG_8870.jpg 640w, /wp-content/uploads/2014/05/IMG_8870-300x200.jpg 300w, /wp-content/uploads/2014/05/IMG_8870-207x138.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>

<p>日本企業が世界に進出するためにはWebサイトのパフォーマンスは大事です！
今回の勉強会に参加できなかった方は、是非次回以降の勉強会に参加してみては如何でしょうか？</p>

<h2>勉強会の動画配信はこちら</h2>


<!-- iframe plugin v.4.3 wordpress.org/plugins/iframe/ -->
<iframe width="560" height="315" src="//www.youtube.com/embed/KPYSotZCPfs" frameborder="0" 0="allowfullscreen" scrolling="yes" class="iframe-class"></iframe>


<p>＊この勉強会は一見の価値有りです。参加できなかった方は是非一度全編通して見てみることをオススメします。</p>

<h2>ライブライティングについて</h2>

<p>この記事は、イベント開催中にライブライティングしたもので、改訂履歴は以下の通りとなります。</p>

<ul>
<li>2014/5/9 18:40 &#8211; 最終版記事に更新完了</li>
<li>2014/5/8 22:00 &#8211; イベント終了（この時点では記事は書きかけ）</li>
<li>2014/5/8 19:00 &#8211; 記事公開</li>
</ul>

<p>パフォーマンス部ロゴデザイン：Kaori Nishino (@kanishionori)</p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>CSS Text Decoration、ルビ、Shadow DOMに挑戦「Test the Web Forward Meetup (仮), Tokyo #2」レポート</title>
		<link>/myakura/6193/</link>
		<pubDate>Thu, 01 May 2014 06:58:00 +0000</pubDate>
		<dc:creator><![CDATA[矢倉 眞隆]]></dc:creator>
				<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[html5j]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[テスト]]></category>

		<guid isPermaLink="false">/?p=6193</guid>
		<description><![CDATA[連載： イベントレポート (15)Test the Web Forward (TestTWF)とは、W3Cの仕様を実装・勧告させるために必要なテストケースをみんなで書こうというイベントです。Adobeが中心となり世界各国...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (15)</div><p>Test the Web Forward (TestTWF)とは、W3Cの仕様を実装・勧告させるために必要なテストケースをみんなで書こうというイベントです。Adobeが中心となり世界各国で開催され、その成果を認められ昨年秋にW3Cに取り込まれました。</p>

<p>日本でも昨年6月にTestTWFが開催され、成功を収めました。この活動を続けていこうと始めたのがhtml5jテスト部とTestTWF Meetup (仮)です。昨年9月に<a href="https://html5experts.jp/myakura/2704/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">第1回目を開催</a>しています。</p>

<p>少し間が空いてしまいましたが、4月12日、<a href="http://testthewebforward.org/events/2014/tokyo.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Test the Web Forward Meetup (仮), Tokyo #2</a>を開催しました。</p>

<div id="attachment_6200" style="width: 1034px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/04/e2cb9c8a64da47a4b4a9de370618981f-1024x682.jpeg" width="1024" height="682" class="size-large wp-image-6200" srcset="/wp-content/uploads/2014/04/e2cb9c8a64da47a4b4a9de370618981f-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/e2cb9c8a64da47a4b4a9de370618981f-300x199.jpeg 300w, /wp-content/uploads/2014/04/e2cb9c8a64da47a4b4a9de370618981f-207x137.jpeg 207w, /wp-content/uploads/2014/04/e2cb9c8a64da47a4b4a9de370618981f.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /><p class="wp-caption-text">今回はAdobeさんに会場をご提供いただきました。おしゃれオフィスでした</p></div>

<h2>3つの仕様のテストに挑戦</h2>

<p>前回のTestTWF Meetup (仮)では、対象とする仕様を特に決めていませんでした。これはスタッフ側がテストについてあまり知らず「とりあえず書いてみよう」という話から始めたイベントだったため、準備ができなかったことがあります。</p>

<p>しかしそういう状態ではテストのレビューも仕様の理解もできず、満足できませんでした。というわけで、今回は対象となる仕様を決め、さらにそれらの仕様に明るい方をお呼びすることにしました。今回は次の3つを選びました。</p>

<ul>
<li><a href="http://dev.w3.org/csswg/css-text-decor/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">CSS Text Decoration</a></li>
<li>ルビ（<a href="http://www.w3.org/html/wg/drafts/html/master/text-level-semantics.html#the-ruby-element" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">HTML</a>、<a href="http://dev.w3.org/csswg/css-ruby/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">CSS</a>）</li>
<li><a href="http://w3c.github.io/webcomponents/spec/shadow/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Shadow DOM</a></li>
</ul>

<p>仕様のEditorやエキスパートに恵まれたため、なかなか先端技術的なセレクションになりました。</p>

<p>午前中はreftest, testharness.jsといったテストの書き方についてセッションを行いました。</p>

<div id="attachment_6224" style="width: 830px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/04/testharness_sekiguchi.jpg" width="820" height="400" class="size-full wp-image-6224" srcset="/wp-content/uploads/2014/04/testharness_sekiguchi.jpg 640w, /wp-content/uploads/2014/04/testharness_sekiguchi-300x146.jpg 300w, /wp-content/uploads/2014/04/testharness_sekiguchi-207x100.jpg 207w" sizes="(max-width: 820px) 100vw, 820px" /><p class="wp-caption-text">testharness.jsの説明はACCESSの関口さんにしていただきました</p></div>

<h3>CSSテストのエキスパートGérardさんも参加</h3>

<p>今回はさらに、CSSのテストのエキスパートであるGérard Talbotさんをお招きしました。Gérardさんは数年前からCSSのテスティングに関わり、数千ものテストケースをレビューしたり、テストケースを提供したりしているCSSテストのエキスパートです。</p>

<div id="attachment_6198" style="width: 1034px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/04/bd11461f3fb54379911c488e6ca50300-1024x682.jpeg" width="1024" height="682" class="size-large wp-image-6198" srcset="/wp-content/uploads/2014/04/bd11461f3fb54379911c488e6ca50300-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/bd11461f3fb54379911c488e6ca50300-300x199.jpeg 300w, /wp-content/uploads/2014/04/bd11461f3fb54379911c488e6ca50300-207x137.jpeg 207w, /wp-content/uploads/2014/04/bd11461f3fb54379911c488e6ca50300.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /><p class="wp-caption-text">Gérard Talbotさん。モントリオールからいらしてくださいました</p></div>

<p>Gérardさんには、CSSのテスト用フォント「<a href="http://www.w3.org/Style/CSS/Test/Fonts/Ahem/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Ahemフォント</a>」について解説していただきました。Ahemフォントはプラットフォームごとに異なる書体が使われるフォントの差異を埋めるテスト用のフォントで、文字の幅やベースラインからの高さがわかりやすい数値に固定されています。文字も矩形に塗りつぶされるので、組み合わせることで図形を描けたりします。</p>

<div id="attachment_6203" style="width: 800px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/04/ahem_baseline.png" width="790" height="419" class="size-full wp-image-6203" srcset="/wp-content/uploads/2014/04/ahem_baseline.png 640w, /wp-content/uploads/2014/04/ahem_baseline-300x159.png 300w, /wp-content/uploads/2014/04/ahem_baseline-207x109.png 207w" sizes="(max-width: 790px) 100vw, 790px" /><p class="wp-caption-text">Ahemフォントで「É p X」を表示したもの。幅は同じ1emでも、高さやベースラインからの位置が違います</p></div>

<p>他にも「テストの説明文は技術的すぎないこと（たとえば「box」という単語は避けるように注意されました）」「“not ***”などの表現を使う際はそこを太字にすると良い」といった、テストのスタイルに関する助言もいただきました。テストのレビューでは膨大なテストケースを短い時間で処理しなければならないため、簡単に、そしてだれでも判断できる表現が重要とのこと。</p>

<p>Gérardさんとお話していて感じたのは、テスティングへの熱意やひたむきさです。テストに関わる秘訣をお聞きしたところ「情熱をもって取り組むこと。そうすると忍耐強くテスティングに関われる。また、本当にテストが正しいのかを追求する姿勢も大事だ」とおっしゃっていました。彼が「最高傑作」としたテストとして <tt>vertical-align</tt> の挙動を確かめるテストケースを紹介してもらったのですが、制作には2年もかかったそうです。すべてのテストにこれだけかかるわけではないでしょうが、忍耐強さ、重要ですね……</p>

<h2>午後はグループごとにレクチャー＆テスト書き</h2>

<p>午後はCSS Text Decoration、ルビ、Shadow DOMとグループに分かれ、テストに必要な知識について学んだり、テストを書いたりしました。</p>

<div id="attachment_6206" style="width: 1034px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/04/ca143c7265bc439c8b565c6651245636-1024x682.jpeg" width="1024" height="682" class="size-large wp-image-6206" srcset="/wp-content/uploads/2014/04/ca143c7265bc439c8b565c6651245636-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/ca143c7265bc439c8b565c6651245636-300x199.jpeg 300w, /wp-content/uploads/2014/04/ca143c7265bc439c8b565c6651245636-207x137.jpeg 207w, /wp-content/uploads/2014/04/ca143c7265bc439c8b565c6651245636.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /><p class="wp-caption-text">CSS Text Decorationの部屋。Editorである石井さんがW3Cのプロセスから説明しています</p></div>

<div id="attachment_6208" style="width: 1034px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/04/4a495c3577044be79a39c049e4c28aa3-1024x682.jpeg" width="1024" height="682" class="size-large wp-image-6208" srcset="/wp-content/uploads/2014/04/4a495c3577044be79a39c049e4c28aa3-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/4a495c3577044be79a39c049e4c28aa3-300x199.jpeg 300w, /wp-content/uploads/2014/04/4a495c3577044be79a39c049e4c28aa3-207x137.jpeg 207w, /wp-content/uploads/2014/04/4a495c3577044be79a39c049e4c28aa3.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /><p class="wp-caption-text">ルビの部屋では、積極的に関わっている川幡さんによるHTML/CSSのルビに関するふかーい説明がありました</p></div>

<div id="attachment_6211" style="width: 1034px" class="wp-caption aligncenter"><img src="/wp-content/uploads/2014/04/1424aa8827344b079ab31eea34f64bb6-1024x682.jpeg" alt="Shadow DOMの部屋。エキスパートとしてGoogle坂本さん（写真右）に来ていただきました。また、W3Cのミーティングのため西海岸にいらしたShadow DOMのEditor夷藤さんにもGoogleハングアウトから参加していただきました" width="1024" height="682" class="size-large wp-image-6211" srcset="/wp-content/uploads/2014/04/1424aa8827344b079ab31eea34f64bb6-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/1424aa8827344b079ab31eea34f64bb6-300x199.jpeg 300w, /wp-content/uploads/2014/04/1424aa8827344b079ab31eea34f64bb6-207x137.jpeg 207w, /wp-content/uploads/2014/04/1424aa8827344b079ab31eea34f64bb6.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /><p class="wp-caption-text">Shadow DOMの部屋。一番右のGoogle坂本さんに来ていただきました。また、W3Cの会議終了直後で西海岸にいらっしゃるShadow DOMのEditor夷藤さんにもGoogleハングアウトで参加していただきました</p></div>

<p>仕様もエキスパートの方も参加者も違いますので、それぞれ異なる進み方をしていました。Shadow DOMの部屋はテスト環境構築に少し手間取ったため提供されているドキュメントに追記したり、古いShadow DOMのテストを修正するなど、アクティブな方が多かった印象です。CSS Text Decorationはreftestでテスト可能な機能があるかを探すのに一苦労。Gérardさんの助言などもあり、ひとつの機能について皆で分担してテストケースを書いていました。テスト書きやGitの操作でも助け合っていました。</p>

<p>ルビは仕様で要求する機能が複雑なため、まずはじっくりと時間をかけた説明がありました。それから、シンプルなテストケースを皆で写し書きし、それができたら少しだけ難しくするというステップバイステップなアプローチをとっていました。</p>

<p>テスト部はまだまだテストの書き方について教えるノウハウが足りていません。こうした異なるアプローチを見たことで、いろいろなやり方ができるなあと思いました。今後の活動に活かせればと思います。</p>

<p>イベントも終わりに近づき、みなさんスパートを始めます。今回は合計18件のpull requestが投げられました。またイベント後もレビューコメントの対応をしていただいています。</p>

<p><img src="/wp-content/uploads/2014/04/69fd5dec892e4ed8b2dd6494426bfba3-1024x682.jpeg" alt="69fd5dec892e4ed8b2dd6494426bfba3" width="1024" height="682" class="aligncenter size-large wp-image-6214" srcset="/wp-content/uploads/2014/04/69fd5dec892e4ed8b2dd6494426bfba3-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/69fd5dec892e4ed8b2dd6494426bfba3-300x199.jpeg 300w, /wp-content/uploads/2014/04/69fd5dec892e4ed8b2dd6494426bfba3-207x137.jpeg 207w, /wp-content/uploads/2014/04/69fd5dec892e4ed8b2dd6494426bfba3.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>

<p><img src="/wp-content/uploads/2014/04/8c35e4da55a040fb95dbb6889ba3d7ee-1024x682.jpeg" alt="8c35e4da55a040fb95dbb6889ba3d7ee" width="1024" height="682" class="aligncenter size-large wp-image-6215" srcset="/wp-content/uploads/2014/04/8c35e4da55a040fb95dbb6889ba3d7ee-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/8c35e4da55a040fb95dbb6889ba3d7ee-300x199.jpeg 300w, /wp-content/uploads/2014/04/8c35e4da55a040fb95dbb6889ba3d7ee-207x137.jpeg 207w, /wp-content/uploads/2014/04/8c35e4da55a040fb95dbb6889ba3d7ee.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>

<p><img src="/wp-content/uploads/2014/04/3654fc02bf954e9eb827eda17a7a0a65-1024x682.jpeg" alt="3654fc02bf954e9eb827eda17a7a0a65" width="1024" height="682" class="aligncenter size-large wp-image-6216" srcset="/wp-content/uploads/2014/04/3654fc02bf954e9eb827eda17a7a0a65-1024x682.jpeg 1024w, /wp-content/uploads/2014/04/3654fc02bf954e9eb827eda17a7a0a65-300x199.jpeg 300w, /wp-content/uploads/2014/04/3654fc02bf954e9eb827eda17a7a0a65-207x137.jpeg 207w, /wp-content/uploads/2014/04/3654fc02bf954e9eb827eda17a7a0a65.jpeg 640w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>

<h2>テスト部の今後</h2>

<p>昨年6月のTestTWFはもちろん9月のMeetupでも「人が集まるのかなあ、面白いのかなあ」など、この活動に不安を持っていました。しかし、標準化に貢献できることや仕様の勉強を楽しんでもらえる方が多く、それが活動を続けるモチベーションとなっています。</p>

<p>とはいえ、その場でレビューやテストのマージといった、本家Test the Web Forwardが提供するよさはMeetupには持ち込めていません。レビューやテストのカバレッジなど、本家が持つ課題について、今後はもう少し関われればと思います。また、テスト部とMeetupならではの企画ができないかなども検討していきたいと思っています。</p>

<p>最後に、参加者のみなさん、<a href="http://testthewebforward.org/events/2014/tokyo.html#speakers" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">スピーカー・エキスパート</a>のみなさん、<a href="http://testthewebforward.org/events/2014/tokyo.html#sponsors" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">スポンサー</a>のみなさん、スタッフのみなさん、本当にありがとうございました。</p>

<h2>関連エントリなど</h2>

<ul>
<li><a href="http://rocky-manobi.com/blog/?p=166" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Test the Web Forward Meetup (仮) , Tokyo#2 にお邪魔して、text-emphasis-style のテストを書いてきました | Same Old Lucky Day</a></li>
<li><a href="https://lightroom.adobe.com/shares/385aaa838a5b48eb8b9552a325d87998/albums/3704ab1dc9c5861a971a08a357af59fe" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Test The Web Forward（アルバム）</a></li>
</ul>

<p>Photo credit：仲尾毅、水嶋彬貴</p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>「HTML5 Rocksの翻訳ハンズオン」html5j英語部イベントレポート</title>
		<link>/hiloki/6176/</link>
		<pubDate>Fri, 25 Apr 2014 03:00:05 +0000</pubDate>
		<dc:creator><![CDATA[谷拓樹]]></dc:creator>
				<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[海外]]></category>
		<category><![CDATA[英語]]></category>

		<guid isPermaLink="false">/?p=6176</guid>
		<description><![CDATA[連載： イベントレポート (14)HTML5 Rocksは、開発者向けのHTML5周辺技術に関するリソースを公開しているサイトです。Googleによって運営されており、記事が多言語に対応しているものもあります。 html...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (14)</div><p><a href="http://www.html5rocks.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">HTML5 Rocks</a>は、開発者向けのHTML5周辺技術に関するリソースを公開しているサイトです。Googleによって運営されており、記事が多言語に対応しているものもあります。</p>

<p>html5j英語部の今回のイベントでは、いくつか記事をピックアップし、グループに分けて翻訳を行いました。</p>

<p>今回翻訳対象としてピックアップした記事：</p>

<ul>
<li><a href="http://www.html5rocks.com/en/tutorials/webperformance/usertiming/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">User Timing API: Understanding your Web App &#8211; HTML5 Rocks</a></li>
<li><a href="http://www.html5rocks.com/en/tutorials/speed/animated-gifs/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Avoiding Unnecessary Paints: Animated GIF Edition &#8211; HTML5 Rocks</a></li>
<li><a href="http://www.html5rocks.com/en/tutorials/speed/unnecessary-paints/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Avoiding Unnecessary Paints &#8211; HTML5 Rocks</a></li>
<li><a href="http://www.html5rocks.com/en/tutorials/speed/high-performance-animations/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">High Performance Animations &#8211; HTML5 Rocks</a></li>
<li><a href="http://www.html5rocks.com/en/tutorials/speed/scrolling/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Scrolling Performance &#8211; HTML5 Rocks</a></li>
</ul>

<h2 id="">英語部名物・ライブ翻訳</h2>

<p>前回と同じく、今回も英語部・部長の斉藤さんによるライブ翻訳がありました。</p>

<p>今回のライブ翻訳で挙げたポイントは、次のような斉藤さんが翻訳するときの手順についてです。</p>

<p>抜粋元：<a href="http://www.html5rocks.com/en/tutorials/es6/promises/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">JavaScript Promises</a></p>

<blockquote cite="http://www.html5rocks.com/en/tutorials/es6/promises/">
<p>In browsers, JavaScript shares a thread with a load of other stuff. </p>
</blockquote>

<p>頭から順に訳していきますが、はじめからきっちりと、きれいな日本語に置き換えようとはしません。まず主語（S）と動詞（V）を見つけます。この一文でいえば、「JavaScriptは共有する」というが重要です。その上で具体的に訳していきますが、最初はラフな日本語で大丈夫です。それからきれいな日本語に整形します。</p>

<ol>
<li>「JavaScriptは共有する」</li>
<li>「JavaScriptは共有する、ひとつのスレッドを、他のものの読み込みと一緒に」</li>
<li>「JavaScriptは、他のものの読み込みと一緒に、ひとつのスレッドを共有します」</li>
<li>「ブラウザーにおいては、JavaScriptも、他のものの読み込みと一緒にひとつのスレッドを共有します」</li>
</ol>

<p>翻訳の難しさは、英語にあるのではなくて、日本語にあると部長は言います。<br>
英語が得意な人でも、英語のままとしての意味はわかったとしても、それを日本語として意味を違えずに表現することは難しいです。英語部では、オフライン/オンライン問わず、翻訳の経験者による監訳サポートがあるので、翻訳の初心者であっても、アドバイスをもらいながら進めることができます。</p>

<p><img src="/wp-content/uploads/2014/04/html5eng_vol1.jpg" alt="各グループで翻訳" width="1024" height="729" class="aligncenter size-full wp-image-6184" srcset="/wp-content/uploads/2014/04/html5eng_vol1.jpg 640w, /wp-content/uploads/2014/04/html5eng_vol1-300x213.jpg 300w, /wp-content/uploads/2014/04/html5eng_vol1-207x147.jpg 207w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>

<h2 id="html5rocks">HTML5 Rocksの翻訳フロー</h2>

<p>今回会場提供をしていただいたグリーの<a href="https://twitter.com/miyazaqui" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">宮崎さん</a>からは、HTML5 Rocksの翻訳フローについてのLTを行ってもらいました。</p>

<p>スライド: <a href="https://docs.google.com/presentation/d/1JyPdsaKVuvNdylFaSwsI-LW5jpr-GLXm4kr5JmFvGXQ/edit#slide=id.p" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">HTML5 Rocks translation</a></p>

<p>宮崎さんは、すでにHTML5 Rocksの7つの記事を翻訳した経験があります。<br />
ちなみに宮崎さん曰く、HTML5 Rocksの記事の単位は<strong>rock</strong>だ、ということで、7rocksを翻訳したということになります <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>

<p>HTML5 Rocksの翻訳フローは、Git/GitHubを使ったプロダクト開発と同様で、Pull Requestを通して翻訳済みのドキュメントを取り込むという流れになっています。</p>

<ol>
<li><a href="https://github.com/html5rocks/www.html5rocks.com" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">HTML5 RocksのWebサイトのレポジトリ</a>をForkする</li>
<li>翻訳したい記事を見つけ、コピーをして/ja/ディレクトリで展開、翻訳をする（詳細は後述）</li>
<li>Fork元にPull Requestを送る（送り先は<b>master</b>ブランチ）</li>
<li>Reviewを受けて、Feedbackがあれば対応、問題なければ取り込まれる</li>
<li>サイトに公開（<b>live</b>ブランチにマージされる）</li>
</ol>

<h3>未翻訳記事の見つけ方</h3>

<p>翻訳したいとおもっても、その記事がすでに日本語訳されていたり、もしくは進行中である場合は、残念ながら翻訳しても載せてもらうことはできません。</p>

<p><img src="/wp-content/uploads/2014/04/html5eng_vol1-2-300x294.png" alt="Localizationの場所" width="300" height="294" class="alignleft size-medium wp-image-6186" srcset="/wp-content/uploads/2014/04/html5eng_vol1-2-300x294.png 300w, /wp-content/uploads/2014/04/html5eng_vol1-2-207x202.png 207w, /wp-content/uploads/2014/04/html5eng_vol1-2.png 640w" sizes="(max-width: 300px) 100vw, 300px" /></p>

<p>翻訳済みの記事は、<strong>Localizations</strong>に翻訳された言語へのリンクが存在していますので、その記事は翻訳できません。（もし翻訳内容に誤りなどがあれば、それはそれで修正してPull Requestを送るとよいでしょう）</p>

<p>まだ公開はされていないけれど、進行しているものは<a href="https://github.com/html5rocks/www.html5rocks.com/issues" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Issues</a>および<a href="https://github.com/html5rocks/www.html5rocks.com/pulls" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Pull Requests</a>を確認するとわかります。Openのものだけでなく、Closeして公開待ちのような記事もあるかもしれないので、Closeの中も確認しましょう。</p>

<h3 style="clear:both">翻訳の進め方</h3>

<p>記事ページは<a href="https://github.com/html5rocks/www.html5rocks.com/tree/master/content" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">/content/</a>の中に格納されています。</p>

<p>翻訳したい記事のURLを確認し、該当のディレクトリを探っていくと、/en/ディレクトリが確認できるはずです。その中に原文の<b>index.html</b>がはいっているので、/en/ディレクトリをコピーし、/ja/ディレクトリをつくったら、その中の<b>index.html</b>を翻訳します。
（<a href="https://github.com/html5rocks/www.html5rocks.com/tree/master/content/tutorials/offline/quota-research" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">/ja/ディレクトリがある例</a>）</p>

<p>翻訳対象はこのHTMLファイルだけでなく、<strong>/conf/locale/ja/</strong>にもある場合があります。記事タイトルはこちらにも含まれている時があるので、該当の記事をみつけたら、<b>msgstr</b>に日本語訳を書きましょう。</p>

<p>また翻訳者のクレジットを残すこともできます。クレジットは、下記のフォーマットで記事内に差し込むことで追加されます。</p>

<p></p><pre class="crayon-plain-tag">{% block translator %}
&lt;div class=&quot;translator&quot;&gt;
  &lt;strong&gt;翻訳:&lt;/strong&gt; &lt;a href=&quot;https://github.com/hiloki/&quot;&gt;Hiroki Tani&lt;/a&gt;
&lt;/div&gt;
{% endblock %}</pre><p></p>

<p><a href="https://github.com/html5rocks/www.html5rocks.com/blob/master/content/tutorials/memory/effectivemanagement/ja/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">翻訳者クレジットが差し込まれている例</a></p>

<p>その他、翻訳やページの追加に関することは、下記のドキュメントに記載されているので、一度目を通しておくことをおすすめします。</p>

<ul>
<li><a href="https://github.com/html5rocks/www.html5rocks.com/blob/master/LOCALIZATION.md" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">LOCALIZATION.md</a>（<a href="https://gist.github.com/myakura/6d920770a4939b5deeb6" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">日本語訳</a>）</li>
<li><a href="https://github.com/html5rocks/www.html5rocks.com/blob/master/CONTRIBUTING.md" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">CONTRIBUTING.md</a></li>
</ul>

<h2>翻訳しながら技術的に学ぶ</h2>

<p>HTML5 Rocksが素晴らしい技術記事が充実したサイトということもあり、英語を翻訳する経験と力をつけるとともに、技術的に新しく学べるという点で、翻訳のしがいがあると思います。</p>

<p>今回オフライン活動のひとつとしてHTML5 Rocksをグループで翻訳しましたが、引き続きオンラインでも継続しておこないます。</p>

<p>本レポートや<a href="https://github.com/html5j-english/README" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">html5j英語部の概要</a>をみて興味を持ち、また監訳などを受けながら翻訳したい方がいればぜひ参加してください！その際には<a href="https://github.com/html5j-english/html5rocks" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">英語部リポジトリのHTML5 Rocksの内容</a>を一読ください。</p>

<p>もし不明なことがあれば<a href="https://github.com/html5j-english/html5rocks/issues" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Issues</a>や<a href="https://gitter.im/html5j-english/askQuestion" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">Gitter</a>に連絡をください。</p>

<p>最後に大事なことを伝えておくと、html5j英語部はあくまでも有志による翻訳コミュニティです。
オリジナルであるHTML5 Rocksとは関連はなく、全てのHTML5 Rocksの日本語訳が本コミュニティを通じて行われているわけではありません。HTML5 Rocksの翻訳をしたい！という方は個人でどんどん翻訳をしてもらえれば良いのではないかと思います。</p>

<p>今回会場をお貸しいただいた<a href="http://gree.jp/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">グリー</a>の皆さん、ありがとうございました！</p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>デザイナーとエンジニアでつくるプロトタイプとユーザーテスト─byデザイニアン002</title>
		<link>/norikokubota/6076/</link>
		<pubDate>Thu, 24 Apr 2014 03:09:11 +0000</pubDate>
		<dc:creator><![CDATA[窪田則子]]></dc:creator>
				<category><![CDATA[デザイン]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[プロトタイピング]]></category>

		<guid isPermaLink="false">/?p=6076</guid>
		<description><![CDATA[連載： イベントレポート (13)2014年3月22日、リクルートメディアテクノロジーラボ (MTL) にて、デザイナーとエンジニアでつくるWebプロトタイプとユーザーテストを行うイベント「デザイニアン002」が開催され...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (13)</div><p>2014年3月22日、リクルートメディアテクノロジーラボ (MTL) にて、デザイナーとエンジニアでつくるWebプロトタイプとユーザーテストを行うイベント「デザイニアン002」が開催されました。</p>

<h2>プロトタイピング作成の意味と利点とは</h2>

<p>プロトタイプ作成で得られる利点は、早い段階で設計を多様な角度から検証し、企画や機能を実際に体験することでユーザーからフィードバックを得て問題解決に役立てられることです。</p>

<p>可能な限り早期に問題を見い出して、制作の工程を最終的には早くて手戻りのないものにする。そして、検証結果から多くの問題を修正することで、ユーザー体験をより理想の形に近づけることが可能となります。</p>

<p>はじめに部長の秋葉さんより、イベントの趣旨／本日の流れ等の全体の説明が行われました。</p>

<p><img src="/wp-content/uploads/2014/04/s-01.jpg" alt="" width="640" height="426" class="alignnone size-full wp-image-6158" srcset="/wp-content/uploads/2014/04/s-01.jpg 640w, /wp-content/uploads/2014/04/s-01-300x199.jpg 300w, /wp-content/uploads/2014/04/s-01-207x137.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p>以前ご紹介した「<a href="https://html5experts.jp/norikokubota/5025/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">html5jデザイン部が目指す、ユーザー体験も含んだデザインを実体験で学べるイベントとは</a>」と同様、「JRの新幹線予約サイト『えきねっと』を、目的の新幹線チケット購入までたどり着きやすくする」を課題にし、</p>

<ol>
<li>課題のサイトの問題の洗い出し</li>
<li>情報整理と仮説</li>
<li>プロトタイプ作成</li>
<li>ユーザーテスト</li>
<li>ヒアリング　</li>
</ol>

<p>の流れで行いました。</p>

<p>エンジニアの方には、デザイン部エンジニアが少ない時間の中で、できるだけ早く進められるようイベント用に用意したテンプレートを渡し、作業してもらいます。</p>

<p>説明の後に、デザイナーとエンジニア2～3名ずつのチームを作り課題に入りました。</p>

<p>前半はそれぞれのチームでディスカッション。</p>

<p><img src="/wp-content/uploads/2014/04/s-03.jpg" alt="" width="640" height="426" class="alignnone size-full wp-image-6159" srcset="/wp-content/uploads/2014/04/s-03.jpg 640w, /wp-content/uploads/2014/04/s-03-300x199.jpg 300w, /wp-content/uploads/2014/04/s-03-207x137.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><img src="/wp-content/uploads/2014/04/s-04.jpg" alt="" width="640" height="377" class="alignnone size-full wp-image-6162" srcset="/wp-content/uploads/2014/04/s-04.jpg 640w, /wp-content/uploads/2014/04/s-04-300x176.jpg 300w, /wp-content/uploads/2014/04/s-04-207x121.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p>後半は、デザイナーとエンジニアが各々の担当分を制作していきます。</p>

<p><img src="/wp-content/uploads/2014/04/s-05.jpg" alt="" width="640" height="426" class="alignnone size-full wp-image-6163" srcset="/wp-content/uploads/2014/04/s-05.jpg 640w, /wp-content/uploads/2014/04/s-05-300x199.jpg 300w, /wp-content/uploads/2014/04/s-05-207x137.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><img src="/wp-content/uploads/2014/04/s-06.jpg" alt="" width="640" height="364" class="alignnone size-full wp-image-6164" srcset="/wp-content/uploads/2014/04/s-06.jpg 640w, /wp-content/uploads/2014/04/s-06-300x170.jpg 300w, /wp-content/uploads/2014/04/s-06-207x117.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p>18時には、テストユーザーの皆さんが到着。各チームに1人テストユーザーが着席し、課題で作成したプロトタイプを操作していきました。</p>

<p><img src="/wp-content/uploads/2014/04/s-07.jpg" alt="" width="640" height="426" class="alignnone size-full wp-image-6168" srcset="/wp-content/uploads/2014/04/s-07.jpg 640w, /wp-content/uploads/2014/04/s-07-300x199.jpg 300w, /wp-content/uploads/2014/04/s-07-207x137.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p><img src="/wp-content/uploads/2014/04/s-08.jpg" alt="" width="640" height="426" class="alignnone size-full wp-image-6169" srcset="/wp-content/uploads/2014/04/s-08.jpg 640w, /wp-content/uploads/2014/04/s-08-300x199.jpg 300w, /wp-content/uploads/2014/04/s-08-207x137.jpg 207w" sizes="(max-width: 640px) 100vw, 640px" /></p>

<p>一通りテストが終わったところで、各チームごとに何に問題を感じ、どのようなコンセプトでつくったのかをプレゼンテーション。テストユーザーの方には、操作した感想を発表していただきました。</p>

<h3>チーム1）　不必要な機能を削除し、画面をわかりやすく</h3>

<p>どんなふうに到達するのが違和感ないのかを考え、不必要な機能を消し必要な機能のみで作ることにした。制作者側として画面の流れはわかりやすくなったかと思いましたが、デザインを適用する時間が足りなかった。乗車する日にち選択で、テストユーザーの方の「iPhoneの&#8221;ドラムロールUI（※1）&#8221;はわかりづらい」という意見が参考になった。</p>

<p>※:iPhoneの&#8221;ドラムロールUI<br>
　正しくはDate Pickersと呼ばれているUI。HTMLのselect要素を使ったときに出てくるUIを本記事では「ドラムロールUI」と呼称しています。
<img src="/wp-content/uploads/2014/04/DatePickersUI.png" alt="DatePickersUI" width="485" height="213" class="alignnone size-full wp-image-6167" srcset="/wp-content/uploads/2014/04/DatePickersUI.png 485w, /wp-content/uploads/2014/04/DatePickersUI-300x131.png 300w, /wp-content/uploads/2014/04/DatePickersUI-207x90.png 207w" sizes="(max-width: 485px) 100vw, 485px" /></p>

<p><strong>[テストユーザーの感想]</strong><br>
ビジュアルとしてはっきりしておらず、薄い線などで見にくいと操作がしづらい。iPhoneのドラムロールUI式カレンダーは使いにくい。ネットに慣れていない人間は緑の窓口で購入する機会が多く、自分の記憶の中から勝手に窓口でのイメージを求めてしまうため、券売機に近いデザインの方がエンドユーザーには使用しやすい。</p>

<h3>チーム2）　無駄なスペースを削り、スクロールを減らす</h3>

<p>入力フォームの項目に関しては縦並びにせずに、画面の横につめられる内容のものはつめて、少ないスクロールで必要な情報を見られるようにした。検索結果のボタンの色が変えて、わかりやすくと考えた（時間不足で未実装）。</p>

<p><strong>[テストユーザーの感想]</strong><br>
チケットの有無を「○」「△」「×」で表示する方がわかりやすい。<br>
検索結果に時間が何時から何時と出ているのがわかりやすかった。料金の比較もあるとわかりやすい。<br>
自分が医療関係者なのでその視点で考えると、障碍者は対人コミュニケーションを避ける傾向があり、窓口での購買よりもスマホ使うことが多いと思う。白内障や色盲の人には白と黄色の組み合わせが判別しにくいので、スマホサイトに背景が黄色で文字が白、といった組み合わせは避ける方が好ましい。</p>

<h3>チーム3）日付と時間をわかりやすく設計</h3>

<p>ユーザーが何をしたいのかを重要視した。日付と時間がわかりやすいことが重要と考えて、画面一番上にした。クリックしたら表示されるようにしたが、反映しきれなかったので迷わせてしまった。<br>
流れを直感的に予約できるようにし、必要な情報をしぼることを心がけた。時間がなくデザインが当て込めなかったが、ユーザーは意外にわかってくれるということもわかった。</p>

<p><strong>[テストユーザーの感想]</strong><br>
最初つまづいたが、使っているうちにわかった。時間不足で機能していないボタンがあったので、どうとればいいかわからなかった。</p>

<h3>チーム4）操作しにくいラジオボタンから、押しやすいボタンに</h3>

<p>検索画面のわかりやすさを考えて操作順にタブ式に選択できるようにした。スマートフォンではラジオボタンでの操作はしにくいという判断をして、ボタンとして押しやすいように制作した。<br>
往路を購入する場合は一度に往復を購入するのではなく、まず往路を購入し、片道を購入してから復路を買うボタンと完了ボタンを作り、ユーザーが動線を迷わないようにした。</p>

<p><strong>[テストユーザーの感想]</strong><br>
やっぱりiOSのドラムロールUIの操作がわかりづらい。Androidの方が日にちを選びやすい。</p>

<h3>チーム5）　ぱっと見た瞬間に空席が表示される</h3>

<p>UIの要素を極力減らしてシンプルにする方向にし、不要な要素は削除した。ぱっと見た瞬間に必要な情報がある程度出るように考え、席がどの程度空きがあるかを表示するようにした。階層的に選べるようにした。</p>

<p><strong>[テストユーザーの感想]</strong><br>
空席を探した時に「○」「△」「×」が表示され残席数がおおよそわかる点が良かった。指定席の空席がないとわかった時点で、そこから再検索できれば使いやすいと思う。<br>
ボタンが小さくて狙ったところを押せないとストレスになるので、大きめのボタンの方がよかった。ロード中にロードしていることがわかるようになっていると良いと思いました。</p>

<h3>チーム6）カレンダー表示やボタンサイズの拡大</h3>

<p>日付の予約は、カレンダーで表示させた。縦横表示できるようにした。席選択のボタンを色分けし、見てすぐ判別できるようこだわり、スマホで選択しやすいようボタンサイズを大きくした。<br>
配布テンプレートに戻るボタンを追加し、動線をわかりやすくした。機能の取捨選択をすることが大事だと思った。こういった場があったことを感謝しています。</p>

<p><strong>[テストユーザーの感想]</strong><br>
乗車駅と降車駅がドラムでの選択でなく、キーボードで1文字入れると予測結果が表示される方が、個人的に使いやすい。<br>
ラジオボタンは小さすぎて親指で隠れ押しにくいので、大きい方が良い。人数をテンキーで入力する仕様でつくられていたが、使いやすくて良い。<br>
検索結果がたくさん表示されるより、精度のよいデーターが絞り込まれて出るほうがいい。選択項目を色分けしているのがわかりやすくて良かった。</p>

<h2>イベントを終えて</h2>

<p>テストユーザーの方には、iOS 7とiOS 6両方で比較してもらいました。iOS 7ではシンプルに線が細くなっていますが、iOS 6のドラムの方が線も文字もはっきりし、選択するとチェックが出るのでわかりやすい、という意見も出ました。</p>

<p>短い時間の中で、各チームのデザイナーとプログラマが課題に対して問題解決を図るアイデアを出し合う。多様なアプローチで試行錯誤することで、さらなる問題解決の可能性を見い出せた印象を抱きました。</p>

<p>イベントを運営した我々デザイン部一同、参加者の皆さんやテストユーザーの皆さんから学ばせて頂く機会となったことに感謝するとともに、
デザイン部では今後も積極的に取り組んでいきたいと思います。</p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>HTML5とエンタープライズITの過去、現在、そして未来を議論する</title>
		<link>/yusuke-naka/5802/</link>
		<pubDate>Tue, 01 Apr 2014 03:00:23 +0000</pubDate>
		<dc:creator><![CDATA[仲 裕介]]></dc:creator>
				<category><![CDATA[システム開発]]></category>
		<category><![CDATA[html5j]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[エンタープライズ]]></category>

		<guid isPermaLink="false">/?p=5802</guid>
		<description><![CDATA[連載： イベントレポート (12)2014年2月28日にhtml5jエンタープライズコミュニティ主催で「Enterprise x HTML5 Web Application Conference 2014」が開催されまし...]]></description>
				<content:encoded><![CDATA[<div class="seriesmeta">連載： <a href="https://html5experts.jp/series/eventarchives/" class="series-159" title="イベントレポート" data-wpel-link="internal">イベントレポート</a> (12)</div><p>2014年2月28日にhtml5jエンタープライズコミュニティ主催で「Enterprise x HTML5 Web Application Conference 2014」が開催されました。オープニングパネルディスカッションの模様を中心に、HTML5とエンタープライズITの過去、現在、そして未来についての熱い議論をここにまとめます。</p>

<!-- more -->

<h2>HTML5はエンタープライズITにおける3つのニーズを解決する</h2>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/04/kawada.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/04/kawada-300x200.jpg" alt="kawada" width="300" height="200" class="alignright size-medium wp-image-5905" srcset="/wp-content/uploads/2014/04/kawada-300x200.jpg 300w, /wp-content/uploads/2014/04/kawada-207x138.jpg 207w, /wp-content/uploads/2014/04/kawada.jpg 600w" sizes="(max-width: 300px) 100vw, 300px" /></a>
はじめに、html5jエンタープライズコミュニティの部長である川田氏からカンファレンス開会宣言が行われました。その中で、川田氏は、エンタープライズ分野でHTML5は次の3つのニーズを解決してくれると期待していると述べています。</p>

<h3>ニーズ1「多様化するクライアント環境に対応する」</h3>

<p>業務系システムでは、クライアント側の環境を中央集権的に管理することが求められます。そのため、クライアント環境は機種を限定した専用マシン、ミドルウェアについてもソフトウェアやバージョンを限定したものを用意して、カッチリと管理することが一般的に行われます。しかし、昨今のスマホやタブレットの普及によって、クライアント環境は大きく様変わりしています。モバイル環境にフォーカスすると、十分とはいえないデバイス管理機能、デバイスのフラグメンテーション、通信環境の多様化、セキュリティへの配慮の難しさなど、業務系システムを動作させる上でのハードルはかなり高くなっています。</p>

<p>そのような課題に対処するためのソリューションとして登場したのが、MEAP（Mobile Enterprise Application Platform）というアーキテクチャです。MEAPは、エンタープライズ向けのモバイルアプリの開発・管理を一元的に実現するサーバサイドの仕組みとクライアントサイドの仕組みを提供するプロダクトのことで、様々なベンダーから製品が提供されています。MEAPについては、ビジネス＋ITさんのサイトにわかりやすく解説されていますので、興味がある方はご一読下さい。以下、MEAPとはについて、一部引用させていただきました。</p>

<p><em>提供ベンダーによって機能も異なるが、モバイルの開発環境、配布・デプロイ、アプリケーション運用・管理のほか、アクセス認証、ユーザー管理、ログ管理、テスト環境、基幹系との連携などの機能が提供される場合もある。</em></p>

<p>引用元：<a href="http://www.sbbit.jp/article/cont1/27694" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">ビジネス＋IT &#8211; MEAPとは（http://www.sbbit.jp/article/cont1/27694）</a></p>

<h3>ニーズ2「ネイティブアプリライクなリッチアプリケーションを作成したい」</h3>

<p>業務系システムの開発ではjQuery Pluginがよく利用されています。ベンダー製品も豊富に出ており、開発者が手軽に扱えることがメリットの一つとなっています。また、昨今では、クライアントサイドの開発のための様々なJavaScriptフレームワークが登場しています。これらを活用することで、Webアプリケーションでありながら、大規模かつ、ネイティブアプリライクなリッチアプリケーションを手軽に開発することが可能になりました。しかし、手軽といっても、JavaScriptフレームワークは、jQuery Pluginに比べ学習コストは高めなので、導入する上では検討が必要となります。</p>

<h3>ニーズ3「営業から運用までトータルでサポートして欲しい」</h3>

<p>HTML5を活用したアプリケーション開発では、以下のとおり、営業から開発・運用に至る全てのフェーズにて、作業を改善するための様々なツールが登場しています。これらを活用することで、開発効率を向上させることができます。</p>

<ul>
<li>提案フェーズ：ノンプログラミング・ツール、GUIツールの活用</li>
<li>設計フェーズ：UIコンポーネント、JSフレームワークの活用</li>
<li>実装フェーズ：Gruntなどのタスクランナー、HTML5開発対応IDEの活用</li>
<li>テストフェーズ：画面テスト、JSテストの自動化支援ツールの活用</li>
<li>運用フェーズ：MEAPの活用 </li>
</ul>

<h3>エンタープライズITにおける次世代アーキテクチャの5大要素</h3>

<p>開会宣言の最後に川田氏は、HTML5がどのようにエンタープライズITのアーキテクチャに影響をあたえるのか、次の5つのレイヤに分類しまとめました。</p>

<div id="attachment_5815" style="width: 603px" class="wp-caption aligncenter"><a href="https://html5experts.jp/wp-content/uploads/2014/03/enterprise_conf_pic1.png" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/03/enterprise_conf_pic1.png" alt="エンタープライズITにおける次世代アーキテクチャの5大要素" width="593" height="443" class="size-full wp-image-5815" srcset="/wp-content/uploads/2014/03/enterprise_conf_pic1.png 593w, /wp-content/uploads/2014/03/enterprise_conf_pic1-300x224.png 300w, /wp-content/uploads/2014/03/enterprise_conf_pic1-207x154.png 207w" sizes="(max-width: 593px) 100vw, 593px" /></a><p class="wp-caption-text">エンタープライズITにおける次世代アーキテクチャの5大要素</p></div>

<p>この中で、とりわけ重要なのは通信レイヤーの存在で、通信レイヤーに何を利用するかによって、システム全体のアーキテクチャや利用するベンダ製品が決まってくることが多いとのこと。また、今はWebSocketの利用が前提になってきているとも、付け加えました。</p>

<p>カンファレンス開会宣言の資料はこちらで公開されています。</p>

<div style="text-align: center;">
<iframe src="http://www.slideshare.net/slideshow/embed_code/31834993" width="427" height="356" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC; border-width:1px 1px 0; margin-bottom:5px; max-width: 100%;" allowfullscreen> </iframe> <div style="margin-bottom:5px"> <strong> <a href="https://www.slideshare.net/kawada_hiroshi/html5-3-31834993" title="エンタープライズ領域のHTML5 3つのニーズ" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">エンタープライズ領域のHTML5 3つのニーズ</a> </strong> from <strong><a href="http://www.slideshare.net/kawada_hiroshi" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Hiroshi Kawada</a></strong> </div></div>

<h2>HTML5とエンタープライズについて白熱した議論が！</h2>

<p>開会宣言に続き、パネルディスカッションが行われました。パネリストに、日本マイクロソフト株式会社のUXエバンジェリストでRIAコンソーシアム理事の<strong>春日井良隆氏</strong>、株式会社オープンウェブ・テクノロジー代表でhtml5jファウンダーの<strong>白石俊平氏</strong>、html5jエンタープライズコミュニティ部長でNTTコムウェア株式会社技術SE部の<strong>川田寛氏</strong>を迎え、モデレーターは私、仲裕介が務めました。パネルディスカッションでは、HTML5とエンタープライズITに関して、過去と現在そして未来について、以下の様な流れで議論がなされました。</p>

<ul>
<li>HTML5はなぜここまでウケたのか？</li>
<li>HTML5の現状はどうなっているのか？</li>
<li>HTML5はエンタープライズの現場をどう変えるか？</li>
</ul>

<p>ここでは、パネルディスカッションでの議論の模様を筆者の独断で要約してご紹介します。当日の様子はYouTubeのhtml5jチャンネルで公開中（動画へのリンクは記事末尾参照）です。参考までに議論が行われた動画上の再生時間を併記していますので、議論の詳しい内容が気になる方は、記載した再生時間を参考に動画を視聴してみて下さい。</p>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/04/sannin.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/04/sannin.jpg" alt="sannin" width="600" height="400" class="aligncenter size-full wp-image-5904" srcset="/wp-content/uploads/2014/04/sannin.jpg 600w, /wp-content/uploads/2014/04/sannin-300x200.jpg 300w, /wp-content/uploads/2014/04/sannin-207x138.jpg 207w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>

<h3>HTML5はなぜここまでウケたのか？（動画では19:07頃）</h3>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong>HTML5の登場で、FlashやSliverlightなどのプラグインの代わりに、Video要素やCanvas要素を活用したビデオ再生やWeb上での様々な表現が可能になった。最初に注目が集まったのはそういった部分だと思う。エンタープライズの分野では、Internet Explorer(以下、IE)9やIE10からHTML5に関連した様々なAPIが充実しはじめ、アプリケーション開発に十分に活用できるようになったことから、流行り始めた。また、開発者はオープンソースが好きで、基本的にどこかのベンダーにコミットするということはあまり好まない。そういう点からも、オープンなWeb技術であるHTML5は心理的に受け入れやすかったと思われる。</p>

<p style="text-indent: 0em;"><strong>【白石氏】</strong>Web画面をリッチにしたいというニーズは昔からあり、IEではContent EditableやXHRなどの先進的な機能をIE5やIE6の頃から実装していた。しかし、Web標準が追いつかず世の中に浸透しなかったため、各ベンダーがプラグインを活用しそのニーズに答えていった。そこに、Web標準の舞台でWeb画面をリッチにするというニーズに答える、HTML5という技術が登場したため、ここまでウケたのではないか。</p>

<p style="text-indent: 0em;"><strong>【川田氏】</strong>HTML5のムーブメントが起きるきっかけは、「プラグイン古いね、使いにくいね」という議論が出てきた2010年頃と記憶している。その後、マルチデバイス対応のニーズが高まり、MEAPというアーキテクチャを取り入れたベンダー製品が登場した。そのようなムーブメントにエンタープライズは大きく影響を受けるとともに、プラグインが使えない状況で、Web上でリッチなUIを作りたいというニーズが高まり、jQuery PluginやJavaScriptフレームワークが充実していき、昨今のHTML5のムーブメントにつながったのではないか。</p>

<p>ここで白石氏より、MEAPを活用しているかどうか来場者へ質問が行われた。結果、活用していると答えた方は０人。また、知っていると答えた方は3人ほどにとどまったため、ここで、川田氏によるMEAPの説明が行われました。（動画では26:30頃）</p>

<h3>HTML5の現状はどうなっているのか？（動画では30:28頃）</h3>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong>別の勉強会の発表資料によれば、昨年末の段階で、東証一部上場企業（約2000社）のコーポレートサイトでDOCTYPE宣言をHTML5で行っている会社は9.4%しかなく、専用サイトやレスポンシブデザインによるスマホ対応を行っているサイトは14.9%にとどまっている。普及という意味ではまだまだな印象。発注側やWebマスターサイド、それぞれの諸事情により、対応は進んでいないと思われる。</p>

<p>ここで白石氏から、来場者へHTML5への対応状況についての質問が行われた。結果、HTML5対応、スマホ対応を行っていると答えた人は3名ほど。統計情報通りだという結論になりました。</p>

<p style="text-indent: 0em;"><strong>【川田氏】</strong>これでもまだHTML5は導入されている方ではないか。エンタープライズにおけるHTML5導入は今年が元年だと思っている。HTML5をエンタープライズに適用させるための各種プロダクトを含めた環境、技術者育成の仕組みなどが回り始めたのは2013年に入ってからであり、これから適応事例が増えてくると考えている。</p>

<h3>HTML5はエンタープライズの現場をどう変えるか？（動画では38:20頃）</h3>

<h4>オープン系技術の導入において開発用ツールの選定は非常に重要</h4>

<p style="text-indent: 0em;"><strong>【川田氏】</strong>HTML5はオープン系技術。技術がベンダー系からオープン系に変わると開発難易度は高くなり、現場としてはしんどくなることも。しかし、コストメリットに押されてそれを採用せざるを得ない状況になる。設計については、Visual Basicが流行った頃のように、UIにもサーバ側にも業務ロジックがあるようなタイプにシフトするのか、現状のjQuery Plugin利用程度に留まるのか、まだ行く末の判断はできない。</p>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong>HTML5を活用した開発に関しては、開発用ツールを使うことが非常に重要になってくる。ベンダー製品のメリットはプラットフォームとセットで開発用ツールを出しているところにある。Microsoft製品であればSilverLightとVisual Studio Expressionみたいな。しかし、オープンソース製品では開発用ツールはバラバラなので、ツールの選定は開発においてとても重要になる。</p>

<p style="text-indent: 0em;"><strong>【白石氏】</strong>昔エンタープライズでJavaを書いていた経験から、ベンダー系とオープン系では開発用ツールに関するアプローチ方法が異なると考えている。Java開発用のリッチな開発用ツールは様々なプロダクトが出ては消え出ては消え…結局は手書きに落ち着くということも経験した。それに比べ、Microsoft製品であれば、バックエンドからフロントエンドまでMicrosoft製のツールで固められるので、開発がすごく楽な印象があり、とても幸せそうな世界に見えた。</p>

<p>ここで春日井氏から「本当に幸せなんです！」というツッコミとともに、川田氏から、今の開発では、フロントのUIコンポーネントをドラッグ・アンド・ドロップで作成すると、サーバサイドまで自動で実装されるようなリッチなIDEが大手ベンダーなどから登場していると、コメントが付け加えられました。</p>

<p style="text-indent: 0em;"><strong>【白石氏】</strong>HTML5の登場以前はサーバサイドレンダリングが主流だったが、HTML5の登場によってクライアントサイドでのMVCが実現できるようになった。ネイティブアプリ開発と同様にリッチな開発用ツールを活用した、ドラッグ・アンド・ドロップによる開発も十分に可能になると考えている。</p>

<h4>開発プロダクトにおける責任の所在の変化</h4>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong>ベンダー系技術を利用すれば開発における全てのフェーズにおいて、ある一定以上をベンダーの責任として責任転嫁することも可能だが（実際に、全てMSのせいだといわれることも…）、オープン系技術を利用する際は、自分たちで最後まで責任を取る必要がある。その反面、W3Cなどに積極的にコミットすることで、自由に仕様を作っていけるというメリットも享受できる。</p>

<p>春日井氏のコメントを受けて川田氏からは、オープン系技術であってもRed Hatなどそれをサポートするベンダーが存在する。白石氏はそれを受けて、オープン系技術であってもある程度のサポートを行って欲しいというニーズが存在し、それを請け負うことでサポートビジネスが成り立っていると、付け加えられました。</p>

<h4>Web Componentsの登場が今後の開発現場に与える影響</h4>

<p>ここで白石氏から、Web標準で議論が進んでいるWeb Componentsについての話題が出ました。来場者の認知度は4割ぐらいで、結構高い印象。白石氏から春日井氏へ、マイクロソフトとしてコミットしようとしているのかという質問。</p>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong><a href="http://html5labs.interoperabilitybridges.com/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">HTML5Labs</a>でWeb Componentsは取り上げられており、現在、研究開発部門でどうやってブラウザや開発ツールに実装するのか、検討されている。</p>

<p style="text-indent: 0em;"><strong>【白石氏】</strong>Web Componentsが出てくると、それを開発するツールはベンダー独自だが、そのコンポーネント部分はWeb標準という面白い状況になる。</p>

<h4>ブラウザのバージョンアップサイクルの変化</h4>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong>運用という観点では、ブラウザのバージョンアップサイクルが早く、ChromeとFirefoxは6週間、IEは2年に1回バージョンアップを行っている。6週間に1回出てくる新しいブラウザを検証するのは現実的ではない。そういった現状をふまえると、サポートを行う・行わないという線引をある程度決めていく必要があるのではないか。</p>

<p>ここで白石氏から、素早いバージョンアップで後方互換性を維持したまま、セキュリティアップデートや最新機能が提供されることに、エンタープライズITとしてはメリットを感じないのか、という問いかけがありました。</p>

<p style="text-indent: 0em;"><strong>【川田氏】</strong>短いサイクルでのセキュリティアップデートは問題ないが、機能改善を行うところは問題。また、サイクルが短くなっているという点で言えば、WindowsXPでは、標準ブラウザ（IE6）のサポートはXPのEOLまで有効だったが、現在のWindows8は、サービスパックが出た時点で標準ブラウザもバージョンアップしてしまう。つまり、ベンダーサポートのライフサイクルが短くなっている点に注意する必要がある。同じブラウザを使い続けられなくなるため、運用という観点では、難しい時代が始まる。</p>

<p style="text-indent: 0em;"><strong>【白石氏】</strong>Web標準に準拠したアプリケーションであれば、あるべき論を言えば、ブラウザが変わろうとも、Web標準のこの技術を使っている限りは正常に動くことを担保できなければならない。Web標準のルールはそういうことではないか。</p>

<p style="text-indent: 0em;"><strong>【川田氏】</strong>IE6の頃と比べると、プラグインレスになり仕様もWeb標準に準拠したものになってきているので、エンタープライズも今後はそうなっていくのではないかと考えている。</p>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong>マイクロソフトのIE開発チームが目指すべき方向、理念はそれと全く同じである。IE11でSame Markup（同じマークアップをしたらブラウザが違っても同じように動作する）という考え方を打ち出したように、現在のブラウザ開発はその理念に基づいて行われている。しかし、エンタープライズでは、IEを勝手にアップデートしたくないというニーズもあり、それに答えるためのブロッカーツールや、ブラウザを個別にカスタマイズしたいというニーズに答えるための、IEAK（Internet Explorer Administration Kit）というツールも提供しており、利用をおすすめはしないが、今までどおりのライフサイクルに近い形でIEを利用する環境も整えている。</p>

<h3>会場からの質問タイム（動画では01:02:02頃）</h3>

<p><a href="https://html5experts.jp/wp-content/uploads/2014/04/kaizyo.jpg" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer"><img src="/wp-content/uploads/2014/04/kaizyo.jpg" alt="kaizyo" width="300" height="200" class="alignright size-full wp-image-5909" srcset="/wp-content/uploads/2014/04/kaizyo.jpg 600w, /wp-content/uploads/2014/04/kaizyo-300x200.jpg 300w, /wp-content/uploads/2014/04/kaizyo-207x138.jpg 207w" sizes="(max-width: 300px) 100vw, 300px" /></a>
三者によるディスカッションが終了した後は、会場からいくつか質問を受け付けました。</p>

<ul>
<li>質問1<strong>「XPのEOLに伴い、IE8をミニマム標準とする考え方は見直されるのか？」</strong></li>
</ul>

<p style="text-indent: 0em;"><strong>【川田氏】</strong>IE8よりも、知らない方もいるかもしれないが、IEに搭載されているドキュメントモードのお陰で動いているWebアプリが、今も結構世の中にあることに注意する必要がある。しかし、Windows7 EOL（2020.01.14）以降のブラウザはドキュメントモードが存在しない。したがって、そういうシステムのEOLは必然的に決まってしまっている。そこを見据えた提案をSIではこれからやっていく必要がある。</p>

<p style="text-indent: 0em;"><strong>【春日井氏】</strong>マイクロソフトとしては、IE6という、かつて皆様に愛されたブラウザを収束させることに現在は重点を置いている。IE8のクロージングについては、その後に検討する課題として捉えている。</p>

<p>ここで春日井氏から、IE11は過去のIEとの互換性を保ちつつ、今後のあるべきWeb技術のサポートの両方を目指す新しい考え方のブラウザになっているとコメントがありました。</p>

<p style="text-indent: 0em;"><strong>【川田氏】</strong>ドキュメントモードをIE11から非推奨にしたという点について、大変良い判断だった考えている。非推奨になった機能はだいたい2バージョン後に消えているので、5年後、つまりはWindows7のEOL時期目前でドキュメントモードが廃止される計算になる。</p>

<ul>
<li>質問２<strong>「HTML5で業務システムをガリガリ開発している先進的なユーザ企業はどこか？」</strong></li>
</ul>

<p>NTTコミュニケーションズでSenchaを活用した<a href="http://www.xenophy.com/service/review01" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">事例</a>などが飛び出しましたが、その場では具体的な企業名は出てきませんでした。春日井氏によれば、先進的な事例を日本の開発ベンダーは大事にされるので、教えてほしいという要望はたくさんいただく、ということらしいです。</p>

<h2>当日のセッション動画</h2>

<p>パネルディスカッションを含む本カンファレンスの全てのセッションはこちらで視聴することができます。再生リストから再生したい動画を選択して下さい。</p>

<iframe width="560" height="315" src="//www.youtube.com/embed/videoseries?list=PLeFZWzLJpZcdASzt41r-ThpvFfNCQSRTS" frameborder="0" allowfullscreen></iframe>

<h2>全セッションの資料</h2>

<p>動画と合わせて全セッションの発表資料についても、以下カンファレンス公式サイトに掲載していますので、興味がある方はご覧ください。</p>

<p><a href="http://conference.html5biz.org/2014spring/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">Enterprise x HTML5 Conference 2014 &#8211; エンタープライズIT向けWeb標準技術のソリューション展</a></p>

<h2>カンファレンスのレポート記事</h2>

<p>カンファレンスに関するレポート記事が公開されていますので、ご紹介します。</p>

<ul>
<li><a href="http://www.sbbit.jp/article/cont1/27693" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">なぜエンタープライズITでHTML5が注目されているのか？Web業界のキーパーソンが議論（ビジネス＋IT）</a>  </li>
<li><a href="https://codeiq.jp/magazine/2014/03/7626/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">エンタープライズの課題解決を考える「Enterprise x HTML5 Conference 2014」レポート（おやつ問題解説付き）（CodeIQ MAGAZINE）</a></li>
<li><a href="http://www.atmarkit.co.jp/ait/articles/1403/28/news037.html" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">エンタープライズ開発現場が知っておきたいHTML5の4つの意義（＠IT）</a></li>
</ul>

<p><small>photo credit: Miyuki Baba</small></p>
]]></content:encoded>
		
		<series:name><![CDATA[イベントレポート]]></series:name>
	</item>
		<item>
		<title>TVゲームがヒントになった学習ゲーム — HTML5KARUTAという活動</title>
		<link>/webcre8/5321/</link>
		<pubDate>Thu, 20 Feb 2014 01:00:02 +0000</pubDate>
		<dc:creator><![CDATA[酒井優]]></dc:creator>
				<category><![CDATA[最新動向]]></category>
		<category><![CDATA[html5j]]></category>
		<category><![CDATA[イベント]]></category>

		<guid isPermaLink="false">/?p=5321</guid>
		<description><![CDATA[一月の末、東京・六本木ヒルズにあるグリーのオフィスを会場に、「2014 企業対抗!!HTML5KARUTA大会」というイベントを開催しました。このイベントはhtml5j、CodeIQ、グリー、日本マイクロソフトを中心とし...]]></description>
				<content:encoded><![CDATA[<p>一月の末、東京・六本木ヒルズにあるグリーのオフィスを会場に、「2014 企業対抗!!HTML5KARUTA大会」というイベントを開催しました。このイベントはhtml5j、CodeIQ、グリー、日本マイクロソフトを中心とした多くの企業やコミュニティの協力のもと行われました。懸念されていた参加率も95%程度と参加人数100名超の大きなイベントとなり、熱い熱気に包まれました。</p>

<div id="attachment_5324" style="width: 760px" class="wp-caption alignnone"><img src="/wp-content/uploads/2014/02/photo-html5karuta-01.jpg" alt="会場は多くの参加者でいっぱいとなった" width="750" height="500" class="size-full wp-image-5324" srcset="/wp-content/uploads/2014/02/photo-html5karuta-01.jpg 640w, /wp-content/uploads/2014/02/photo-html5karuta-01-300x200.jpg 300w, /wp-content/uploads/2014/02/photo-html5karuta-01-207x137.jpg 207w" sizes="(max-width: 750px) 100vw, 750px" /><p class="wp-caption-text">会場は多くの参加者でいっぱいとなった</p></div>

<p>このイベントは世の中で行われているITやWeb系の勉強会やセミナーとは大きく趣向が異なり、拙作「<a href="http://roadstohtml5.com/html5karuta/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">HTML5KARUTA</a>」を使ったゲームの大会を中心としたミートアップのような、宴会のようなイベントでした。企業同士のトーナメントをお酒を飲みながら観戦したり、談笑したり、用意されたブースで遊ぶこともできるというカジュアルなスペースを作ったつもりです。来場された方も通常のWeb系のイベントとは違う雰囲気に驚かれたかもしれません。</p>

<div id="attachment_5325" style="width: 760px" class="wp-caption alignnone"><img src="/wp-content/uploads/2014/02/photo-html5karuta-02.jpg" alt="イベントではいくつかのブースを設置していた" width="750" height="500" class="size-full wp-image-5325" srcset="/wp-content/uploads/2014/02/photo-html5karuta-02.jpg 640w, /wp-content/uploads/2014/02/photo-html5karuta-02-300x200.jpg 300w, /wp-content/uploads/2014/02/photo-html5karuta-02-207x137.jpg 207w" sizes="(max-width: 750px) 100vw, 750px" /><p class="wp-caption-text">イベントではいくつかのブースを設置していた</p></div>

<p>イベントの様子は<a href="http://www.youtube.com/user/html5j" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">html5jのYoutubeチャンネル</a>でも録画・配信されています。<br>
HTML5KARUTAイベント問題の正解発表と解説は、<a href="https://codeiq.jp/magazine/2014/02/5750/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">CodeIQ MAGAZINE</a>で公開中です。</p>

<h2>そもそもなぜ「カルタ」なのか</h2>

<div id="attachment_5326" style="width: 760px" class="wp-caption alignnone"><img src="/wp-content/uploads/2014/02/photo-html5karuta-03.jpg" alt="HTML5KARUTA" width="750" height="500" class="size-full wp-image-5326" srcset="/wp-content/uploads/2014/02/photo-html5karuta-03.jpg 640w, /wp-content/uploads/2014/02/photo-html5karuta-03-300x200.jpg 300w, /wp-content/uploads/2014/02/photo-html5karuta-03-207x137.jpg 207w" sizes="(max-width: 750px) 100vw, 750px" /><p class="wp-caption-text">HTML5KARUTA</p></div>

<p>HTML5KARUTAは、HTML5をこれから勉強するデザイナーやディレクター、学生や新卒採用者の学習の入り口として、マークアップエンジニアの再学習のためのツールとして作ったものです。すでにHTML5要素について理解の深い熟練者は読み手として参加し、ゲームをしながら解説を入れる役割を担うことで自分が正確な理解ができているのか再確認をすることもできます。</p>

<p>私がこうしたゲームによるHTML5の学習の手段を作ろうと考えたのは、実は有名な「桃太郎電鉄」というテレビゲームシリーズの影響によるところが大きかったと思っています。</p>

<p>このゲームはすごろく形式で日本各地の物件を買って周り資産を増やすゲームなのですが、勝利することまたは楽しむにはどこになんという名前の駅があるか、どんな産業があるかの理解が必要とされます。学生の頃地理に詳しかった人はこのゲームを遊んでいたのではないかと思いますし、同じようなことは歴史における戦略シュミレーションゲームにも言えると考えます。ゲームに熱中している間に知識が増える、これはとても良い学習の形だと思うのです。</p>

<div id="attachment_5327" style="width: 760px" class="wp-caption alignnone"><img src="/wp-content/uploads/2014/02/photo-html5karuta-04.jpg" alt="読み札が要素の説明、取り札には各タグが書かれている" width="750" height="500" class="size-full wp-image-5327" srcset="/wp-content/uploads/2014/02/photo-html5karuta-04.jpg 640w, /wp-content/uploads/2014/02/photo-html5karuta-04-300x200.jpg 300w, /wp-content/uploads/2014/02/photo-html5karuta-04-207x137.jpg 207w" sizes="(max-width: 750px) 100vw, 750px" /><p class="wp-caption-text">読み札が要素の説明、取り札には各タグが書かれている</p></div>

<p>カルタの読み札は各HTML5の要素の説明となっており、どの要素のことを言っているかわかったら、そのタグが書かれている札を取ります。カルタというゲームの形をとっていますが、これは言ってしまえば単語帳を読んでいるようなものであり、プレイヤーはゲームに参加する上でその全ての説明を聞かされることになります。構造的に、説明が頭に入り、理解しやすいゲーム性になっているのです。</p>

<h2>技術者、利用者同士の共通言語となり得るHTML</h2>

<p>今回のイベントでは、Google、日本マイクロソフト、アドビ システムズといったWebの中心的企業のほか、クリエイター集団であるカヤックやチームラボに、NHN PlayArt、はてな、グリーのようなサービス運営、そしてLIG、プライム・ストラテジーというWeb制作会社の全10社に参加して頂きました。企業自体もバラエティに富んでいますが、それぞれの企業から名乗りを上げて頂いた方々一人ひとりの職能も、エンジニアであったりコーダーであったり、デザイナー、アプリ開発エンジニアなど様々です。</p>

<div id="attachment_5328" style="width: 760px" class="wp-caption alignnone"><img src="/wp-content/uploads/2014/02/photo-html5karuta-05.jpg" alt="決勝戦の様子。様々な職域の制作者が一緒に遊んでいる" width="750" height="500" class="size-full wp-image-5328" srcset="/wp-content/uploads/2014/02/photo-html5karuta-05.jpg 640w, /wp-content/uploads/2014/02/photo-html5karuta-05-300x200.jpg 300w, /wp-content/uploads/2014/02/photo-html5karuta-05-207x137.jpg 207w" sizes="(max-width: 750px) 100vw, 750px" /><p class="wp-caption-text">決勝戦の様子。様々な職域の制作者が一緒に遊んでいる</p></div>

<p>これら全ての業務領域の違う制作者の皆さんにとっての共通言語となり得るものは、やはりHTMLだと思います。そしてもちろん、今回参加してくれた技術者や開発者のようなプロフェッショナルでなくともHTMLは書きますよね。ブロガーやマーケターのような人でも同じゲームで遊び、ライトに学ぶことができます。</p>

<p>このゲームではHTML5を題材としていますが、もちろんCSSやJavaScriptで同じようなゲームを遊ぶことができるでしょう。</p>

<h2>イベントや活動の意義について</h2>

<p>HTML5KARUTAは2012年の12月に生まれ、13年の1月には全国のコワーキングスペースでこのカルタで実際に遊ぶイベントを開催しました。その後も各地のイベントの余興として、専門学校のイベントとして、または社内勉強会やレクリーションなどのために使われています。</p>

<div id="attachment_5329" style="width: 760px" class="wp-caption alignnone"><img src="/wp-content/uploads/2014/02/photo-html5karuta-06.jpg" alt="各地で行われたカルタ大会" width="750" height="500" class="size-full wp-image-5329" srcset="/wp-content/uploads/2014/02/photo-html5karuta-06.jpg 640w, /wp-content/uploads/2014/02/photo-html5karuta-06-300x200.jpg 300w, /wp-content/uploads/2014/02/photo-html5karuta-06-207x137.jpg 207w" sizes="(max-width: 750px) 100vw, 750px" /><p class="wp-caption-text">各地で行われたカルタ大会</p></div>

<p>HTML5の仕様は現時点では勧告候補という状態にあります。現時点で販売している最新版のHTML5KARUTAには2013年8月時点で削除されたcommand要素とmenu要素が収録されており、その際追加されたdata要素は未収録です。2014年HTML5は勧告に達する予定ですが、その際にはこのカルタも完璧な形にできるのではないかと考えています。</p>

<p>前述の通り、HTML5KARUTAは「遊べる参考書」です。カルタを遊ぶことで自然と要素の意味が覚えられ、知識が深まり、プレイヤー同士の議論やコミュニケーションを促すことができます。一式遊ぶことで、全ての要素を知ることが可能です。</p>

<p>今回のイベントのように、ときには楽しいイベントとして学習を扱うこともあってよいのではないでしょうか。</p>

<p>ちなみに現在は<a href="http://roadstohtml5.com/html5karuta/game/" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">HTML5KARUTAのオンラインゲーム</a>も公開しています。一人で遊ぶことが可能なので、こちらで修行するのもいいと思います。</p>

<div id="attachment_5330" style="width: 760px" class="wp-caption alignnone"><img src="/wp-content/uploads/2014/02/photo-html5karuta-07.jpg" alt="ゲームで一人で練習してみるのもアリ" width="750" height="500" class="size-full wp-image-5330" srcset="/wp-content/uploads/2014/02/photo-html5karuta-07.jpg 640w, /wp-content/uploads/2014/02/photo-html5karuta-07-300x200.jpg 300w, /wp-content/uploads/2014/02/photo-html5karuta-07-207x137.jpg 207w" sizes="(max-width: 750px) 100vw, 750px" /><p class="wp-caption-text">ゲームで一人で練習してみるのもアリ</p></div>

<p>今後も大小様々なイベントを開催していくと思いますし、カルタを購入された方がこれを使ったイベントを行うことも自由です。この活動を皆さんにも応援頂けると嬉しいですね！</p>
]]></content:encoded>
			</item>
	</channel>
</rss>
