@artman
Tuomas Artman
1 year
A few years ago, I gave a talk at React Helsinki about the Linear Sync engine. We have come a long way since then, so we recorded a sequel to that talk at our company offsite a few weeks ago, detailing the challenges we’ve overcome scaling the engine:
12
58
469

Replies

@rcclerigo
Ricardo Clérigo
1 year
@artman This is great @artman thanks for sharing. In the last slides where you defer loading issues on a team to the batch loader what happens when you get a sync packet that’s a change to one of those? Hope that question makes sense. Great work sharing this 👍 learned a bunch
1
0
1
@artman
Tuomas Artman
1 year
@rcclerigo Batch loader will only update issues that are not yet in the local database, so sync will always win, it’s realtime after all and the latest representation of the entity.
0
0
1
@thibaultleouay
Thibault Le Ouay - Ducasse 🏓
1 year
@artman Please make this a proper blog post (text content)
1
0
1
@artman
Tuomas Artman
1 year
@thibaultleouay Nah, too boring ;)
1
0
1
@marceloterreiro
Marcelo T. Prado
1 year
@artman YES! I'm so excited for this sequel 🤩
0
0
1
@julianlehr
Julian Lehr
1 year
@artman cc @heikirk @pie6k you might enjoy this
1
0
2
@jordienr
jordi
1 year
@artman First one is one of my fav tech talks. Thanks for sharing this with everyone.
0
0
1
@jokull
Jökull Solberg
1 year
@artman What are your thoughts on potential of sub 100ms edge db's. Could drop CRDT because UI is snappy enough? With some optimistic updates sprinkled in?
1
0
0
@pie6k
Adam Pietrasiak
1 year
@artman I wonder what would be your take on my attempt to build an automated sync engine at (branch sync-engine) The idea was quite simple, but also quite complicated to implement (not ready): You define your 'access rules' (what user can see), and the server,…
1
0
0
@ericmigi
Eric Migicovsky
1 year
@artman Overcome?
0
0
0
@lmeowhelena
helena
1 year
@artman knowing how my favorite tools work underthehood is my guilty pleasure
0
0
3
@enigmacpp
Enigma
1 year
0
0
0
@danituits2
dani
1 year
@artman @linear Just watched it. Great talk! Something that’s still not clear to me is when you decide to send transactions over the wire vs. the actual models. For instance, if you already have some models in the client but a bit old, how do you decide what to do?
1
0
0