HackerTrans
TopNewTrendsCommentsPastAskShowJobs

techno-beetle

no profile record

comments

techno-beetle
·vor 7 Monaten·discuss
iTouch was a common nickname for the iPod Touch[0]. It was essentially an iPhone without a cellular connection.

[0]: https://en.wikipedia.org/wiki/IPod_Touch
techno-beetle
·letztes Jahr·discuss
A few questions regarding CRDT usage from someone that's lightly tested out automerge/autosurgeon in rust late last year, but hasn't used it or any other CRDT for an actual project.

1. Do you use the CRDT document as the source of truth or as just synchronization with a database as the source of truth. If the document is the source of truth, do you keep data in it or copy the data into some other format that's easier to query?

2. How do you handle changes to the schema of the CRDT documents? In my testing I had a `version` field at the top level of the documents and then a function to migrate forward between versions when a document is loaded, but I'm not sure how to handle when different clients are running different versions concurrently as opposed to all clients updating at the same time. I had read some articles that alluded to allowing the previous versions to still change the state and then, seemingly, translate it as needed on newer versions, but they seemed to hand-wave away any details of what that would actually look like to implement.

3. How granular do you go with documents in the spectrum of "one per user" to "one per object"?