GDG DevFest Tokyo 2017 参加してきました！セッションメモ

# GDG DevFest Tokyo 2017

* October 9, 2017
* hashtag: #DevFest17
* [公式サイト](https://tokyo.gdgjapan.org/)

オープニングとクロージング以外のセッションは6つの部屋に分かれる形式だったので、その中で自分が参加したセッションだけのメモです。
どれもすごく面白い内容でした。運営の方々お疲れ様でした :bow: 

![写真 2017-10-09 9 49 30.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/37ae6447-e84e-7c0d-244c-532cdedc0756.jpeg)

## オープニング

### GDG DevFest とは
Google Developer Group コミュニティによって世界各地で開催されるデベロッパー向けイベント

### 各種コミュニティ紹介

* 日本Androidの会
* Shibuya.apk
  * 次回はスマートニュースで 10/27 19:30-
* DroidKaigi
  * 次回は 2018/02/08-09 @新宿 
* droid girls
  * Android 開発に興味がある女性のためのコミュニティ
* GTUG Girls
  * 女性テクノロジーコミュニティ
* Geek Women Japan
* GCPUG
  * GCP User Group
  * gcpug.jp
  * Google Group and Slack あり
* TFUG
  * TensorFlow User Group
  * ミートアップ
  * 論文読む会
  * ハードウェア会
  * モバイル会
* html5j
  * Web コミュニティ
  * html5j.org
* golang.tokyo
  * Go コミュニティ
  * 月１程度開催
  * こちらもやってる > gocon.connpass.com
* Woman Who Go Tokyo
  * 女性のための Go コミュニティ
  * 月１程度開催
* XR
  * ARCore Working Group
  * GoogleAR 技術関連
* XR 女子部
  * MR/AR/VR などの女性向け勉強会

## クラウドってなんだろ？クラウドを活かすアプリケーションの設計とは？

* 発表者
  * メルカリ/ソウゾウ
  * @sinmetal さん
* 資料: https://goo.gl/X54o2S
* クラウドでもサーバーは壊れる
  * 壊れる前提で以下を考慮する
    * リトライ
    * リクリエイト

## GCP ではじめるかんたん機械学習

* 資料：https://www.slideshare.net/HayatoYoshikawa/a-practical-guide-to-machine-learning-on-gcp-80592517
* 発表者
  * 吉川隼人さん @hayatoy
  * 参加コミュニティ
    * TGUG, GCPUG, GDG

* 機械学習はただの関数
* input を入れると output がでてくるもの
* GCP で機械学習
  * GCP の ML 系の API
    * Cloud Vision API
      * 静止画のラベル検出
      * 不適切な画像の検出など
      * 他の画像認識 API と比べた Cloud Vision API のすごさ
        * 精度とマニアックさ
        * 鳥の細かい種類など
      * Python で 4 行でできる
    * Cloud Natural Language API
      * 自然言語処理
        * 感情分析
          * レビューの感情分析とかに使えそう
          * Python で 5 行でできる
          * nl-bubble デモ面白い
            * github.com/hayatoy/nl-bubble
  * Datalab x BigQuery 
    * Datalab
      * Jupyter Notebook のクラウド版 
  * GCPUG をリアルに
    * bit.ly/realgcpug
    * App Engine で動作
    * pix2pix
  * ML Engine の詳しい使い方
    * qiita.com/hayatoy


![写真 2017-10-09 11 44 32.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/5f8200fa-bafb-88ca-de59-75573a4a8fc8.jpeg)
![写真 2017-10-09 11 48 59.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/ba2dab71-cb7c-5562-6958-03326b49709e.jpeg)
![写真 2017-10-09 11 50 44.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/ccba81f0-6622-1b16-2735-896ea0207b36.jpeg)
![写真 2017-10-09 11 51 32.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/beccc81d-33f6-1417-1a23-0c035e9de3d8.jpeg)


## ランチタイム LT
* Vector Drawable
  * svg でアイコンを作る
    * iOS が pdf で画像複数解像度対応するやつと同じようなやつ
    * 複雑すぎる画像はワーニング吐かれる
* Instant App
  * PWA はほとんどの OS でサポートされている

## GCP パネルディスカッション
* 資料: https://goo.gl/Qni2vt
* 発表者
  * @sinmetal さん
    * メルカリ/ソウゾウ
    * 先月までトップゲート
  * @soundTricker さん
    * GDE(GAS)
    * 株式会社カブク

* Cloud Functions
  * AWS lambda と同じ役割
  * Node.js だけ

## React Native アプリをリリースし続けるために、最初に行う8つの取り組み

* 資料：https://www.slideshare.net/Nkzn/react-native8-80596018
* 発表者
  * 中川幸哉さん
  * ウォーターセル株式会社/アグリゲート
  * @Nkzn
* React Native は実装部分は共通化できてよいが、リリース時などは Native を理解してないときつい
* Native の人が作業する内容のサマリ

## FirebaseAnalytics + BigQuery + DataStudio

* 発表者
  * なかむらさとるさん
  * LDI
  * #bq_sushi
* Firebase Analytics って？
  * アプリ用行動解析
  * イベント単位
  * アプリがバックエンドに行くタイミングでデータを一括送信する仕様
  * Google タグマネージャーとの連携も可能
  * ユーザー属性
    * Google のアルゴリズムでやってくれてる
    * 年齢、性別、興味
* BigQuery って？
  * サーバーレスモデル
  * Dremel というクエリエンジン
  * 課金モデル
    * 2パターン
      * select 句で指定したカラムのデータ容量に対して課金
      * 月額固定料金
* BigQuery Export
  * Blaze の契約が必要
  * RealTimeExport は Export 単位でユーザーの行動が分断されるので、ユーザーの行動をちゃんと分析したい場合には適してない
* DataStudio
  * Google スライドにリアルタイムで BigQuery 連携してグラフを表示できる
  * マーケの人がスライド作る時とかに良さそう
  * BI の簡易版

![写真 2017-10-09 15 33 06.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/92551424-d7c9-e737-d208-62d7cf12a9b5.jpeg)


## いまさら聞けない PWA 講座

* 発表者
  * Eiji Kitamura さん
  * Google
  * twitter.com/agektmr
* Top3 以外のアプリはそこまで使われていない
* 平均的なユーザーが１ヶ月にインストールするアプリの数は 1 以下
* Progressive Web Apps (=PWA)
  * URL のバーがない
  * プッシュ通知を実装できる
    * Service Worker が裏側で動く
    * Firebase Cloud Messaging
  * より深く連携
    * Media Session API
  * Service Worker
    * ページが開いていないくてもバックグラウンドで動作する JavaScript で書かれたワーカープロセス
    * Workbox というライブラリを使うと楽
  * Progressiv Web App Checklist に「なにを満たせば PWA と呼べるか」が書かれている
  * lighthouse でスコア表示
  * PWA !== SPA
  * iOS では Service Worker が動かない
    * Android 用に PWA 実装したら iOS でも副作用として良い結果がもたらされた例がある

![写真 2017-10-09 15 52 53.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/03d3a1b4-2b68-1769-475d-6d80aa65a494.jpeg)
![写真 2017-10-09 15 53 23.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/4c84753b-1008-3bbe-0700-7688acadf24b.jpeg)
![写真 2017-10-09 15 54 23.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/22de2285-0f6e-ea8a-c6bb-54fc9ed98d34.jpeg)
![写真 2017-10-09 16 06 42.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/1a1b822e-2589-dac4-48b6-82a28fcfb4a3.jpeg)
![写真 2017-10-09 16 14 03.jpg](https://qiita-image-store.s3.amazonaws.com/0/19698/c61c04fc-6d4a-d90b-442f-1e560ef26d6c.jpeg)