🌱 Brent Simmons Sync Rules
The Rules for merging notes
- Conflicts are not permitted.
- A note should merge at the property level. (If you change note text on your day phone > and a note’s tags on your night phone, both phones should get both changes.)
- Real time determines which change wins.
- A client doesn’t have to be up-to-date before it can push changes to the server.
- The order of calls to the server must not matter.
- It’s not important to keep a history of changes.
I think a good syncing system has four attributes:
- It does what the user expects.
- It’s efficient.
- It resists failures.
- It continues to work.