Be Optimistic: Offline First Apps
Offline capabilities for software applications have reached a high point in innovation. Although the advent of high-speed wireless technologies like LTE has brought faster speeds to our mobile devices, the occasional “dead-zone” or low-speed connection is unavoidable. Additionally, many emerging markets of the world still consider lower-speed networks the standard and furthermore, in moments of crisis or the recovery periods following natural disasters, cellular and telephone networks are the first infrastructures affected. With the world more interconnected than ever before, we need a better way to share information and retain information so that our tether to the “cloud” is less brittle.
In this talk, I’ll explain the fundamentals of an offline first application. We’ll cover topics like data replication, Optimistic UI, and new browser features that allow users the ability to save more of their data offline for improved speeds and experiences.
We’ll explore the current technologies that make offline-first applications possible. I’ll explain the standard correlation between these services, namely: replication, synchronization, access methods, and the underlying data structures (RDBMS vs. NoSQL/Document). The technologies we’ll cover are:
- Realm, a mobile platform and a replacement for SQLite & Core Data to build offline-first, reactive mobile experiences using simple data sync.
- Cloudant (CouchDB), a highly scalable and performant JSON database service that moves application data closer to all the places it needs to be for uninterrupted data access, offline or on.
- AWS AppSync, build data-driven apps with real-time and offline capabilities.
- Gun, an open-source, real-time, decentralized, offline-first, graph database engine.
Finally, I’ll demonstrate how building for offline first not only improves user experience but also tackles complex usability challenges.
Emily Morehouse-Valcarcel is the Director of Engineering at Cuttlesoft, a creative product development agency.
Denver Place (Conference Room)
999 18th Street