Local-first software: Returning data ownership to users
A talk at
TU Kaiserslautern,
Kaiserslautern, Germany, 15 May 2019
Abstract
Cloud applications such as Google Docs are popular because they enable real-time collaboration with
colleagues, and they make it easy for us to access our work from all of our devices. However, by
centralizing data storage on servers, cloud apps also take away ownership and agency from users. If
a service shuts down, the software stops functioning, and data created with that software is lost.
However, collaboration and data ownership needn’t be at odds with each other. This talk introduces
“local-first software”, a set of principles and technologies for software that retain the advantages
of the cloud, while also returning data ownership to end users. Local-first ideals include the
ability to work offline, cross-device collaboration, as well as improved performance, security,
privacy, long-term preservation, and user control of data.
This talk explores various technologies that partially satisfy the local-first principles, and
discusses some local-first software prototypes we have created. In particular, we have made good
experiences with Conflict-free Replicated Data Types (CRDTs), a family of data structures that are
designed from the ground up for multi-user collaboration. This set of ideas points towards a new
paradigm for application development.
Further details are in this article.