Realm Blog

Realmを使ってデジタルネイティブ世代に教育を提供する

Thread Learning: リアルタイムのデータ同期とオフラインファーストによる協調的な自閉症教育

特別支援教育の教師の方々は、毎日、生徒の進捗に関する数千ものデータポイントを手作業でプロットします。毎日の終わりには各データをグラフ化し、定規を用いて結果を分析します。このプロセスは非常に時間がかかる大変な作業です。紙媒体を使って行うには大きな制限があります。

 

Thread Learningは教師、両親および、セラピストに対して、自閉症や特別なケアを必要とする子どもたちに教育を届ける方法を進化させています。Thread Learningの行動データ収集プラットフォームにより、介護者はiPadを使用して学生データを記録することができます。その後、プラットフォームはデータを自動的にグラフ化して分析し、品質管理を行い、両親を含む子どものケアチームのすべてのメンバーと結果を共有します。

電子データを用いることで、介護者のチームでは、すべてのメンバーの作業をより効率的に調整して、生徒のニーズに的確に対応することができます。例えば、子どもが授業中は3人の先生とスピーチについて学んでいて、同時に放課後は言語療法士、行動アナリストに教えてもらっているとします。Thread Learningは、すべてのチームメンバーのデバイス間でリアルタイムでデータを同期させます。より情報に富んだ介護者は、質の高い指導と生徒の成果の向上を提供できます。

協調的に使えるケアプラットフォームを構築する

協調的に使えるケアプラットフォームのビジョンを実現するために、Thread Learningには介護者チームがリアルタイムでコラボレーションできるデータ処理ソリューションが必要でした。共同設立者の1人は、大学院のコンピュータサイエンスのクラスでRealmと出会いました。彼はすぐに新興スタートアップでは実装することが不可能な、高度な機能を実現できることを認識しました。

“Realmは本当に開発を加速するための力になってくれました。数か月かかると考えていたことが数週間でリリースできていました。”
- Sam Raudabaugh, Co-Founder & CTO, Thread Learning

Thread Learningの開発チームは最初から自分たちのアプリをRealm Mobile Databaseを使って開発しました。そのことでMySQLや他のORMを利用した際に起こる問題に当たらずにすみました。同時に、オブジェクト指向でないデータソリューションを使うことによる技術的負債もありませんでした。

Realm Mobile Platformがリリースされると、Thread Learningの開発チームは自然にそれを使ってより堅固に、リアルタイムなデータ同期の可用性が実現できると考えました。以前は普通のREST APIを用いたデータフローが使われていました。Realmのデータ同期機能はさらに良いソリューションを提供しました。双方向データ同期により、介護者のチームはリアルタイムで同じデータセットで同時に作業できます。

“Realmをこれまで使っていたREST APIと比較してみると、どちらが良いか結果は一目瞭然でした。”
- Sam Raudabaugh, Co-Founder & CTO, Thread Learning

オフラインファースト、複雑さの排除

学校に用意されているWiFiネットワーク環境はしばしば不安定になります。そのためThread Learningではオフライン環境でも堅牢に動くことが求められます。介護者はネットワーク通信か可能かどうかにかかわらず、データを入力してアクセスできなければなりません。創設者の初期のメンターの1人は、「あまりにも大変で複雑すぎる」ために、オフライン機能は完全に避けるようにアドバイスしました。しかし、Realm Mobile Platformを用いることで、Thread Learningはデータの更新や衝突といったREST APIを用いたときに起こる典型的なネットワークの複雑性を考える必要がなくなりました。

データの損失は紙媒体でデータを管理しているときは大きな問題として長い間存在していました。そのためThread Learningは特にオフラインファーストを主なユースケースとして考えているRealmの仕組みを評価しています。Realmはクライアント側にも同じデータを持つ仕組みのため、すべてのデータはローカルデバイスに保存されていて、オフライン状態でもすべてにアクセスできます。オフライン状態でも継続的にオンラインの場合と同じ応答性の高いユーザー体験を提供できます。ネットワーク接続がオンライン状態になると、自動的にローカルの更新はRealm Object Serverに同期され、すべてのチームのデバイスに配信されます。Realmのコンフリクトの自動解決によって常にデータは最新の状態に保たれます。

“Realmのおかげで、オフライン状態の処理や、データのコンフリクトについて心配する必要はなくなりました。”
- Gregory Brill, Co-Founder & CEO, Thread Learning

Thread Learningチームがプラットフォームを進化させていく上で、Realmの新機能の開発についてオープンにしていることは、ロードマップを計画することに非常に役立っています。このことにより、成長を上手に管理し、今後5年間で米国において百万人以上の自閉症の子どもをサポートするという使命を実現することができます。

“Realmが我々を一足飛びの未来へ連れていってくれます。”
- Gregory Brill, Co-Founder & CEO, Thread Learning


Realm Team

At Realm, our mission is to help developers build better apps faster. We provide a unique set of tools and platform technologies designed to make it easy for developers to build apps with sophisticated, powerful features — things like realtime collaboration, augmented reality, live data synchronization, offline experiences, messaging, and more.

Everything we build is developed with an eye toward enabling developers for what we believe the mobile internet evolves into — an open network of billions of users and trillions of devices, and realtime interactivity across them all.