Automerge – a new foundation for collaboration software
Notes from talk by Martin Kleppmann https://youtu.be/Qytg0Ibet2E
How can we make a living building software like this? That doesn’t trap someone into renting their own data? And gives its users agency and autonomy?
Bring your own data store or persistence
In the future, our cloud providers should give us simple, universal sync interfaces so we can use their services as persistence and sync servers for any of our own apps and data.
Local first, but sync and persist to any backend, is this what the remoteStorage protocol is for?
Version control can be built into apps at a fundamental level. Also allows to go back in history etc.
‘We, as software developers are privileged to work with tools like git’
Many other fields could benefit from being able to do branching, and test out new things in isolation (and not necessarily P2P and real time) before merging their changes back into the main branch.
This would be a very good case for the Working with manuscripts and authors – hypermanuscripts. Allowing us to work offline and by ourselves, then merge our changes into the main branch. Asynchronous collaboration.
When working on a book, this could be of huge amount importance in the editorial process.
Digression: A text processor should be fully customisable, but only on a general level. If you change the font for headings, it changes it for every representation of every document without actually changing the document.
Being able to simulate printed pages could also be important for certain authors. Some authors don’t count words or characters but the number of pages they’ve written.