MilkcocoaでBaaSを体験!~バックエンドの仕組みと使い方~

第8回 リアルタイム系BaaSの徹底比較! 国内外BaaS 3社の特徴を理解して,技術選定の幅を広げよう!

この記事を読むのに必要な時間:およそ 3 分

PubNub

APIのデザイン

基本的にデータのリアルタイム同期体験を全面に押し出しています。PubNubの名にもあるように,pubnub.publishとpubnub.subscribeでのデータの同期が全てのベースです。

付随して,history関数を用いて同期したデータの履歴を取得したりなどもできますが,基本的には同期に特化したインターフェースです。また,ユーザのボリュームがある層がIoT系なので,今後もそちらのユースケースに合わせた改善が成されていくことが予想されます。

機能の便利さ

なんといってもリアルタイムBaaSの中で最も動作可能なクライアントライブラリが多いのが魅力です。そしてその中でも組込みデバイスへの対応具合がしっかりしています。

  • Microchip PIC32
  • MPLAB Harmony PIC32
  • Arduino
  • Raspberry Pi
  • Android Embedded
  • mBed (ARM)
  • Electric Imp
  • Java Embedded
  • Atmel SAMA5D3
  • Kinoma Create
  • TI CC3200 LaunchPad (Energia)
  • TI MSP430 F5529 LaunchPad with CC3100 WiFi BoosterPack (Energia)

等の多彩なマイコン上でPubNubインターフェースの通信を用いることが出来ます。これによってWebとは比較にならない数のデバイス数を稼ぎ出しているのでしょうね。

必然的に組込みユーザのユーザビリティに特化しているので,WebSocketハンドシェイクの際のブロードキャストサーバが複数用意されていて耐障害性を強く意識していたり,他のデバイスのネットワークへの参加不参加を簡単に取得できるようにしていたり,IoTネットワークのために作り込んだ機能が多く存在します。

もちろんWebやアプリにも使用できる機能なので,IoT開発やデバイス間連携に用いることも可能です。

ドキュメントの理解しやすさ

例のごとく英語でのみ書かれています。やはり対応クライアントが膨大なので,ドキュメントは自動生成になっており,一般的なシンプルなドキュメント然としています。

サンプルの多さ

USE CASESのページでウェアラブル端末やタクシー配車サービスの例を提示していますが,実際に動くソースコードへのアクセスは,特に日本人には容易では無さそうです。

コミュニティの充実度

Knowledge Baseと言うページに掲示板があります。人気テーマは以下のようです。

Knowledge Baseの人気テーマ

Knowledge Baseの人気テーマ

やはり,IoTコミュニティ強し,と言った感じですね。

Milkcocoa

APIのデザイン

3社の中で最もシンプルで削ぎ落とされたインターフェースをしています。会社のビジョンである「エンドユーザプログラミング」をそのまま現したような平易で学習コストが皆無なインターフェースですね。

  • データレンダリングの際のQuery
  • 保存の際のpush
  • 保存時の同期の際のon("push", cb)
  • 単純な送信に便利なsend
  • その同期のon("send", cb)

このように,覚えることがほとんどありません。デザイナーよりのインターフェースと言うか,空気のような体験を意図しているような感じがします。

基本的にできることはFirebaseよりも少ないですし,PubNubよりも対応デバイスは圧倒的に少ないですが,⁠思い立ったときに作る」という体験のデザインにおいては他2社を寄せ付けない手軽さを誇ります。

プログラミング言語のRubyやJavaScriptから感じられる,プログラミングの楽しさ・手軽さを求めるクリエイターに好まれているのも頷ける仕上がりになっています。

機能の便利さ

管理画面でのデータの閲覧やセキュリティ設定は可能です。ソーシャルログインはまだありませんが,Emailでの認証は可能です。

iOS/Androidクライアントは正式公開されていませんが,日本にいる開発チームと相談してサポート付きで実案件投入したりする事例はあるようです。

機能はシリコンバレーの2社より少ないですが,ユーザとの相互関係の中で価値を生み出す引き算の美学と言ったところでしょうか。

ドキュメントの理解しやすさ

APIが簡潔なので覚える事は少ないです。

サンプルの多さ

milkcocoa サンプルで検索すると,日本語でたくさんブログがヒットします。これが日本人向けと呼ばれる所以です。

コミュニティの充実度

ブログの量やサンプルの量からもわかりますが,潜在的な日本人ユーザが相当量存在するので,勉強会やハッカソンを通じた出会いも多いです。

Milkcocoa Google GroupMilkcocoa facebook groupなどでのユーザ間交流も活発なので,詰まった際の問題解決や最新情報のチェックには最も困らないと思います。

まとめ

英語に堪能な方なら,Webやアプリ用途ではFirebaseが非常に強いです。また,IoTではPubNubに一日の長があります。しかし,日本語圏でのコミュニティや情報量,そして思い立ったらすぐに実装できてしまう学習コストの低さなどにおいてはMilkcocoaも興味深いです。

Node.jsアプリケーションと組み合わせて使用したり,アプリやセンサーと連携させて使用したり,工数や契約の手間が短縮されることによる恩恵は,利用者が増えるに従って今後より一層無視できない大きな流れとして目に見えてくることが予想されます。

アカウントデータや課金系への使用は如何にGoogleが後ろ盾にいたとしても躊躇されるかもしれませんが,まずは社内の業務効率化ツールやメディアアート,ハッカソンやコンテストでの高速開発,休日のIoT日曜大工など,様々なユースケースを妄想する楽しみ方から始めてみてはいかがでしょうか。

著者プロフィール

落合渉悟(おちあいしょうご)

株式会社Technical Rockstars所属。スタートアップにおける高速開発の研究を行っている。現在,JavaScriptと3Dコンテンツに関する技術書を執筆中。