Twilio新春チャレンジに参加してきました!

SendGridチーム新人の佐々木です。2月12日(金)と2月13日(土)に開催されたオンラインイベントの「Twilio新春チャレンジ」に参加しましたので、その様子についてご紹介します!

Twilio 新春チャレンジとは

「Twilio新春チャレンジ」とは、Twilio社が提供する「TwilioQuest 3」をプレイし、参加者同士でXPと呼ばれるポイントを競い合うイベントです。Twilioの各種サービスや、JavaScriptやPythonなどのプログラミング言語について、ゲーム感覚で楽しみながら学ぶことができます。

なんと上位入賞者には豪華賞品まで用意されており、チャレンジの1週間前には「TwilioQuest 攻略情報」という、XPの稼ぎ方について前回大会優勝者から講義を聴けるイベントまで開かれました。興味に応じて好きなサービス・言語だけ学ぶのも良し、入賞を目指して寝る間を惜しんでプレイするのも良し、非常に自由度の高いイベントです。

ゲームの導入方法や基本的な操作方法などは、Twilioブログ記事の「Game + Tutorial = TwilioQuest3のはじめかた」にて、分かりやすく解説されています。また、このイベントは定期的に開催されており、前回2020年10月にもSendGridチームで参加体験記をレポートしていますので、ぜひご覧ください。

福袋
事前登録した参加者全員、プレイのお供用にお菓子入り福袋がもらえました!
愛機の13.3インチMacBook Proを覆いつくしてしまうほどの大きさです。

プレイ内容の紹介

・Basic Training(チュートリアル)

多くのプレイヤーがまずこのステージから攻略を開始するのではないでしょうか。

このステージはゲームの進め方や操作方法を把握することが主目的です。クエスト画面に表示される「Objective」と「Help」の説明さえきちんと読み解けば、初心者でも攻略可能なクエストが多く用意されています。Basic Trainingの進め方については、Twilioブログ記事にも詳しい案内があります。

Basic Training

ゲーム内のテキストは英語ですが、難解な指示はありません。
クエスト画面内のタブ「Objective」にはクエストの目的や進め方が、
「Help」にはリファレンスや具体的な操作手順などが記載されており、非常に親切なつくりです。

・JavaScript Test Lab(JavaScriptステージ)

Basic Trainingを終えて、次に私が手を付けたのは、初心者にもおすすめと名高いJavaScriptのステージです。文章の出力や四則演算にはじまり、定番のFizzBuzz問題まで、基本的な内容が幅広く学べるようになっています。

JavaScript Test Lab

メカニックな宇宙船と背景の宇宙空間が織りなす、何ともゲーマー魂をくすぐるステージです。

ただし取っつきやすいとはいえ、クエストの数が非常に多いので、100%コンプリートを目指そうと思うと根気が必要になります。 私は6割程度クリアしたところで離脱しましたが、未経験の言語でも、熱中して2〜3時間プレイしているうちにそれなりに動かせるようになっているのですから、不思議な気分です。イベント序盤にして、TwilioQuest 3というゲームの狙いに気付かされました。

・Mysteries of the Pythonic Temple(Pythonステージ)

続いては、Pythonのステージです。JavaScriptと同様にインタプリタ型言語で、初心者でも簡単にコーディングができます。難しい環境設定等もなく、比較的スムーズにクエストを進められますので、個人的にはこのPythonステージもおすすめです。

1つのクエストで得られるポイントは100〜200XP程度のものがほとんどですが、最後に用意されているパズルを解くと、なんと1,000XPがゲットできます!私はこの1,000XP欲しさに、深夜遅くまで攻略を続けてしまいました。

Mysteries of the Pythonic Temple

JavaScriptステージとPythonステージをプレイした後は、
作業フォルダが実行ファイルだらけになります。

・Ocean of Email(SendGridステージ)

最後は、普段の業務で使い慣れているSendGridのステージに挑戦してみました。

注意点として、このステージを進めるにはSendGridのアカウントが必要になります。私はアカウントを所持していた分、他の参加者の方に比べて有利だったかもしれません。

SendGridチームの一員として、クエスト攻略のヒントをご紹介します!

・Authentication is Key

SendGridダッシュボードでAPIキーを作成し、提出するだけでクリアとなります。
トランザクションメールを送信するための第一歩となる手順ですので、以下のドキュメントをしっかり理解しておきましょう。

チュートリアル資料:APIキーの発行方法
APIキーの管理について

・Special Delivery

作ったAPIキーを利用して、指定された宛先にメールを送信するクエストです。
メール送信のリクエスト方法は、こちらを参考にしてください。

cURLを使う方法
言語別の公式ライブラリを使う方法

ちなみに、前のクエストでAPIキーが自動でゲーム内環境変数に設定されており、リクエストコードもすでにエディター上に書いてあります。したがって、このクエスト自体は実質送信先を指定するだけでクリアできてしまいます!

・Webhooked on Email

SendGridが提供する機能である「Event Webhook」を実装するクエストです。

ダッシュボード上では、送信したメールで発生したイベントを最大7日前まで確認することができます。イベントを確認することで、送信したメールが届いているかどうか、開封されたかどうか、などを知ることができます。

Activity画面でメールが届いているかどうかを確認する方法

Event Webhookを使うことで、発生したイベントデータをPOSTし、外部データベース等に格納することができます。これにより、Activity画面の表示制限を超えて、全てのイベントログを保持することができるようになります。

Event Webhookでイベントを受信する方法

手元のマシンでEvent Webhookを実装する場合には、受信用アプリケーションを用意する必要があります。是非こちらのブログ記事も参考にしてみてください。

Webhooked on Email

毎日業務で取り扱っていますので、
SendGridステージは難なく(?)100%クリアを達成できました!

プレイを終えて

今回のイベントでは、1日目と2日目を合わせて約10時間ほどプレイしました。
私の最終結果は10,000XP、順位は11位となりました!
賞品は上位10位までに用意されていましたので、非常に惜しい結果でした。

PythonやJavaScriptを中心にポイントを稼ぎ、序盤は調子がよかったのですが、数多くあるTwilioサービス関連のクエストを触りきれなかったことで、点数が伸び悩んでしまったようです。

途中経過

開始から5時間後における途中経過。
ハイスコア3位(筆者:”Kouta”)に一瞬ランクインしたのを見計らい、撮影しました!

Twilio社では、頻繁にハンズオンやウェビナーが開催されており、初心者から開発者まで幅広く興味に応じて参加が可能です。(Twilio Japanのイベント情報はこちら
私もこれらのハンズオンに参加してトレーニングを積むことで、次回こそ上位入賞を狙いたいと思います。

皆さんも是非「TwilioQuest 3」をプレイして、SendGridやTwilioの各種サービスを楽しく体験してみてくださいね!

アーカイブ

メールを成功の原動力に

開発者にもマーケターにも信頼されているメールサービスを利用して、
時間の節約、スケーラビリティ、メール配信に関する専門知識を手に入れましょう。