2017/10/7の .NET Conf 2017 Tokyo, Japan でお話して来ました。

発表に使用したスライドはこちらです。

下記について書いていきます。

  • 登壇のきっかけ
  • テーマ選定の理由
  • 準備
  • 振り返り
  • お知らせ
  • おまけ

登壇のきっかけ

Microsoftの方からXamarinについて登壇してみませんか?というお話をいただいたのがきっかけです。

Xamarinのユーザーグループには登壇してくれそうな人はいるものの、今回は普段あまり喋ったことない人がよいということでお声がけいただいたようです。

聴衆として参加登録はしており、「セッションは公募」というのを見たときは「さすがにこれまで5分しか喋ったことないし、いつかは喋ってみたいけどさすがに長時間(まだセッションの尺も掲載されていなかったので雰囲気)は無理やなぁ」くらいに思っていました。

お声がけいただいてもこの状況や思いは変わらなかったのですがw、ひとしきり周囲の人(たまたま家族旅行中で沖縄にいました…!)ときゃーきゃー騒いだあと、いつものようにネタは何も決まってないけどとりあえず引き受けることにしました。

たぶんいつかやりたいそのいつかも「はいはい45分セッションね?あれとあれとあれ話すから余裕ですよ!やりますよ!」みたいな状態ではないので、この機会逃すのは勿体なすぎる!

テーマ選定の理由

引き受けたものの、Xamarinに詳しいわけではないので、 準備しながら勉強したい、といういか勉強するプロセス自体がテーマにならないかなぁ?と思いました。

  • 体系的に勉強したい(学ぶべき領域整理されててほしいという甘え)
  • 45分という自分にとっては未知な時間を「埋め」やすい

というのを考えたとき、Xamarinの技術書の話をしようと思いました。

技術書にはある程度体系的(深くなくていいから網羅しててほしい)な知識が期待できるし、記憶ではこの1年でたくさん本が出ているので「m分 × n冊」みたいに時間も把握しやすいかなぁと。

そういうわけで、お声がけいただいたその日にXamarin本をテーマにすることに決めました。

5分のLTでも1ヶ月前から準備するタイプなので、本番3週間前スタートだと悩まず進み切るしかないのです…!

準備

本の数を把握する

本の話をするということで、まずはAmazonで「Xamarin」を検索しました。

ここ1年の日本語技術書は8冊。

本番2日前に発売されるものはスルー(しようと思っていましたが買えたので触れました)するとして、読めなくは無さそうです。

去年のスライドを眺める

ちょまどさんが当日の雰囲気や登壇者のスライドをまとめてくれいていて助かりました。

dotnetConf Japan 2016 で登壇してきました!

資料の枚数などを参考にしようと思いましたが、きっとそれぞれ芸風が異なりそうだったので一通り読んでそっ閉じしました。

本を買う、読む

すぐ読み始めたいものはKindleで買い、ある程度業務に関連あれば会社で買ってもらえるので他は購入申請しました。

既に買って読んでいるものもありました。

スライド作成

本を読むのにそれなりに時間がかかったのと、タイミングがいろいろと重なってしまったのとで10/3から当日(10/7)の朝に作成しました。

本を読んだ感想を念頭に構成だけ文字にしてスライド作成していくものの、意外と流れが作れなくて悩んでいる時間が多かったです。

「本を見ていく「基準」を提示して、その基準に各本を当てはめ、最後に傾向と感想を述べる」という大まかな流れの中で、突然本が出てきても流れがよくわからないし、基準の粒度が荒すぎると特徴を見出せないし、細かすぎると自分がわからなくなるしで最終的に資料のような形で腑に落ちたのは当日の朝でした。

練習

無事資料の作成が終わってスライドの枚数は60枚と少し。

いざ練習してみて、余るなら削ろうくらいの気持ちでいたら42分。

狙ってそうなったものでもなく、気持ちゆっくり目に話せばちょうど時間くらいで運よかったなぁ…という感じでした。

練習中に嫁氏が校閲してくれたときにいくつか誤字見つかったので感謝感謝でした。

振り返り

振り返ります。そういう芸風なので…。

Good

引き受けたこと

これは間違いなくよかったです。

準備期間は瀕死状態が続きましたが、そうやって大きくなっていくんです。(てきとう)

テーマ選定

自分が向き合うべきテーマだったのが何よりもよかったです。

前回のXamarin関連のLTではテーマが曖昧過ぎてちょっとアレだったという反省がありました。

XamarinのLT大会で「LottieXamarinで始めるXamarinアプリのアニメーション」を話してきました #jxug

今回はLTのタイトルとは別に「Xamarinやりたいけどよくわからんので、まずは広く見渡して知識を整理する、サンプルアプリで手もできる限り動かす」というテーマをおいて取り組んだので、目的がある程度果たせたのもよかったです。

内容(Xamarin本の整理)自体も、もし自分がやらなかったら他で企画があったかもしれない(関心がある人がいそう)ものだったようでよかったです。

(企画のネタの目を摘んでしまっていたら事故としか言いようがないですね…)

セッション終了後も本の紹介でちょうど困ってたところでよかった等コメントいただけて嬉しかったです。

セッション2日前発売の本にも触れたこと

たまたま入手できたからという側面はありますが、この本の内容自体が価値あるものだったので少し無理してでも触れることができたのはよかったです。

ただ、反省としてはこの本についてはパラパラ目を通したくらいなので、フェアな比較にはできてなさそうなことです。

これからサンプルも手を動かして追って、印象が変わったり事実と異なる扱いになってしまっていたりしたらスライドを修正します。

Challenge

誰向けのセッションなんや

僕は初心者なので初心者向けのセッションしかできないはずですが、初心者向けセッションなら「Xamarinアプリ開発に必要そうな知識」をもう少し整理?わかりやすく話す? などできればよかったかなぁと思いました。

本を評価していく「基準」なので、伝えられなければ前提が崩れてしまう…。

それか「どんなときXamarin使いたくなると思いますか?」じゃなくて、「Xamarin使ったことありますか?」「なんで使いましたか?」みたいに経験の有無やどういう説明必要か(はしょっていいか)確認したり、セッションの前に告知するとかしておくとよいのかなぁと思いました。

何はともあれ、自分が詳しくないと話すレベルの調整もできないので、詳しくなるところからです。

スライドが文字文字しい

自信の無いことの表れ…という側面と、発表するというか後から読める資料にしたいという側面どちらもあった気がします。

文字ばっかりのスライド見たくないですよね?書いていることをそのまま喋るだけならブログとかでええやんという感じです。

スライド自体は文字減らすか図にするかして、詳しく話ができる程度に準備するのがよさそうです。

また、サンプルアプリがついている本が大半だったので、その本で出来上がるアプリのGIFとか貼っときたかったです。

途中までGIFを準備しながらやっていたのですが、時間が足りなさそうで断念しました。

機材

USB-CとHDMIのコネクタを会社に忘れたのと、持参したUSB-CとVGAのコネクタが動作しませんでした。

Xamarin.Macの人に助けてもらいました。

純正奴買います。

こんなんなんかぁ…。

あと、ひらりんさんのブログ記事に触発されて本番直前に買ってはみたものの、余裕(論理/物理)がなかったので諦めましたw

発表中ずっとPCの画面見ていて発表っぽくないので、しゃべり方も変えてけたらなぁと思います。

お知らせ

発表でも触れましたが、技術書3で出展・販売されるXamarinの同人誌の1章分(Xamarin.Macアプリケーションの配布方法)を担当させていただきました。

技術書典3 出展情報 - Xamaritans

当日はブースにもいる予定なので、ぜひ遊びに来てください!

おまけ

5000兆年ぶりにTogetterで当日の自分のセッションやスライド関連のものをまとめてみました。

あと、動画撮っていただいてないと思ってたのですが記念に置いておきますw

まだ全部見てないのに、「まぁ」と「というところで」何回言うねんという喋りになっています。改善ポイントいっぱいですね。

運営のみなさま、聴いてくださったみなさま、資料見てくださったみなさまありがとうございました!

無事終わってほんとによかったーーーーーー

勉強会に参加したらブログにまとめるマンです。

今日は.NETラボ主催の勉強会に行ってきました!

コミュニティ

.NETラボ: .NET技術やマイクロソフト製品について勉強するコミュニティー。毎月第4土曜日に定期開催しています。

とのことです。毎月開催タイミング決まってたら心の準備しやすいですね!

勉強会

今日は.NETラボ 勉強会 2017年3月ということで、テーマは幅広くということでしたが、Microsoft Bot Frameworkネタが2件 + LUIS(Language Understanding Intelligent Service。Cognitive Servicesの1つでリクエストに含まれる文を解析して文の目的と構成要素に分解してレスポンスを返すよう学習させられるAPI)今すぐ手を動かして開発したくなるような話題が特にアツかったです。
ハッシュタグ #dotnetlab

お品書きとスライド

上がってるものはまとめていきます!概要はconnpassより。

  • .NETラボ紹介とご案内(木澤朋和さん
  • マイクロソフトMVPアワードプログラムのご紹介(木澤朋和さん
    • マイクロソフトMVPアワードプログラムのご紹介と新しくなった申請方法についてお話します。応募を検討されている方のご相談にも乗ります。
  • 今こそMicrosoft Bot Frameworkを学ぼう中島進也さん
    • 2016年3月末に公開されたMicrosoft Bot Framework。 もうすぐ1年が経ち、そろそろPreview版から正式版になるのではと期待が高まります。 そこでBot Frameworkを使用したの開発を始めるにあたって必要な概要を俯瞰的に紹介いたします。
  • 最近流行りのエンジニア田舎へ移住ってどうなの?(藤原隆博さん)
    • ①移住を志した経緯 ②移住直前直後の失業時の苦労 ③田舎のit仕事って? ④客先常駐型の仕事はある? ⑤6次産業化、廃校利用等の新ビジネス ⑥マスメディアへの露出 ⑦兵庫県のit移住の補助金制度 ⑧移住に対する所感。
  • BotFramework と LUIS を使ったアプリの開発横浜 篤さん
    • BotFramwork(とBotServices)の概要と、Cognitve ServisesのLUISの概要を説明し、サンプルのアプリで開発の一例を紹介します。
  • 進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説~(日本マイクロソフト テクニカルエバンジェリスト さっくるさん
    • 今年の前半に公開が予定されているWindows 10 Creators Updateにより、Edgeには新しくさまざまな機能が追加されます。本セッションでは、Creators Updateで追加される可能性が高い新機能について、既存機能のおさらいやデモを交えてご紹介いたします。
  • ライトニングトーク & ディスカッション

セッションメモ

マイクロソフトMVPアワードプログラムのご紹介(木澤朋和さん

最近毎月申請できるようになったMVPについて。

特典はめちゃ多い!

  • MSDNサブスクリプション
  • Office 365 ENterprise E3提供
  • MCP受験料50% off
  • XamarinUniversityサブスクリプション
  • MVPグロサミ
  • Channel9での動画配信
  • 技術情報の提供(NDA)
  • 賞状と盾

それよりも、もちろんMVPになることが目的でないし、申請の要件にあるコミュニティへのよい影響や情報発信も受け取り手があってこそなので感謝を忘れずにというよいお話でした。

勉強会の後にお話聞かせていただきましたが、エンジニアとして大きくなるべくよい情報の発信(をするための鍛錬)やっていきたいなぁということで記事書いたりLTしたりやっていくことにします。

MVP詳細は公式ページにて!

今こそMicrosoft Bot Frameworkを学ぼう中島進也さん

Bot開発するためのフレームワークもいろいろ出てるんですね!

  • よさげなところ
  •  ワンソースでマルチチャネル(Slack、Skype、Facebook...)対応
  • Channel Inspectorで各チャネルにどの機能が対応してるか教えてくれる
  • 開発から公開までの全行程サポートが手厚い
  • 注意!
  • .NET Core未対応
  • Bot Directoryで公開することが前提で、プライベートで運用したい場合は要相談
  • 会話情報は匿名化して収集される(かも)
  • 気になる
  • Direct Line API: connector未対応のプラットフォームやスマホアプリと接続するためのしくみ
  • Xamarin Shopping App
  • C#でLine bot

よく使ってるプラットフォームにのっかって機能提供できるはめちゃくちゃアツいですね!

新しくアプリを入れるモチベーションがない人でもLineだったり、その他よく使ってるSlackやチャットサービスに向けて対話的なインタフェースでサービス提供できるとなったときに夢広がりますね。

と思う一方でLineにそういうサービス(アカウント)接続したところで継続的に使った試しはないので研究してみたいですね。

最近流行りのエンジニア田舎へ移住ってどうなの?(藤原隆博さん)

広い庭で犬と駆け回りたい…

というのはおいといて、僕は東京好きですが、土地の商機やチャンスを見出して生きていくのも素敵だなぁと思いました。

BotFramework と LUIS を使ったアプリの開発横浜 篤さん

Microsoftの言う「AIの民主化」の実感高まるセッションでした!

一から実装するには大変なAIパーツをGUIで設定するとAPIで利用できるし、もちろんbotから使うこともできる。

bot開発は中島進也さんの発表にもあった通り全フローのサポートが厚く、こんなエミュレータも!

コミュニティは盛んで資料も豊富!

4/8〜9にはハッカソンイベントも!

強いなぁと思いました。

進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説~(日本マイクロソフト テクニカルエバンジェリストさっくるさん

圧倒的情報量!

Edgeほぼ使ったことないですが、少なくともInternet Explorerに抱いていたイメージとはいい意味でかけ離れていました。

古いIEをエミュレートしたり、Windows Defender Application Guard(preview, 信頼されてないサイトを開くときに仮想環境でブラウザ立ち上げてチェックしてくれる)エンプラ系の設定も完全にスルーしてたので追っていきたいですね。

ディフェンスもガードもするんですか…!

あとエクステンションとUWPやWin32アプリを連携できるのは個人的にとてもとても気になるので攻めたいですね。

ライトニングトーク & ディスカッション

まとめ

自分も登壇しよう!と思いました。

今日聞いた話ももちろん、最近人と話しててぶつかり稽古が必要…

たまたま今日読んだこの記事(“ただの興味”がいつか武器になる–及川卓也氏が語る、一流エンジニアのアウトプット法)にも思うところがありました。

業務的にもWindowsデスクトップ(+ サーバサイドや関係するフロント)を作るのに加え、日々オープンに、ダイナミックに発展するMicrosoftの技術を取り入れてガンガン開発していこうぜ!というチームにしていくのでやっていくしかない状況です。

下のリンクの要件はちょっと古くなってますが、そんなチームを一緒に盛り上げていく仲間も募集してるので、ちょっとでも興味ある方は気軽に声かけてください!
日本を変えたいWindowsアプリエンジニア募集!!