Jack of all trades

master of none. 多芸は無芸を地で行く、自作自演何でも屋。

Microsoft Conference 2014 参加レポート Day1

去る2014年10月23日および24日に開催されたMicrosoft Conference 2014に参加しました。
Windows10と新しいWindowsServerのTechnicalPreviewをはじめとして、最近Microsoftの動きが活発であること、また開発者向けのセッションが多めということで5月のde:codeに引き続き参加することにしました。
(実は当初、ITプロ向けのカンファレンスだろうというイメージ先行で完全にノーマークだったというのは内緒です)

ボリューム的に今回はまずDay1についてのレポートをまとめます。Day2は次回に。
(個人的にはDay2の方が盛りだくさんでした。特にMachine Learning!)

Day1、Day2共に魅力的なセッションが目白押しでしたが、身一つでオールセッション参加できるわけもないので、実際に参加したセッションについてのまとめをば。
(それにしても今回のカンファレンスは完全に会場がキャパオーバーでしたね…。ちょっとEXPO会場寄っただけで1セッション満席で参加できなかった…)

マルチデバイスを見据えたこれからのアプリケーション開発技術

  • エバンジェリスト高橋 忍さんによるマルチデバイス対応のアプリ開発に関するセッション。
  • 全てのデバイスで同じエクスペリエンスを提供するアプリをユニバーサルWindowsアプリで開発。
  • ユニバーサルWindowsアプリも共通化できる部分とそうでない部分(固有機能)がある。
  • DevCenterBenefitという、ストアアプリ開発者支援プログラムがある(詳細は忍さんがBloghttp://blogs.msdn.com/b/shintak/に書いてくれるらしい)
  • 同一のアプリで、ストア版とPhone版それぞれに発行したアプリを結び付けることができる(ストア画面で紐づけられたアプリには対応のアイコンが表示される)
  • 忍さんが作ったアプリを例に国別のアプリダウンロード比率を見る。やはりUSが多い、次いでUK、Brazil、Italyなど。
  • ストアアプリやPhoneアプリは日本語版と英語版のハイブリッドで発行できる。
  • WindowsPhoneアプリ作るなら今はとりあえず英語版で発行すると結構使ってもらえる。
  • 売上に対する収益配分は通常7:3(開発者70%:MS30%)でアプリ内課金や広告収入の実装も可能。
  • ユニバーサルWindowsアプリでは固有機能を使ってなければ、全部Shareに放り込むだけでWin8.1とPhone8.1の両方で動くアプリがそれぞれ発行できる。
  • C#のコード内で環境に合わせて処理を分岐する場合は#ifdefを使う。
  • XAMLのコード内で処理を分岐する場合はVisualStateManagerを利用する。
  • アプリ間データ共有は、ローミング(簡単に言うとOneDriveを経由してデータをやり取りする)を利用する。
  • ローカル変数にデータを放り込む感覚でRoamingの変数(?)にデータを放り込むだけ。

インフラストラクチャーを正しく移行するために知っておきたい 10 のテクノロジ

  • エバンジェリスト安納 順一さんによるインフラ移行に役立つテクノロジに関するセッション
  • PowerShellスクリプトでworkflowというfunction的なものを定義して実行すると、定義した名前でコマンドが生成される。
  • 生成されたコマンドを実行すると定義内に書いた処理を実行してくれる。
  • コマンドの引数に-AsJobを付けるとバックグラウンド実行ができる。
  • ジョブのサスペンド、レジュームなど状態遷移が可能で、ジョブを永続化できる(止めたくないジョブを動作させ続けられる)

※以下、内容を追いきれなかったので、ほぼ用語の羅列。今後はAzure ADを軸とする認証基盤の連携が主流になる予感。

  • Runbook
  • AzureAutomation
  • AzureActiveDirectory→Office365やIntuneなどのクラウドサービスの為の認証基盤。
  • AzureAppProxy→リバースプロキシでなく、アプリケーションパネルにログオンさせて、そこからアプリに入らせる(認証はAzureAD)
  • AzureADSync→AzureADとオンプレのADを連携。
  • 多要素認証(Multi Factor Authentication)
  • Application Insight→WebServerにAgentをインストールするだけで利用可能。
  • AzureRemoteApp→RDPプロトコルでアプリケーションを発行。Windowsに限らず様々なプラットフォームで同じアプリケーションを利用可能。

緊急セッション:次世代OS Windows10の最新情報

  • 当日急遽開催が発表されたWindows10に関する緊急セッション
  • コマーシャルグループシニアマネージャー西野道子さんによるセッション。
  • 一般的な機能を押さえるにはTechnicalPreview版を試用するのが手っ取り早そう(そういえば既にアップデートが公開されているがまだ試してなかった)
  • パスワード認証以外の認証機能(スマートカードや生体認証の利用)
  • 現状Windows8(8.1)では、MicrosoftアカウントとWindowsローカルアカウント(もしくはActiveDirectryのドメインユーザー)の2重管理が起きている→AzureADへの統合
  • 企業/個人のデータ分離と格納
  • モバイルとデスクトップ両方の保護。MDM(Mobile Device Management)の強化。
  • アプリケーション特化のVPNサードパーティ製のVPNの利用を想定
  • インプレースアップグレード(クリーンインストールを極力減らす)
  • OEMデバイスをEnterpriseデバイスに変更出来るような仕組み(プロビジョニング)
  • アプリの展開方法の変更→従来のストア、ストア+VPP、Enterpriseストア
  • OSのアップデートライフサイクルについて、コンシューマーとエンタープライズで分離
  • 一般的なビジネスユースではDeferredUpdate(120日間のUpdate適用猶予)を提供
  • ミッションクリティカルなシステムに対しては「Long Term Support Update」を提供(10年間のセキュリティ更新のみのUpdateを想定)

記載内容に誤りや過不足などありましたら、顔面にめり込む勢いでご指摘いただけると幸いです。
それでは、Day2についてはまた後日ということで。