AWS re:Invent 2018 が分刻みのスケジュールで忙しかったので時系列で日記を書いた

[Opt Technologies Advent Calendar 2018](https://qiita.com/advent-calendar/2018/opt-technologies) の 12日目です。

オプトからは5人参加した AWS re:Invent 2018。
海外出張として参加できるのは嬉しかったけど AWS のことを何も知らない僕としては色々と複雑な気持ちでしたが、ワークショップに参加してみたら AWS 最高！という気持ちになったので時系列の日記を書きました。

(参加前)

- AWS より GCP の方が好き。
- AWS なにもわからない。
- ラスベガス行ったら観光したい。

(参加後)

- ワークショップは最高の体験。全部で13のワークショップに参加した。
- 観光する時間なんてなかった。
- AWS は Web エンジニアにとって教養だった。
- **re:Invent は親に金を出してもらってでもいくべき**

---

ワークショップは 1回分が 2時間15分で、会場から会場への移動が発生する場合は 30〜60分ぐらいかかります。

## 11月25日 (日)

- 15:00
    - バンクーバーから乗り継いだ飛行機がラスベガスに着陸。
- 16:00
    - Mirage (ミラージュホテル)にチェックイン。
    - チェックインの手続きのとき、ベッドはキングにするかクイーンにするかとか、ボルケーノがよく見える部屋にするかそうじゃないのにするかとか色々聞かれて困った。とりあえず extra charge が発生しないことだけ確認して後は大体 yes とか ok とか言って無事手続きを終えた。
    - 部屋のセキュリティーボックスが故障しており、コンシェルジュにその旨を説明するが返答が何を言っているのか 90% わからない。とりあえず部屋で待ってたら修理の人が来て一瞬で直った。
    - クレジットカードしか使えないと書いてあるのに値段が書いてない自動販売機があった。
- 18:00
    - Venetian (ベネチアンホテル)で AWS re:Invent のレジストレーションを済ませ、パーカーとウォーターボトルをもらう。
    - 有名なスーパー(?)である Walgreens で買い物。ここだけは食料品をまともな値段で売っている。
        - 500ml の水が 6本 \\$4 とか。ホテルで買うと 1本 \\$5 くらい。
- 19:00 〜 20:00
    - Carvings (Mirage のバフェ) で 5人で夜ご飯。
    - 一人 \\$40 くらい。結構高い。
        - アルコールも上記金額に含まれる。
        - チップの払い方がわからず、結局払いそびれる。
- 22:00
    - 部屋から Mirage の [THE VOLCANO](https://www.mirage.com/en/amenities/volcano.html) が見えた。5分くらいのショーだが部屋の窓が噴火の度にガタガタ揺れていてすごい。

## 11月26日 (月)

- 08:00
    - 6時くらいに起きるつもりだったが寝坊した。
    - 遅めの起床だったので朝ご飯食べず。(会場の Meals (食事会場)もこの日は用意されない)
    - その後 Deuce (路線バス)で Mirage から MGM (MGMホテル)まで移動。(チケットは 3 Days Path で \\$20)
    - Deuce のバス停から MGM 中心部も遠いし、会場まではさらに遠い。バス停から Room までは 30分かかると思っていいぐらい。
        - この頃から Hotel to Hotel も遠いが Room to Room の距離感はやばいなと思い始める。
- 10:00
    - `AWS for Manufacturing: Digital Transformation throughout the Value Chain` (MFG202)
        - Session
        - AIRBUS, SKF, Georgia-Pacific の偉い人のセッション。
        - それぞれの会社の AWS を使った実例やアーキテクチャの紹介。
        - 英語があまり聞き取れなかったので内容はよくわからなかった。
        - この時点で Session はもういいかなという気持ちに。
            - 事前予約していたもので実際に行ったものはこれが最初で最後。
- 11:30
    - 事前予約していた `Building BMW Group's Customer Engagement Platform on AWS` の会場入りまでしたが、抜けて MGM ランチ。タコスバフェ。1000人くらいなら収容できそうなランチ会場でめちゃくちゃ広い。(Venetian はもっと広い)
    - 一人で食べていたらいつのまにか外人さんに囲まれてランチトークに巻き込まれる。英語力が足りず何を言っているのかほとんどわからなかったが、なんとなく会話になっているところがすごい。
    - これ以降の事前予約していた Session を全てキャンセルし、Walk-Up (当日席)に並ぶ Workshop (ワークショップ)の選定を始める。
        - 食事 & 会話 & 予定立て を並行処理することで体力を大幅に消費。
- 13:00
    - `Building Your First Graph Application with Amazon Neptune` (DAT310)
        - Agenda
            - Graph databases
                - Graph: Concept & Use Cases
                - Introduction to Amazon Neptune: Architecture & Feature Overview
                - Hands on: Workshop Infrastructure Setup
            - Graph application
                - Building a graph application - Hello, Movies!
                - How Gremlin Works?
                - Hands on: Simple Gremlin Queries
                - Hands on: Complex Gremlin Queries
            - Q & A
        - 教材
            - http://bit.ly/dat310
        - Graph DB である Amazon Neptune を使ってみるワークショップ。
        - Neptune の概要説明。
        - Gremlin を使ってクエリを書く。
            - 自然言語を意識した記述ではあるが少し複雑な検索をしようとするとカオスになる。
        - ユースケースは Social Networking, Recommendations, Knowledge Graphs, Fraud Detection, Life Sciences, Network & IT Operations 等がある。
        - 面白かったし何かしら活用の道がありそう。
        - CloudFormation で環境用意してさくっと消せるのですごい楽だなと思った。
        - この時点で残りの予定は全てワークショップに全振りすると決めた。基調講演とかどうせ YouTube で公開されるので。
        - AWSで少しでも課金が発生するようなワークショップに参加するとアカウントに \\$25 チャージできるチケットをもらえる。(最終的には \\$350 チャージされた https://i.gyazo.com/2c7ab374ab459296995189c1b9a84560.png )
    - Shuttle (シャトルバス)で Venetian へ移動。
- 16:00
    - `Real-Time Web Analytics with Amazon Kinesis Data Analytics` (ADT401)
        - Agenda
            - Introduction
            - Module 1 - Capturing real-time clickstream events from web servers
            - Module 2 - Performing real-time analytics with Amazon Kinesis Data
            - Module 3 - Visualizing metrics Amazon CloudWatch dashboards
            - Module 4 - Adding custom metrics and extending the solution
        - Extra credit - Ideas to extend the solution...
            - Create a AWS Glue Crawler on the Amazon Simple Storage Service (Amazon S3) data, use Amazon Athena to query it
            - Create a notification email when the event anomaly score exceeds a threshold. Generate anomalies and test real-time alerting.
        - 教材
            - http://bit.ly/2CLtFYY
        - 19時からの RoboMaker のワークショップに並ぼうとしたら流れで入ってしまったワークショップ。Walk-Up の列にすごい人が並んでいた。
        - データはリアルタイムに存在しており、明日する決断を今出来るならそうした方がいいよねという話。
            - *Data loses value quickly over time*
        - データストリーミングのユースケースは Smart home Smat city, Industrial Automation, Log analytics, Data lakes, AWS IoT Analytics 等。
        - Amazon Kinesis の概要説明。
            - Kinesis Data Streams, Kinesis Data Firehose, Kinesis Data Analytics, Kinesis Video Streams
        - Amazon Kinesis という存在を初めて知ったが色々と活用の道があるのではないかと思った。
        - こちらも CloudFormation で環境を作るタイプ。あと Cloud 9 は環境差異を吸収してワークショップで大活躍するという知見を得た。
        - Kinesis って Rx っぽいね？
- 19:00
    - `Use AWS RoboMaker to Develop a Robot Application to Track and Find Fido` (ROB202)
        - Agenda
            - Workshop specifics - covered/not-covered
            - Overview of AWS RoboMaker
            - Workshop quick-start / ROS context
            - Let's do this
        - 教材
            - http://bit.ly/dogfinder-workshop
                - zip ファイルを解凍し、 `attendee_docs` ディレクトリの `index.html` を開く。
        - 新しく発表された AWS RoboMaker を触ってみるワークショップ。
        - AWS RoboMaker capabilities ... Cloud Extensions for ROS, Development Environment, Simulation, Fleet Management
        - 教材の用意に時間が足りなかったのか、結構雑でぐだぐだな展開になってしまっていた。
            - Cloud 9 を使うのでネットワーク帯域が乏しいと何も出来ない。
        - RoboMaker は AWS DeepRacer を構成する一つの要素になっている。
    - 徒歩で Mirage へ移動。
- 22:00
    - LVB BURGERS (Mirage のハンバーガー屋)でオプトの S さんと夜ご飯。
        - さしで飯食うの初めてですね、みたいな会話になり、確かにと思った。
        - バーガー、ポテト、ビールを組み合わせると \\$30 台後半になり、バフェと対して変わらないことにちょっと驚き。

## 11月27日 (火)

- 07:00
    - Mirage で朝ご飯。
    - やはり外人さんとのブレックファストトークがおもむろに始まる。こちらは自己紹介をするだけで精一杯だ。朝から体力を消費する。
- 08:30
    - `Build a Multi-Region Serverless Application for Resilience & High Availability` (SRV326)
        - Your tasks
            - Build a single region service (50 min)
            - Stand up a second AWS Region (10 min)
            - Configure DNS health checks and failover (30 min)
            - Test failover and failback (20 min)
        - 教材
            - http://bit.ly/2Encqu8
        - Uber みたいなアプリを High Availability で作ってみようぜみたいなワークショップ。
        - マルチリージョンでフェイルオーバーする環境構築みたいなことまでやる。
        - 触れるサービスの数が多い
            - Route 53, API Gateway, Dynamo DB, Cloud 9, Lambda, Cognito, Facebook API, CloudFront, CloudFormation + SAM, S3, IAM, CloudWatch
        - やることが多くてめちゃくちゃ忙しかったがとても勉強になった。2時間のうちほとんどを脳みそ使用率 100% で過ごした。
            - 後でもう一回復習したいワークショップ 第1位。
        - 環境構築がメインなので CloudFormation は使わない。
- 12:15
    - `Build an ETL Pipeline to Analyze Customer Data` (AIM416)
        - Agenda
            - Introduction to Amazon Comprehend
            - Introduction to AWS Glue
            - Workshop use case and architecture
            - Getting started
        - 教材
            - 下記 Getting started の項を参照
        - AWS Glue の紹介。
            - AWS Glue Data Catalog
            - Crawler
            - Glue ETL
            - Glue utilizes the power of Apache Spark
        - Workshop use case
            - Ingest Amazon product reviews
            - Perform NLP using Amazon Comprehend & AWS Glue
            - Enrich product reviews dataset
            - Query and visualize using Amazon Athena & Amazon QuickSight
        - Getting started
            1. Configure AWS Glue crawler: s3://amazon-reviews-pds/parquet/
            2. Query crawled table in Amazon Athena
            3. Create AWS Glue ETL job from the console. Select "A new script to be authored by you."
            4. Once job is created, copy/paste PySpark script from https://github.com/rhasson/reinvent2018_aim416
            5. Follow instructions in the script to complete each section
        - CloudFormation なし。
        - Glue の使い方で嵌っていたと思っていたが実際には IAM の設定で躓いていた。あとテキストが読みにくかった。
            - IAM 不備を乗り越えた後は楽しかったので後でもう一度トライしたい。
        - 会場が Venetian だと人が多すぎて Wi-Fi が死んでいる。
- 15:15
    - `Data Lake Patterns for Voice, Vision, Advanced Analytics, & ML Using Serverless` (ARC320)
        - 教材
            - http://bit.ly/arc320materials
            - http://bit.ly/arc320producer
            - http://bit.ly/arc320source
            - https://s3-ap-northeast-1.amazonaws.com/reinvent-2018-ovrmrw/ARC320/ARC320-WorkshopGuide-FINAL.pdf
        - 講師名のトップに Paul Armstrong という名前があったら要注意であるという知見を得られたワークショップ。ジャンルに Architecture と書かれているものも要注意である。
            - Paul の特徴は 「俺の最強のアーキテクチャをお前達に披露するぜ、どうだすごいだろう」 という姿勢。あまりにもワークショップの範囲を逸脱したものを披露して会場は失笑多数。全員を置き去りにして独走する Paul はすごい人なのかもしれないが僕らは普通の人間なので。
        - Venetian の Wi-Fi がくそなのに全員に 200MB くらいのデータをダウンロードさせようとして 5分経過しても 5% くらいしか進まないというぐだぐださで、1時間もしないうちに参加者がちらほら抜け始める。
        - 誰もファイルダウンロードが完了しないと分かってからようやく CloudFormation を持ち出してきたが、あまりにも巨大なアーキテクチャなので COMPLETE するまで時間がかかるし、COMPLETE したころにはワークショップの時間が終わりかかりなのですぐに DELETE するはめに。
        - なんだかよくわからないアーキテクチャを写真に収めたということだけが成果である。
    - Shuttle で Aria (アリアホテル)へ移動。
- 19:00
    - `Build an Interactive Alexa Voice Experience for Multiple Screens` (ALX314)
        - Agenda
            - (New) Alexa Hosted Skills (Exclusive Beta)
            - (New) Alexa Presentation Language
            - Let's Build a Skill with APL
                - Understanding Alexa Presentation Language (APL)
                - Development Tools and Framework
                - How to implement APL and some if its Features
        - 教材
            - http://alexa.design/sauce-boss
                - Private Beta の環境を使うため、事前に招待コードの入力が必要。
        - APL の紹介。
        - 教材がとても作り込まれていて、すごく良く出来ていたワークショップ。トップレベルの完成度。
        - 招待コードを入力した者しか入れない Private Beta の環境を使うので、このワークショップに参加しないと遊ぶこともできない。
        - 内容はスクリーン付きの複数の Alexa デバイスを一つの開発環境で開発するというもの。 APL (Alexa Presentation Language)と呼ばれていた。
- 20:30
    - Japan Night
        - Alexa のワークショップが21時まであったが、お金を払ってしまっているし夜ご飯も食べられるということもあったので途中から参加した。
        - ミニハンバーガーはおいしかったが、 Alexa のワークショップを途中で抜けてまで行く価値のあるものではなかった。
        - 会場が EDM ガンガンでとてもうるさかった。15分だけ滞在して Mirage に帰った。
    - Shuttle で Mirage へ移動。

## 11月28日 (水)

- 07:00
    - Mirage で朝ご飯。オプトの A さん、K さんと会った。
    - SDX (急行路線バス)で Encore 前からダウンタウンの Foursquare (アーケード付き商店街)へ移動。
- 09:40
    - Foursquare
        - 10時前はほとんどの店が開いていない。
        - ABC STORE でお土産を買うなど。(T シャツ、カジノチップのマグネット)
- 10:10
    - ダウンタウンの色々な店が営業を始める。歩いているだけでどんどん声をかけられるようになり、フレンドリーなのか治安が悪いのかよくわからない。
    - 結局ダウンタウンには30分くらいしか滞在できなかった。
    - SDX でダウンタウンから Fashion Show (巨大ショッピングモール)へ移動。
- 10:40
    - Fashion Show
        - 次のワークショップまで時間がなかったので 10分だけ中の様子を見てまわった。
        - Microsoft Store があった。 $349 の Surface Go に手を出してしまいそうになったが故障したらめんどくさそうなので諦めた。
    - 徒歩で Mirage へ移動。
- 11:30
    - `Catching Fraud in the Cloud` (SEC333)
        - Agenda
            - Intro to AWS fraud prevention
            - Supervised ML overview
            - Gather data to train ML model
            - Explore/Clean/Transform data
            - Train and Deploy ML model
            - Integrate ML model into Serverless app
        - 教材
            - http://bit.ly/2QT50WE
                - 上記リンクでダウンロードする zip ファイルを解凍して `SEC333_DECK.pdf` を読んで進める。この PDF はワークショップの全スライドを含む。
- 14:30
    - `Build, Deploy, and Serve Machine-Learning Models on Streaming Data Using Amazon SageMaker, Apache Spark on Amazon EMR, and Amazon Kinesis` (ANT318)
        - 教材
            - https://amzn.to/2Qq1xBy
                - 上記リンクでダウンロードする zip ファイルを解凍していろいろやる内容だった。
            - 実際のワークショップ環境は Qwiklabs を使ったが、イベント中だけ使えるようになっていたので現在は利用不可。
        - 扱うテーマが多いワークショップは要注意の原則に漏れず、約束された通りのぐだぐだな展開。
        - CloudFormation の COMPLETE までに 20分かかるものの、1回目で成功したのは会場中 7人だけ。ちなみに僕は 3回目で成功した。
    - Shuttle で Aria へ移動。
- 18:15
    - `Manage Objects & Optimize for Cost at Scale with Amazon S3 & Amazon Glacier` (STG403)
        - Agenda
            - Amazon Simple Storage Service (Amazon S3) storage classes
                - How does Amazon S3 Glacier compare?
            - Enhancements to using S3 Glacier
                - Creating objects
                - Restoring objects
                - Amazon S3 Object Lock
            - Workshop
                - Setup
                - Warm-up tasks
                - Two challenges
        - 教材
            - ttps://stg403.s3.amazonaws.com/guide.html (↓の注意文を読まないと死にます)
                - 上記リンクの中には Glacier に保存したデータを課金してすぐにダウンロードする内容が含まれており、**これを実際にやってしまうと \\$100 (約1万円) 課金されるので絶対にやってはいけない！**
    - Shuttle で Mirage へ移動。
- 22:00
    - [OUTBACK STEAKHOUSE](https://www.outback.com/locations/nv/las-vegas-strip-casino-royale)
        - 5人で有名なステーキ屋に行って夜ご飯。Mirage から歩いて行ける。
        - \\$18 くらいで食べられる 4x4 WAGYU STEAK BURGER は巨大なハンバーグが2段になっており、迫力もすごいが食べづらさもすごい。

## 11月29日 (木)

- 07:00
    - Mirage で朝ご飯。オプトの M さんと会った。
    - 徒歩で Venetian へ移動。
- 08:30
    - ハンズオン
        - ハンズオン is 本来なら有料の [Amazon Qwiklabs](https://amazon.qwiklabs.com/home?locale=en) の講座を一つ無料で受けられるというもの。
        - ぶっちゃけお金払えば日本にいても受けられるので積極的に参加する気にはならないが、入場時にもらう招待コードで講座が一つ無料になるので入場せずに招待コードだけをもらえれば旨味が大きい。
- 10:00
    - EXPO に行った。最終日にようやく行けた。
    - 色々な会社のステッカーとかソックスとか T シャツとかもらうなど。
    - 何かをもらうたびに誰かしらとトークしているので体力の消耗が激しい。DATADOG の T シャツをもらうには顧客であることを説明しなければならず、そのトークは難航を極めたが無事 T シャツげっと。
    - 30分だけ滞在して Shuttle で MGM へ移動。
- 11:30
    - `AWS DeepRacer Workshops –a new, fun way to learn reinforcement learning` (AIM206)
        - Agenda
            - Introducing AWS DeepRacer
            - Reinforcement Learning - an introduction
            - Lab 1 - Pre-Session: Building a Reward Function for AWS DeepRacer
            - AWS DeepRacer Service and Advanced RL
            - Lab 2 - Qualifiers: Create an AWS DeepRacer RL Model
            - AWS DeepRacer, under the hood
            - AWS DeepRacer League and MGM Speedway
        - 教材
            - https://github.com/aws-samples/aws-deepracer-workshops
        - 俺の最強のアルゴリズムで強化学習のモデルを作って誰が一番早く走れるかみたいなやつ。
        - 会場は 早く DeepRacer くれよ〜 みたいなテンション。
        - 終わり際になって、メンターが「A lucky person get a car! ... haha, It's joke. Everyone get a car!」と言ったところで会場大歓声。
    - DeepRacer を受け取るために Shuttle で Venetian へ移動。
- 14:00
    - DeepRacer を受け取るのは最初にパーカーを受け取った SWAG だということを聞き、行ってみたら案の定の大行列。
        - 対象者全員に国際便で送るときのリチウムイオン電池の注意点を説明しているので時間がかかる。
    - DeepRacer を FeDEX で日本に送らなければならないが、FeDEX で渡される書類の書き方が全然わからない。会場のくそみたいなネットワーク環境の中、PTS スタッフがいる部屋を突き止め、助けを求めた。その後めでたく荷物は受理される。FeDEX の受付のおじさんが黒服みたいで怖かった。
    - 後で調べたら DeepRacer は買うと \\$249 するらしい。
    - 徒歩で Mirage へ移動。
- 15:30
    - `Programming Dynamic AWS CloudFormation Templates` (DEV418)
        - 教材
            - http://bit.ly/2DNayik
                - 上記ページから zip ファイルをダウンロードする。それを解凍すると PDF がある。
        - 15:15 スタートだったが FeDEX に時間を取られて 15分遅れくらいで会場入りした。
        - re:Invent 中にその威力を思い知らされた CloudFormation のマクロを使うワークショップ。
        - 途中参加だったこともあり、何のためにそれをやるのかみたいなモチベの部分がわからないまま作業して、結局何がうれしいんだかよくわからなかった。
    - 一旦部屋に戻ってから徒歩で Fashion Show へ移動。
- 18:00
    - Fashion Show (2回目)
        - 昨日は 10分しか滞在できなかったので再チャレンジ。
        - オプトの K さん、M さんと合流。
        - K さんと食べたアイスは値段が書いてなかった。たしか \\$7〜8 くらいだった。ラスベガスは水のペットボトルが \\$5 するような場所なので...
        - M さんが 極度乾燥 でジャケットを買うなど。
    - 徒歩で Mirage へ移動。
- 20:00
    - re:Play
        - ちょっと離れた会場まで専用 Shuttle で移動。
        - 会場は [CIRCUS CIRCUS](https://www.circuscircus.com/en.html) の近く。
        - まさかの屋外だった。薄着で行ったため寒かった。
        - メイン会場が CLUB, GAMES, LIVE HOUSE の3つあり、それぞれが数千人収容できそうな感じ。どんだけ金かけてるの。
        - 人多すぎてつらみ。でも迫力がすごくてこんなの日本じゃできないなって思った。
        - 外人は焼き鳥が好きらしいという知見を得た。(ちなみに YAKITORI という英単語は存在する)
        - re:Play の T シャツをもらうなど。
    - 専用 Shuttle で Mirage へ移動。
- 23:00
    - 荷物をまとめたり、風呂入ったり、帰り支度。
- (そのまま寝ずに金曜日へ)

## 11月30日 (金)

- 01:00
    - Mirage のカジノ
        - ラスベガスの目的の一つであるカジノにようやく挑戦。
            - スロットのやり方は完全に理解した。
            - \\$100 だけ使うと最初に決めて、途中 \\$120 くらいまで増えたがその程度で引くわけにもいかないのでカジノをやり続けて最終的に \\$40 負けた。良い戦いだった。
- 04:40
    - チェックアウトを済ませてホテルのロビー横に集合。
- 07:45
    - 帰りのバンクーバー行きの飛行機が離陸。
    - 俺たちの5日間に渡る戦いは幕を閉じた。

---

以上です。ありがとうございました。