その後のその後

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

BLEと私

せっかく書籍を出すというありがたい機会にも恵まれたので、短いようで長い、BLEとの馴れ初めから書籍を出すまでの思い出を振り返ってみようと思います。



iOS×BLE Core Bluetoothプログラミング
堤 修一 松村 礼央
ソシム
売り上げランキング: 898

2013年・夏:Pebble をきっかけにスマホ連携ガジェットに興味を持つ

当時、シリコンバレーを拠点とするスタートアップ AppSocially で働いていました。


iOSアプリに友達招待機能を提供するSDKを開発していて、Facebook や Twitter 等のSNS連携が技術的な肝であり、Core Bluetoothや外部デバイスはまったく縁がなかったのですが、代表の高橋氏のところに届いたPebble *1 を見せてもらったのがそもそものきっかけだった気がします。





iOSのSDKも用意されていて自分でつくったアプリとも連携させられるというところにiOSエンジニアとして強烈に惹かれるものがあり、そこから「日本に戻ることになったらiOSと連携するガジェットを買い漁ろう」(当時アメリカでの住居はAirbnbを転々としていた&日本のアパートは引き払っていたので通販を利用しづらかった)という密かなワクワク感を抱き始めたのでした。

2013年9月:Arduino のワークショップに参加する → プチ挫折

諸々の事情で帰国することになり、まだリモートでAppSociallyの仕事はしていたものの、せっかく日本に帰ったので、週末は新幹線で都内まで出て行って(※福島の妻の実家に居候していた)ワークショップやハッカソンに参加するようにしていました。


で、自分で電子工作してガジェットつくれたら楽しいだろうなぁというのもあって、Arduinoのワークショップに参加したのですが、


記念すべき初のLチカ 2013.9.22


Lチカ *2 〜音声合成LSIを使ってしゃべらせる、というところを体験してみて、自分で好きなものをつくれるようになるまでの道のりは遠いということを痛感してしまったのでした。

2013年11月:iOS×外部デバイスの連載開始

自分でデバイスをつくるのは無理だ、という点はあきらめたものの、やはりガジェットまわりに興味はあったので、じゃあ「市販品で iOS SDK が用意されているもので楽しもう」ということで、自分の勉強をドライブするためにも、こういう連載を gihyo.jp の中の人の方に提案し、

無事企画が通り、連載開始となったのでした。


そしてこの連載の記念すべき第1回は konashi なのですが、本当にたまたまその掲載の前週、konashi を使ったワークショップに参加し、今回の共著者である松村礼央さんと初めてお会いしたのでした。(この時点ではまだBLEのビの字もわかってない

2013年12月:iBeacon の仕事が来る

Twitterでの繋がりで、iBeaconの仕事が舞い込んできました。



iOS+デバイス連携的なことに興味を持ち、連載を始めたりブログに書いてたりしてたのを知っていた MTL の @i2key さんからの絶妙のトスでした。ほんと何がやりたいとか書いとくといいことあると思いました。


これが後に火鍋レストランへのiBeacon導入につながっていきます。

2014年1月:BLEについて調べ始める

同じ頃、(NDAで書けないのですが、)とある新規ウェアラブルデバイス開発の相談がありました。で、「WiFiのようなインフラ無しで、ワイヤレスで通信したい」という要件に対して、じゃあ Core Bluetooth だろう、ってことで BLE について調べ始めたのでした。


これらの記事も今読むと相当やばい(誤解・間違いが多分にある)のですが、上原さんがやっている WF-BTLE グループに Bluetooth Low Energy と Bluetooth 4.0 を混同したトンチンカンな質問を投稿して丁寧にご回答いただいたのも確かこの頃です。

2014年2月:IRKit開発者の大塚さんからの叱咤激励

この頃、IRKitを出したばかりの大塚さんと飲む機会がありました。


そこで、「ハードウェア開発に興味あるけどハード側できないので、BLEに詳しくなってハードウェアプロジェクトでアプリ開発をやっていきたい」という話をしたら、最近のブログ記事の質が低い、というご指摘をいただいた流れからの)


「じゃあもっと勉強しないとね」(=まだそんなんじゃ通用しないよ)


というお言葉をいただき、もっと勉強しよう、と思ったのでした。


ちなみに本記事の趣旨からはそれますが、当ブログを始めるきっかけをくれたのも大塚さんです。

2014年3月:WHILLから仕事が来る

500startups時代に同期だった縁で、次世代パーソナルモビリティ「WHILL」からBLEを用いてWHILL本体と連携するiOSアプリ開発の話が舞い込みました。


(町田の開発拠点(当時)にて初めてWHILLに試乗。2014.4.5)


もともとWHILLというプロダクトもチームもすごくリスペクトしていて、しかも興味のあるBLE利用、ということで嬉しいオファーでした。最初のスカイプでCTO福岡さんが「CANが〜」と話し始めたときに「CAN????」となったのもいい思い出です。ウェブやアプリの開発現場とは何もかも違っていて、いろいろとカルチャーショックでした。

2014年4月:MoffのCTO米坂さんと会う

Qiitaのミートアップに参加した際、MoffのCTO米坂さんと初めてお会いし、Moffのアプリ開発のお仕事のお話をいただいたのでした。


当時Moffは、Kickstarterで目標の4倍となる金額を調達し話題をさらったばかりで、



それをFacebookのタイムラインでちょうど見かけたばかりで「おもしろいプロダクトだなぁ」と思っていた僕はもちろん飛びつきました。

2014年5月:書籍の執筆依頼

正確にはメールを頂いたのが4/28、初打ち合わせは5/1。僕の書いたブログ記事や連載記事を見て、フリーで編集者をされている大内さん(数々の技術書を出版されている)よりお声がけをいただきました。


一も二もなく飛びついた・・・というわけではなく、相当迷いました。


自分としては、「なぜ自分がBLEの本を書くのか?」というところにまだ答えを見いだせなかったからです。自分の知識の多くは上原さんをはじめ多くの方がWeb上に書いた記事やコードで勉強させてもらったわけだし、(ここまでの経緯をみるとよくわかると思いますが、)僕より詳しい人は大勢いるだろうし。


少なくともBLEの規格まわりについては自分は書けない、ということで大内さんが交渉してくれたのが共著者の松村礼央さんでした。


で、松村さんや大内さんとディスカッションを重ねるうち、

  • 「ペリフェラルとかキャラクタリスティックとか当初よくわからなかった」「BLE云々より、始めはただただガジェットいじりたかっただけ」というあたりの気持ちがよくわかる
  • 松村さんはkonashi、僕はWHILLやMoff等の実案件をこなしていて、そういう二人がタッグを組むのはいろいろと宿るものがありそう

というところで、自分がBLEの本を書く、ということがハラオチしてやっと原稿書き始めたのがなんと5ヶ月後(!)の10月。。(その節はご迷惑をおかけしました)

2015年3月23日:書籍出版

長くなってしまったのでここで一気に時間が飛びますが、その後いろいろなBLE絡みのお仕事があり、

2014年11月あたりから開発案件を少しおさえて、書籍執筆に専念しはじめました。



そして2015年3月、そんな汗と涙の詰まった書籍が、ついに発売となりました!


BLEを使ったiOSアプリ開発の解説書です。480ページの大ボリューム!BLEについてはゼロから学べるようになっています。また、「ハマりどころ逆引き辞典」は僕が実際に案件の中でハマって書き溜めたものなので、参考にするとかなりの時間短縮になると思います


というわけで「既にCore Bluetoothでアプリ開発をしている」方も、「ちょっと興味あるけどハードル高そうでまだ手を出してない」という方も、どうぞよろしくお願いいたします!


iOS×BLE Core Bluetoothプログラミング
堤 修一 松村 礼央
ソシム
売り上げランキング: 626



*1:彼は Kickstarter でbackしてたのでいち早く入手していた

*2:LEDを光らせる。電子工作界のHello World的なもの