Profile avatar
sujayakar.bsky.social
cofounder @ convex.dev. easily nerd sniped and okay with it.
57 posts 784 followers 786 following
Regular Contributor
Active Commenter

been working on the @convex.dev object sync engine, and, unsurprisingly, we've been structuring it to use deterministic simulation testing. i'm still blown away every time how *simple* writing systems as deterministic state machines makes testing complicated race conditions

that's 100% it: we started with the database, built efficient reactivity, and are now working our way out to the clients. excited to have it in all of your hands soon!

we had a great conversation with @schickling.dev about local-first and how it's incredibly relevant to database folks. it doesn't matter how fast our databases are if this performance doesn't extend to the user experience. www.youtube.com/watch?v=n6Mx...

we looked at zanzibar yesterday, where a user A has access to an object B if there's a path between them in the access graph. let's walk through how they make this graph reachability problem efficient.

authorization comes up a lot, and it's easy to get lost in the soup of different ways to express who can access what (ACLs, RBAC, ABAC, ...)

"convex is a machine for turning my sleep schedule into your app's reliability" - Alfréd Rényi :)

this is a little unrelated, but I always loved how SQLite on a filesystem can be faster than just using the filesystem. www.sqlite.org/fasterthanfs...

we've been working on @convex.dev for almost four years now, and it's an incredible feeling to see the first *book* on using convex out there 🤯

LiveStore is the data layer I wish I had when working on mobile apps: Reactive, fast and fun to use! After many months of close collaboration with the folks at @expo.dev, I'm very excited to take a big step towards launching @livestore.dev.

reactive UIs, build systems, and materialized views in databases are all flavors of incremental computation. jamie brandon has an excellent analysis of incremental systems across three dimensions: structure, temporal locaity, and consistency.

amazing work from @convex.dev engineer ian maccartney wiring up automerge to convex!

range queries (e.g. `age > 20 AND age < 35`) have a cool indexing strategy in apache pinot. each row gets assigned to `log(n)` bitsets based on the binary representation of `age`. range queries then turn into unions and intersections of these sets. richardstartin.github.io/posts/range-...

we're building a local-first sync engine at convex, and it's finally time to start sharing some details! stack.convex.dev/object-sync-...

while we're at it: vimeo.com/groups/music...

these digital marbling fluid simulations are the coolest thing i've seen in a while: blog.amandaghassaei.com/2022/10/25/d...

if you've ever used google photos and wondered how it syncs millions of photos with buttery smooth scrolling, wonder no longer!