Duolingo風にスマホでコーディングを学べるアプリPy――YCの2017年夏季プログラム参加企業が開発

次の記事

VR開発機材や設備を無償でレンタル、リクルートテクノロジーズの新施設が広尾にオープン

Pyは細かく区切られたゲーム性のあるコンテンツを使い、モバイル端末上でプログラミングを学べるような環境を提供しようとしている。この生まれて間もないスタートアップを設立したのは、コンピューターサイエンスを学ぶ2人の友人同士だ。彼らは過去に何度も知り合いからプログラミングの習得についてアドバイスを求められてきたという。

「どうやってプログラミングを学べばいいのか、どんな教材を使えばいいのかといったことを色んな人から聞かれました」と共同ファウンダーのDerek Loは説明する。「そこでさまざまな教材について教えるのですが、最後までやり通せる人はほぼいませんでした。難しすぎるか、つまらないと感じる人が多かったようです。時間がないという人もいましたね。このような経験からPyのアイディアを思いついたんです。携帯電話向けにどこでも楽しくコーディングを学べるようなサービスを自分たちで作ればいいんじゃないかと」

最近App Storeで取り上げられてからアプリのダウンロード数は一気に伸び、現在では10万回以上を記録している。しかも、特別なマーケティング戦略なしでだ(Product Huntには昨年9月から登録されているので、初期のユーザーはシリコンバレーもしくはカリフォルニア州の人が多い)。もともとはAndroid版のアプリも配信されておらず、今週に入ってからようやくリリースされた。

また、Pyの共同ファウンダーであるふたりは、Loの卒業を待ってからY Combinatorの2017年夏季プログラムに参加した。

彼らは2016年5月からiOSアプリの開発にとりかかり、その後すぐにベータ版をリリースした。当時はかなり幅広い分野をカバーしようとしており、TechCrunchに対するピッチの中では、Pythonをはじめとするプログラミング言語だけでなく、人文科学や自然科学、さらには英語文法といった内容も含めていくと話していた。

当初、私は彼らが大風呂敷を広げてしまっているように感じていたが、結局ふたりはプログラミングというもともとの狙いにプロダクトの的を絞ることにした。さらにより実用性を高めるため、ウェブサイトやアプリといった具体的な何かをつくるためのスキルを身につけられるような仕組みを構築することにしたのだ。Pyは個々の目的に応じてカスタマイズされた、モジュール式の実践的な教材を提供しようとしているとLoは語る。そのため、面接時に行われるプログラミングテストのコツに関する教材も準備されている。

「私たちはプログラミング用の教材を開発するのに注力してきましたが、単にプログラミングと言っても、その内容はiOSアプリやウェブサイト、データサイエンスなど多岐にわたります」とLoは話す。「そのため、PyにはSwiftやPythonをはじめとするさまざまな言語の基礎的なコースが準備されているほか、間もなくプロジェクトベースのコースも公開される予定です。Swiftの知識を使っていかにiPhoneアプリをつくるかといった内容のものです。このように、各言語の知識を活かしてユーザーが実際に何かを作れるようなコースを提供できることをとても楽しみにしています」

現在Pyでは10種類の無料”コース”が提供されており、ユーザーはJavascriptやSwift、Python、HTML・CSSなどについて学ぶことができる。教材の大部分は共同ファウンダーのふたりが作っているが、彼らいわく「クオリティを高く保つため」に外部の大学教授やエンジニア、研究者とも協力している。

プログラミング学習サービスは最近かなり増えてきており、各社クリエイティブな方法で幅広い年代の人をひきつけようとしている。具体的にはボードゲーム型のものや、プログラムを使って動かせるロボット、ゲーム要素が盛り込まれた学習プラットフォーム(逆にプログラミング要素が含まれたゲーム)などがある。Pyは競争の激しいこの分野でどのように戦っていこうとしているのか?

彼らは(コンピューターとは関係ない)言語学習アプリを参考に、タッチスクリーンを使ったインタラクティブでユーザーの興味をかき立てるような仕組みを考案した。ちなみに、言語学習アプリの分野でもDuolingoやBabbel、Verblingなど最近さまざまなサービスが誕生している。

「他社サービスとの違いについては、とても具体的なものが何点かあります」とLoはTechCrunchに対して語った。「そのうちのひとつが出題方法で、私たちはこれまでに4、もしくは5種類の出題方法を開発しました。まず選択式の問題があって、ほかにも『このプログラムからはどんなアウトプットが得られるか?』といった質問に答える記述式の問題もあります」

「さらに、解体したプログラムを一行ずつ組み立てていくタイプの問題では、ユーザーがプログラムの流れを理解しているのかを確かめることができます。中でも気に入っているのが、私たちが『ワードバンクス』と呼んでいる穴埋め問題で、これは準備された単語を使って穴が空いたプログラムを完成させていくというものです。繰り返しになりますが、Pyはインタラクティブで楽しく、ゲーム要素を兼ね備えた、Duolingoのような学習アプリなんです」

さらに彼らは、現在「コードレスポンス」と呼ばれるタイプの問題も開発中だという。これは、携帯電話では面倒な入力作業を簡素化するために開発されたキーボード(Pyオリジナル)を使って、実際にコーディングを行うものだ。

「キーの中にはプログラミングに使わないものもあるため、本当に必要な単語や文字、記号だけで構成されたキーボードを作ったんです」とLoは話す。「このカスタムキーボードを使えば、かなり楽にコードを書くことができるので、通勤中でも携帯電話上でコードを書いて、実行することができるんです」

学習内容の定着率を高める仕組みとして、他にもPyには言語学習アプリ(そしてモバイルゲーム)を参考に、ダイナミックレビューやゲーム的な要素が組み込まれている。例えば、各コースを修了したユーザーには星が与えられるようになっているほか、復習ボタンを押すとユーザーが上手く答えられなかった問題が優先的に表示されるようになる。

「アングリーバードでスコアに応じて1〜3つの星が獲得できるように、Pyでも問題の正答率に応じて星が与えられるようになっています。正答率が100%だと星3個で、50%だと1.5個といった具合です。こうすることで、単に学習するだけでなく細かなところまでしっかり覚えようというインセンティブが生まれます」とLoは続ける。

「他にも、レッスンやクイズを終えるごとに経験値が貯まるようになっていたり、何日連続で学習を行ったかが表示されるようになっていたりと、ユーザーの継続的な学習をサポートする機能を実装しています。後者の機能はDuolingoやSnapchatにも導入されていますね。プッシュ通知機能も備えていて、良いタイミングでユーザーに通知を送ることでリテンション率が上がることが分かっています」

各要素が綺麗に並べられたエレガントなインターフェースからは、Pyのチームがデザインにも力を入れている様子が伝わってくる。もともとグラフィックデザインに興味があり、大学でもいくつかの関連コースをとっていたLo自身がアプリのデザインも手がけているとのこと。

既にPyにはさまざまな種類の無料コンテンツが準備されているが、共同ファウンダーのふたりはマネタイズ戦略についても既に考え始めているようだ。Pyのプレミアムサービス(アプリのアップデートに合わせてリリース予定)では、無料版にはないコンテンツが準備されるほか、ユーザーは「ライブ指導機能」を利用して経験豊富なソフトウェアエンジニアとリアルタイムで相談ができるようになる予定だ。

これまでのところ、基本的にPyは初心者や新人プログラマー(=そこまで知識を持ち合わせてない人)をターゲットにしていたが、Loは同様の仕組みを活用して、今後もっと経験を持った人たちに対してもサービスを提供しようとしている。イエール大学もその可能性を感じてPyに興味を持ったようだ。

「(イェール大学は)テクノロジーが日々変化する中、私たちのコースのモジュール性に興味を持ってくれました」とLoは語る。「さらに初期の投資家の1人は、将来的には高度な内容のコースもモジュール式に提供できるのではと期待してくれていました。きっとそれは上手くいくでしょうし、経験豊富なディベロッパーはそういう学習方法を好むと私は考えています」

Pyは昨年の10月にDorm Room Fundから2万ドルのプレシード資金を調達し、Yale Venture Creation Programからも10万ドルの投資を受けることが決まっている(現在契約内容を調整中)。ここにY Combinatorからの投資を含めると、これまでの合計調達額は14万ドルに達する。

さらに、シリコンバレーの有名投資家からは100万ドルの投資話を持ちかけられたようだが、現状そこまでの大金は必要ないということで断ったとLoは語った。しかしYCのプログラムを卒業した後には、100〜300万ドルのシード資金の獲得を目指すとも彼は話している。

彼らがYCで学ぼうとしているのは、どのようにPyのアプリをグローバルビジネスへと成長させられるかということだ。彼らは一案として、コーディングスクールを運営している団体とパートナーシップを結び、生徒にアプリを使ってもらうことでユーザーベースを拡大できるのではと考えている。

「私たちには起業経験がありません。私はいくつかアプリを作ったことがありますし、ふたりともソフトウェア開発の経験はありますが、実際に会社を立ち上げるというのは初めてのことなので、プロから指導を仰ぐというのはとても大切なことだと考えています」とYCでの狙いについてLoは語った。「さらにYCはソフトウェアプロダクトをスケールさせるのがうまいということでよく知られていて、私たちにはそれがとても魅力的に映っています。彼らのネットワークに入り込んで指導者を見つけ、事業をスケールさせて世界中の何百万人という人たちにプロダクトに触れてもらう。この展望こそ私たちを興奮させ、私たちが毎朝目をさまし、YCプログラムへの参加を楽しみにしている理由なのです」

誰でもコーディングは学べるものなのだろうか? 「そう思います」とLoは少しためらいがちに言った。「文字が読めないとなると難しいかもしれませんが、子どもでも文章さえ読めればコーディングができるようになると思いますよ」

原文へ

(翻訳:Atsushi Yukutake/ Twitter