PaaSやBaaSの便利さは、Web開発者なら誰でも知っているだろう。特にプロトタイピングのとき、自分でサーバーを立てたりデータベースの設定など準備が不要というのは開発のハードルを大いに下げてくれる。コードをクラウドに投げれば即プロダクトが動き出す。おっと表示が崩れてるのはバグだ、修正、修正っと、またコードを手元で修正してプッシュすれば、これまた即サービスに反映される。Salesforceに巨額買収されたHerokuのようなPaaSは実に素晴らしいものだ。
ではIoTのサービス開発はどうか。
PaaSやIaaSがあるさ、オッケー、オッケー。バックエンドはNode.jsでもRailsでもいいね? でも、デバイスの管理とか認証、ハートビートとかどうするんだっけ? ていうか、数十台とか数百台単位でデバイスが広まったときのソフトウェアのアップデートって、何を使えばいいんだっけ?
そんな課題を解決する日本のスタートアップ企業、XSHELLが今日、IoT向けのプラットフォームサービス「Isaax」(アイザックス)をベータ版として公開した。同時に、グローバル・ブレインとISID(電通国際情報サービス)に対して第三者割当増資を実施したことを発表した。実際の投資タイミングは2015年末と2016年8月の2度に分かれているが、2社合わせて総額8000万円のシード投資ということになる。
ISIDは最近Fintech関連のイベントのFIBCや、大手町のFintech拠点であるFino Labなどスタートアップ企業への投資や協業で知っている読者も多いと思うが、純粋なエンジニアリング方面での投資はめずらしい。金融システムや電通グループ向けシステムのほか、自動車産業向けのシステムなども手がけていることから、ISIDとしてはIoT時代への布石という意味合いもあるようだ。
左からグローバル・ブレインの熊倉次郎氏(パートナー)、XSHELL共同創業者でCEOの瀬戸山七海氏、同COOのベセディン・ドミトリ氏
開封から15分以内でSlack温度計を実装、その場で投資決定
XSHELLを創業したのは慶應SFCに通っていた現在25歳の瀬戸山七海氏だ。情報系の学部在学中に起業して、複数デバイスの協調動作を取り入れたパワードスーツの開発をしていた。3体のパワードスーツが協調動作すれば、非常に重たい物体を持ち上げるときに多地点測量して重心を推定するなど、これまでにない価値が生み出せるのでは、と考えたそうだ。実際には安定した低遅延無線ネットワークを前提にすることができないためにリアルタイム処理は難しく、このアイデアはうまくプロダクトに結びつかなかった。このときの経験からIsaaxのアイデアにたどり着いたという。
Isaaxの説明の前に面白いエピソードを1つ。今回の投資を担当するグローバル・ブレインのパートナーでベンチャーキャピタリストの熊倉次郎氏がTechCrunch Japanの取材に対して語った投資の意思決定に関してだ。
デジタル温度計で室温を測り、それをSlackでつぶやく―、そんな良くあるIoTの習作のような成果物を投資家たちの前でピッチする15分間で実装できたら投資しようじゃないか、となった。瀬戸山氏は未開封のIntel Edisonのパッケージを開けるところから始めて、実際にSlackへ温度を投げるコードを15分足らずで完成。IoT開発の速度を上げるというバリュープロポジションに対して、実践デモで説得したそうだ。「誰も投資に反対とは言えませんでしたね(笑)」(グローバル・ブレイン熊倉氏)と投資の意思決定が行われたという。
さすがに自分が慣れた開発環境なら、たいていのものは15分でプロトタイプを完成させるライブコーディングくらいできるだろうとも思うが、興味深い話ではある。
CLIのコマンド一発で複数デバイスにコードを反映
Isaxx(アイザックスと読む、もう1度念のため。この記事中4度めの登場だけど)は、Herokuに似ている。Go言語で書かれたコマンドラインツールがあって、そのサブコマンドを使うことで、まずベースとなるコードの雛形を生成し、その後デバイスとクラウドに対して必要なコードを一発で転送できる。
「フルスタックエンジニア」という、それが何を指していて実際に生存が確認されているのかも良く分からない謎の言葉が生まれて久しい。ハードウェアやシステムに近いプログラミングから、モバイル、フロントエンドなど、あらゆるプログラミング言語や技術トレンドに精通していて、サービス全体を1人で実装できるエンジニアのことだ。
XSHELL瀬戸山氏は、IoT分野でそんなスーパーハッカーはほぼ存在しないという。
「IoT実証実験のコストは60%がソフトウェア開発だと言われています。IoTの開発にはデータ処理や認証技術、センサー、WAN、セキュリティー、製造管理などの知識が必要です。IoT検定というのがあるのですが、全部で19項目の知識が必要です。Wantedlyの全てのスキルセットを持つ人を検索すると60万人の登録中19項目全てのスキルセットを持つ人はゼロです。IsaxxではJavaScript、Python、Ruby、PHP、Golang、C++のいずれかの言語の1つが使えれば、デバイスのアプリも含めて開発、デバッグ、ローンチ後のアップデートなどが可能です」
リリース直前のMac版IsaxxのCLIツールをTechCrunch Japan編集部でダウンロードしてみたところ、サブコマンドとして「app show/create/delete」、「device show/init/config」、「cloud cluster/project/device/login/logout/quick」などが利用可能となっていた。例えばデバイス初期化コマンドを発行すると、デバイスの種類を聞かれ、デバイス側に常駐させるデーモンのバイナリイメージをネットからダウンロードし、これがデバイスに転送されるという流れ。クラウド操作のサブコマンドとしては、さらに「cluster create/register/deregister/list/status/delete」などがある。
IsaxxはMIPS系も含めてLinuxが稼働するモジュール、RaspberryPi、Intel Edison、Onion Omega、Pocket CHIPなどが使える。Arduinoに対応しないのかという質問に対して瀬戸山氏は「今は1980年代に似ています。当時オープンシステム、専用機、汎用機が戦っていました。IoTも同じで、5〜8ドルのLinuxが主流になっていくと見ています」と説明する。
ハードの世界にウェブアプリの世界を持ち込む
Isaxxでは1デバイスでの開発とデバッグという「開発フェーズ」から、複数台での「検証フェーズ」、数十台、数百台をセルラーネットワークで繋ぐ「事業フェーズ」まで対応する。コードの反映にかかる所要時間は開発や検証段階で1、2秒。数百台のデバイスにセルラー経由でアップデートをかけるとなると、さすがに3分程度かかるそうだが、それでもこれは従来の組み込み開発やM2Mの世界からしたら、大きな進歩かもしれない。例えば、従来カラオケボックスのリモコンのソフトウェアアップデートとなると、個体管理やアップデートの仕組みがシステム化されてこなかったため、数百人がかりによる属人的な職人芸となっていた現場もあるそうだ。
XSHELL瀬戸山CEOは「ハードウェアの世界にウェブアプリの世界観を持ち込む」のがIsaxxの狙いと話していて、「例えば既存サービスに対して変更を加えて、後から登場したデバイスと連携するようなことが可能になります」という。これまでIoTの実証実験で7人の開発者で6カ月(2400万円)ほどかかっていたものを、1人の開発者、2週間の開発期間(50万円)に短縮できるとしている。何より、ウェブ開発で使われるプログラミング言語であれば使える開発者は非常に多い、というわけだ。
JavaScriptだけできればIoTサービスのプロトタイピングが可能になる、という世界観は興味深い。ただ一方で、実際の製品レベルのサービスにしていくときに、各分野の知識なり専門家なりがなくていいのかと言えば、そんなわけにはいかないのではないか。北米市場の話だが、現在販売されているスマートロック16種のうち12種でセキュリティーが破られた、という話がある。「セキュリティーについてはプラットフォームが保証してくれています」と開発者が言うようなプロダクトは、ぼくなら使いたくはない。IoTで広く使われるプロトコル、MQTTのベストプラクティスを知らずに消費電力やトラフィックといったリソースの最適化ができるとも思えない。
もう1つ、すでにIoTと呼ぶべきデバイスやプロダクトを開発している人であれば、「Linuxモジュールが対象」という点に違和感を覚えるかもしれない。多くのIoT製品は、そもそもOSを搭載していないからだ。カラオケのリモコンのようにリッチなUIを扱う組み込みデバイスと呼ぶべきものが対象であればいいが、Linuxのフットプリントはそこまで小さくない。特にスマホを経由して使うタイプのIoTであれば、複雑な処理はiOS上で行うというのも現時点では現実的なアプローチだろう。そう考えると、Isaxxは、今後1年とか2年かけて実用性を検証するユースケースで、ある程度ノード側に処理をオフロードするタイプのアプリケーションから立ち上がる市場がターゲットになるのかもしれない。
XSHELLでは今回のIsaxxのプラットフォームサービスのほかにも「Rapid」と名付けた受託開発サービスも提供していく。これはPoC案件(Proof of Concept)を中心として、自分たちのサービスのドッグフーディングをする意味が強いのだとか。「顧客を巻き込むという意味もありますが、PaaSとしてやっていくためにはベストプラクティスを知ってないといけない」(瀬戸山CEO)。
IoT市場の予測として2020年に全世界で530億台のデバイスが稼働するという数字を総務省が発表している。XSHELLでは、このうち国内シェア0.8%(770万台)を獲得して1デバイスあたり月100円の課金となれば、年商100億円となるとソロバンを弾いている。「IoT、IoTと言われ始めて2、3年して、なぜ誰もIoTでブレークスルーできていないか? それはPoCの数が少ないから。開発コストが高くて稟議が通らないという事情もあるのではないか」と瀬戸山CEOは話す。ちょうどHerokuがそうだったように、「プロの事業会社から、趣味のホビィストまで、誰もが使えるIoTプラットフォームサービスを作りたい。そういうミッションもあります」という。