プログラミング初心者がTwilioQuest 3をプレーしてみた

はじめまして!この8月からSendGridチームに加わりました、新人の青木です。
8月28日(金)と29日(土)にオンラインにて開催された、「TwilioQuest 24時間チャレンジ」に参加しましたのでレポートします。

TwilioQuest 24時間チャレンジとは

「TwilioQuest 24時間チャレンジ」は、Twilio社が提供する無料ゲームサービスのTwilioQuest 3をプレーし制限時間内に経験値をどれだけ稼げるのかを競うイベントです。
私自身、Twilioはこれまでに触れたこともなく何の事前知識も持ち合わせていませんでしたが、SendGridと繋がりが深いTwilioについてこの機会に学びたいと思いイベントに参加しました。

TwilioQuest 3

TwilioQuestはTwilio製品の利用方法やプログラミング言語 (JavaScript、PHP、Python)、GitやGitHubの使い方についてゲームをプレーしながら学べるチュートリアルです。今回のイベントでは、このチュートリアルの3部作目にあたるTwilioQuest 3をプレーしました。(ゲームのダウンロードや始め方については、こちらのブログを参考にしてみてください。)

TwilioQuest

TwilioQuest 3には様々な開発スキルにちなんだ15個のステージが用意されており、各ステージをクリアするごとにプログラミングやTwilioのWeb APIの使い方などの基礎を習得できるつくりになっています。

15個のステージ

できれば全てプレーしたいところですが、イベントでは時間が限られていたので、今回は「Basic Training」と「JavaScript Test Lab」の2つのステージをプレーしました。

Basic Training

「Basic Training」ではキャラクターの操作方法やゲームの進め方をつかめるので、まずはこのステージからプレーすると良いでしょう。またここでは、実際にTwilioのアカウントやAPIキーを作成し、Twilioが提供するAPIの機能を体験できます。

自分が使いたいプログラミング言語を選べるので、今回はJavaを使ってTwilioで購入した電話番号から自分のスマホにSMSと音声メッセージを送ってみました。(ソースコードはこちら。)

Basic Training

Javaアプリケーションを起動後、電話番号を入力しSMSや音声メッセージを送ります。

受け取ったSMS

実際にスマホでSMSを受け取れました。SMSの内容はJavaコード内で変更できます。

プログラムから送ったSMSと音声メッセージを実際に受け取ってみて、Twilioで簡単に電話番号が取得できることを知り、電話番号は電話機単体を識別するためのものだというこれまでの考え方が覆されました。Twilioについて何も知らずにプレーをしていましたが、この体験を通してTwilioへの興味がさらに強くなったと思います。

JavaScript Test Lab

「JavaScript Test Lab」では、JavaScriptについて基本的なコードの書き方から学べます。まずはNode.jsをインストールしてJavaScriptの実行環境を構築し、各ミッションで指示された関数を使って実行ファイルを作成していきます。指令通りにJavaScriptが動けばミッションクリアとなります。

このステージはミッションの数がかなり多く、実は私はまだ半分もクリアできていません。変数の定義など初歩的な内容から手数多く学んでいけるので、JavaScript初心者としてはとても有難いチュートリアルでした。

Twilio SendGrid: Ocean of Email

TwilioQuest 3にはSendGridを扱った「Twilio SendGrid: Ocean of Email」というステージも用意されていますので、イベント終了後にプレーしてみました。

Twilio SendGrid: Ocean of Email

ステージ全体が海に囲まれています。SendGridカラーの青にちなんでいるのでしょうか。

「Twilio SendGrid: Ocean of Email」では、SendGridのAPIキーの作成やAPIを使ったメール送信、Event Webhookによるイベントデータの受信などが扱われていました。
ゲーム内に開発環境としてコードエディタが内蔵されており、作成したコードをゲーム内で実行することでSendGridのAPIを実際に呼び出せます。

EventWebhook

Event Webhookを受信するコードが書かれています。実行するとイベントデータが画面に出力されます。

一通りプレーしてみて、APIを使ったSendGridならではのメールの送受信を体感できることがわかったので、私たちSendGridチームの新人向けチュートリアルにこのステージを活用してみるのも面白いと思いました。

おわりに

TwilioQuest 3はチュートリアルとしての完成度が高いだけでなく、ゲームとしての楽しさも両立させているところが凄いと思いました。Twilioだけでなく、これからプログラミングを学びたいという人にもぜひお勧めしたいゲームです。

今回、TwilioについてはSMSと音声メッセージの送信のみを紹介しましたが、Twilioはこの他にもビデオやチャットなど多様なコミュニケーションチャネルに対応しています。自動通知によるIoTデバイスとの連携やチャットボットを用いた顧客対応の効率化など、幅広く活用できるそうです。

引き続きTwilioQuest 3をプレーをして、Twilioの様々な機能についてさらに理解を深めていきたいと思います。

また、今回のTwilioQuest 24時間チャレンジは、ビデオチャットを通じて参加者同士の交流が行われていたところが印象的でした。今後もこのような社外の人と交わるイベントにはどんどん参加していきたいです!

メールを成功の原動力に

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