その後のその後

iOSエンジニア 堤 修一のブログ github.com/shu223

MoffとWHILLのアプリがリリースされました!その開発裏話など。

iOSアプリ開発者を名乗る者として恥ずかしい話なのであまり自分から積極的に言って来なかったのですが、実はわたくし、2012年末以降、実に2年近く一本もアプリを出せてませんでした


いや、コードはたくさん書いてたんですが、2013年前半はひたすら 書籍執筆とそのサンプルコード作り だったし、後半は SDK をつくってたので、自分の書いたコードが人様のアプリには入ってはいたものの、やはり自分が開発したアプリが出ました!という感はなく。そして2014年になって独立してからも、諸事情でストアに出さないことになったり、プロトタイプやデモまでのお手伝いだったりということが多かったもので。。


で、そんな中、がっつりお手伝いさせていただいたアプリがこの10月に立て続けにリリースとなったのでご報告させていただきます!


裏話、とまでは言えないかもしれませんが、アプリの紹介以外に、開発の経緯とか、働き方とか、技術的なことについても(公開して問題ない範囲で)少し紹介したいと思います。

次世代パーソナルモビリティ『WHILL』


昨日ストアに出たばかりの、次世代パーソナルモビリティ WHILL と BLE により連携するアプリです。


アプリの機能

  • リモートコントロール

ベッドサイドにWHILLを呼び寄せる、介助者が操作する、といったユースケースを想定した機能です。BLEの用途として遠隔操作はベーシックなアイデアですが、WHILLのようにおもちゃサイズではないものがラジコンのように手元のスマホから動かせると、未来感あります。

  • シートのスライドをコントロール

WHILLは乗り降りしやすいようにシートを前後にスライドさせることができるのですが、その操作部はアームの下側にあるので、ベッドなどからWHILLに載る際にはスマホから操作できると便利だそうです。

  • 内部パラメータ設定

パワー、前進速度の最大値、最小値、前進加速度の最大値、最小値、前進減速度の最大値、最小値、後進速度の・・・等々々、19種類におよぶパラメータがあり、これらを自分好みのチューニングにしたいというニーズが非常に強いそうです。100人いれば本当に好みが100人違うそうで、サービスマンが全米を飛び回ってチューニングしてるとコストが莫大になってしまうので、BLE経由で自ら設定変更できるようになっています。

WHILL本体なしで試す

もちろんWHILL本体ありきのアプリなのですが、

  • 最初の "WHILL BLE KEY" の入力ダイアログをキャンセルして、
  • CONNECTボタンじゃなくその下の "START WITHOUT WHILL" を選択

することで一通り試してみることはできます。


https://itunes.apple.com/app/id926042487

開発体制

WHILL の CTO 福岡さんが WHILL 本体側(回路設計&ファーム実装)、アプリ側を堤が担当しました。


アプリのデザインはカヤック時代の同僚、おかず にお願いしました。

BLE112 Development Kit

WHILL は BLE チップとして Bluegiga 社の BLE112 を使っています。で、開発で大活躍したのが下記画像の Development Kit で、



これはディスプレイ・USBインターフェース・バッテリーボックス・デバッガ・確認用のセンサ等々、BLEモジュールの開発・検証に必要な諸々がボードにビルトインされているので、部品を集めて回路を組んだりしなくても、買ってすぐに BLE モジュールのファームウェア開発を始められるという代物です。


WHILL は物理的にもコスト的にも開発用に本体を何台も用意したりすることは難しいので、基本的にWHILL本体と繋げて動作させるのは実装完了してからの動作確認時ぐらいになってきます。


で、それまではiOSアプリ側は、この Development Kit を WHILL の代わりの接続先として使ってました。WHILL側の福岡さんと gatt.xml を共有しつつ。


参考記事: 【改訂版】BLE112 / 113 の開発環境を Mac に構築する - その後のその後

参加の経緯

WHILL を手伝い始めたのはけっこう前で、今年の3月に遡ります。CEO 杉江さんから Facebook Message をいただいたのがきっかけでした。


当時から iOS × デバイスの BLE 連携は一番やりたい分野だったし、WHILLは 500startupsにいたころから プロダクトもチームもリスペクトしてたので、ぜひともやりたいですとがっつり食いつかせていただきました。


で、CTO福岡さんと何回かスカイプミーティングをしたあと、町田の工房に行ってWHILLに乗せてもらい、まずは仕様やその後の開発方法について話し合いつつBLE接続なしのUI/UX共有用アプリをつくり、という感じでゆっくりと手伝い始めました。


(当時のブログ記事:独立して最初の3ヵ月間にやったお仕事のまとめ - その後のその後


で、その後も基本的に毎週土曜日、でも福岡さんが忙しかったり出張だったりすると中止になるので、だいたい月に3人日ぐらいのペースで開発を進めてきました。

TV出演

アプリだけWBSに出演したこともあります。


ウェアラブルなおもちゃ『Moff』

Moff は、Kickstarter 向け出荷が先月だったので実はそのときにはアプリはもう出ていたのですが、正式に 10/15 に発売になりました!



お子さんのいらっしゃる iOS な方々はぜひお買い求めいただけると嬉しいです。Amazon電子玩具部門で妖怪ウォッチに次ぐ2位の人気だそうです。(僕も甥っ子達へのプレゼント用に2つ買いました)


こういうおもちゃです↓↓↓↓

コンテンツについて

刀でキンキンやりあったりボクシングでボコボコするのも楽しいのですが、なんといっても Drum が楽しいです。



自分の中心軸から左の方に向いて腕を振る(ドラムスティックを振る感じで)とハイハットとスネアが、右に向いて振るとタムが鳴ります。で、上の方で振るとクラッシュシンバルが鳴ると。子供からも(その演奏姿を観る)親御さんからもすごく評判がいいそうです。


ちなみに、最初に入っているコンテンツは13個ですが、いま審査に出しているバージョンから、追加コンテンツの配信機能(一定の条件でダウンロードできるようになる)がつきます!

開発体制

iOSアプリのバージョン1.1.0(審査中)までに関しては、CTO米坂さんと僕とで実装しています。もちろん、ハード、サーバーサイド、デザイン、ジェスチャ認識アルゴリズム開発等々含めるともっと多くの人が関わっています。(が、どの辺りまで書いてよいか要確認なので控えておきます)

参加の経緯

とあるミートアップでCTO米坂さんが声をかけてくれたのがきっかけでした。ちょうどその数日前に「Kickstarterで2日間で目標調達額を達成!」というニュースをFacebookで見かけて興味を持っていたところだったので、こちらも全力で食いつき、GW明けから開発に参加させていただきました。


こちらは最初2週間ぐらい集中して入ってアプリの基本形をつくった後、その後は開発内容やフェーズに応じて週2〜3ペースでお手伝いさせていただいてます。

おわりに

書いてて気付いたのですが、どちらも「CTOとがっつり一緒に開発」というところが共通してるなーと。

  • 開発にまつわる諸々が技術的なことも含め共有できて、
  • プロダクトへの愛と責任があって、
  • その場で即断する裁量がある

方と一緒にやれる場合に自分はいい関係が築けることが多いのかなと。(もちろん今後これ以外にもいろんなパターンがあるとは思いますが)


そんなわけで、WHILL と Moff とそのアプリとフリーランスiOSエンジニアの堤を今後ともよろしくお願いします!