kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

de:code 二日目

パーティー会場が狭かったからか、夜寝る前から喉が変だなーと思ったら、完璧に喉風邪…持っていたチョコレート食べたらましになりましたが、ほかにも同じ症状になっていた方がいたので、やっぱりあの高密度環境がよくなかったようです。

OSS時代のWebアプリケーションの企業アーキテクチャ

アークウェイの守屋さんのセッション。いつの間にか今日に振り替えられていて、結構困った時間帯になりました。

昨年同様、歯に衣着せぬ…今年はちょっと遠慮していましたがw、企業が今後選ぶべきアーキテクチャと選択するOSSを選ぶ指針みたいな話でかなり参考になります。

ASP.NETというか、.NET Coreとなり、LinuxやMac OSの動作も視野に入れるようになり(とはいえ、あと一年はかかるでしょうけど)、進化のスピードやコミットしている人たち(企業)なんかを見ておいて、ローカルリソースに限らず活用しましょう、という話。

守屋さんががんばっていたアプリケーションは最後まで行かず残念。VS Codeのインテリセンスがうまく動かなかったからでしょうか(笑)。

クラウド時代のデータアーキテクチャ

Azure CATの多田さん…が、正直ちょっと期待外れだった。データがここ数年EB単位で増加しているという話と、ホットデータとコールドデータという考え、そのデータを支えるAzureの機能はこういうのがありますよ、という話。

どこに着地させたいのかよくわからなかった。概要セッションのようなんだけど、なんか時間をどんどん使っているようだったので、途中退出。

徹底解説 ! プログラマーがおさえておくべきAzure Active Directory のすべて

松崎さんによるレベル400セッションで、とりあえずAzure ADがどんなものなのか説明はしないけど、Azure ADはこういう仕組みで動いているよという話から、実際にこういうアプリケーションではこういう組み込みをするとか、.NETとiOS/Android以外は自分で頑張れ、みたいな話とかいろいろ。

とはいえ、Azure ADはインターネット標準であるWS-Federation(といってもWS-*は終わったんだよな…)、使って、ほらこうやってFiddlerでキャプチャしたら見えるんだよ、改ざん検知はデジタル署名だから、自力でやる場合はちゃんと検証しろよーみたいな細かいことまでフォローアップ。

そのほかのサービスアプリケーションでこうやればいいとか、具体的な例で勉強になったんですが…RoomGとかの縦長ルームで後ろの席に行くもんじゃないですね。私の視力ですらVSの中身が見えなくて困ります。マジあのちっちゃいモニターに映すのはやめてほしい。とりあえず100インチくらいのスクリーンでやってほしい。

ここまでできる︕Office 365 API を活用したアプリ開発 ~ Office 365 内のデータ活用~

元サポートエンジニア現エバンジェリストの太田さんによる総額12万円分の価値あるセッション(笑)。Office 365のサポートによく来る質問TOP4から実際どういうことなのよ、という事例解説。プロフェッショナルインシデントが3万円くらいからなので、4つ答えると12万円と。

Office 365はAzure ADをバックエンドの認証に使っている話(すなわち直接は関係ない)。基本的な認証、エンドポイントって何?チケット、トークンって何?とかそういう基礎用語をさらって具体的なOdata/Office 365 APIを使った実例紹介でした。

Office 365のAPI使った事例紹介もありましたが、もうちょっとこう、まだWindowsアプリが出始めのころのようなあか抜けない感じがそこはかとなくしています。時間が解決するでしょうけど。

Xamarin(Androdi/iOS)などもOffice 365対応しているのでよろしくね、みたいな。

今まではExchane,SharePointの機能を使おうとしたらそれぞれトークンが必要で、しかも寿命もあるので、トークン管理が大変だったけど、それを解決して、横断的に呼び出せるようになるのがIgniteで発表されたUnified API。最初電話(Skype for Business)のAPIかとおもったよ。

ドキュメントはほとんどなくて、このご時世MSDNに載せるほうが時間かかるということで、Odataのエンドポイントにアクセスしてメタデータ見てね♪という男気あふれる仕様(ぉぃ)。そのうちできるのでしょうが…。

大田さんの話もはきはきしてて面白かったです。

Azure SQL Database 最新情報とベストプラクティス

みんなが「金麦 雑記」で検索しているムッシュこと小澤さんと井上大輔さんのセッション。SQL Serverのベンチマークってなかなか難しくて、しかもMSが認めないと公表しちゃいけないことになっている(EULAに書いているはず)のですが、SQL databaseとAzure SQL Databaseのパフォーマンスの比較は非常に楽しみにしていました。

SQL Database(Premium)のストレージ速いんですねぇ。容量と並列度、サポートしている機能などが収まるならSQL Databaseでもいいかんじです。

逆にCPU勝負のようなクエリをがんがん流すならCPUの上限を自由にできるAzure IaaSもしくはオンプレミスSQL Serverに優位がある感じです。

透過型暗号や、V12で追加された暗号系とか非常に参考になりました。SQL Serverで使える機能で、SQL databaseで使えないとされた多くの制限もはずれているんですねぇ。

Windows 開発における Visual Studio Online を用いたプロジェクト管理

これも楽しみでした。Windowsの開発は今まで三か月程度の間隔でマイルストーンという単位を設定してそこにあわせて実装できる機能で人月計算していたけど、バッサリやめて、アジャイル開発に移行。

タスク管理やバグ管理も自分たちで作ったものを使うという文化があって、多くのチームが多くのツールを使っていたけど、それもバッサリやめてVS Online(ただしスペシャル改造された特別仕様版)に移行。

VS Onlineのタスク管理のところを見ただけですが、ざっくりみただけでも結構ありました。

  • Areaを複数指定可能(おそらく複数に依存するからなのでyそう)
  • 担当PM、上位PMと複数の承認者らしき人を指定できる
  • Custom Stringという自由になにを書いてもいい文字フィールドが20以上
  • VSOでは絶対できないようなレポート機能

あと数個独自改造(もちろんVSチームがやったんでしょうけど)していたようです。見積もりはオープンドア、クローズドアという方式があるけど、会議、メール処理などを含めて一切合財すべての時間は作業時間として考える「オープンドア」方式を全Windowsチームで採用。

私が会社でやっている時はクローズで考えていたけど、むりかなーとか思っている今日この頃です。

昔はTest/Dev/PMという職種だったけど、Testエンジニアというものはなくなって、Qualityに変更、TestはDevが責任を持つという方式に変わったそうです。Qualityは何をするかといえば、Windows Insiderで計測したテレメトリから開発シナリオと目標が正しいか検証するという役割なんだそうで。

今までは調査会社などで調べたデータを基にペルソナを作って、ユーザシナリオを構築してフィーチャーを考えていたけど、そういうものと並行して、どうなればユーザがうれしいかということを主眼において、考え、リリース&Qualityがテレメトリを計測して、レポートするという方式なんだそうです。

実際にInsiderプログラムで送られたフィードバックも内部のWorkItemとして登録されていて、どこのタスクになっているかすべてリンクされて相互に参照可能な状態になっているんだそうです。

あと、優先度も必ずすべてが一意になるように決める、同率二位というような優先度は認めないそうで。フィーチャーだけで数十万になろうかというWindowsではそうしていくしかないんでしょうね。

「外部の方がIMEはもう日本で作ってないみたいなことを言っていたようだがそんなことはない。CJK以外にもベトナム、ミャンマーなどのレイアウトも含めて責任持っている」と力説されていました。特にミャンマーなどではInsiderプログラムの対象者がそもそも少ないので、わざわざ日本で探して、体験してもらったそうです。

タスク、フィーチャーなどの落とし込み方もまず経営陣が外部に向けて「こういう問題を解決する」とコミットしたシナリオについてそれがどうなればユーザー体験として喜んでもらえるか、ということをhowは考えずにwhatだけでPMが考えてさらにタスクに落とし込んでいくという話も印象的でした。

Windowsの開発は従来のマイルストーンモデルからアジャイル型になったけど、それには組織、全員の考え方含めて全部が変わらないと無理だろう、私たちもようやく軌道に乗りつつあるところ、という話が非常に印象的でした。

進化は止まらない!ADO.NET Entity Framework の今

EF1はロバ、EF4で馬になり600%(!)の速度アップを果たしたEntity Framework 6。ユニコーンだそうですが、今CTPが開発されているEF7の現状と、おさらいという感じ。日本ではEFやる人あまりいないですしね…。

型付きデータセットに書きこみではまだまだ負けてますが、非同期シナリオで結構頑張っています。

従来のデザイナでの生成、コードファースト、モデルファーストお好きなシナリオでどうぞ、こういう方式で選びましょうというお話だけど、やっぱりがちがちにスキーマ決める人が多そうな感じする…。とはいえ、edmxなくなりそうだしなー。

使う使わないは置いといて、引き続き見るところは見ておこうと思ったEntity Frameworkでした。7はASP.NET同様、まだまだかかりそう…。

二日のまとめ

ちょっとセッションの入れ替えはどうにかしてくれと思ったんですが、あからさまにそこの部屋でやるか?というセッション(Windows 10移行なんか狭いところでやったから立ち見すらできなかった人がいた)とかあったのは結構不思議。

チョークトークは新しい試みでしたが、よかったんじゃないでしょうか。でもたぶん出るメンツがあまり変わってないんじゃないかみたいな感じがあったので、私は行かなかったんですが…。

ショートセッションはどうだったんでしょうね?私は出ていないですが、言語の新機能みたいなやつはよかったのかも。とはいえ、日本だとC#はにぃにのところがあるので、ここ読んでいればいいかという気もする。

ufcpp.net

受けつけデスクはせめて初日の午後以降はよけてくれるとかして、スムースな流れが作れるようになるといいなぁ。後なんかあったかな…前列に電源があるのはありがたかった。 

今回はiPad mini + MS Universal Keyboard + OneNoteで全部メモを取ったんですが、これでいいくらいですね。電池も持つし。ThinkPadも持っていったのですが、出すの重くてwというか原稿とブログ用なんで、Surface 3くらいの軽いのがほしい。