Sujay Jayakar
sujayakar.bsky.social
Sujay Jayakar
@sujayakar.bsky.social
cofounder @ convex.dev. easily nerd sniped and okay with it.
@convex.dev now has an MCP server! the cursor AI agent can now list project's schema and API, read data from tables, and call functions.

it's insane how good it is at gluing tool calls together. here's an example of it building a histogram of a message lengths in a chat app.
March 4, 2025 at 9:33 PM
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
December 13, 2024 at 5:13 PM
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!
Recently read @sujayakar.bsky.social’s article on @convex.dev’s Object Sync

I’m excited/intrigued by how Convex is approaching Local First.

Build a reactive database then add a local first syncing solution (their object sync that’s coming out soon)
December 3, 2024 at 6:11 PM
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...
Building better, faster apps with Local-First (w/Johannes Schickling)
YouTube video by Convex
www.youtube.com
December 3, 2024 at 6:09 PM
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.
November 26, 2024 at 5:11 PM
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, ...)
November 25, 2024 at 3:40 PM
"convex is a machine for turning my sleep schedule into your app's reliability" - Alfréd Rényi :)
My secret sauce for launching quick and superior products is completely free

@convex.dev (The backend that’s more reliable than my sleep schedule)

@clerk.com (Making auth so easy, my rubber duck is unemployed)

#stripe (Because ramen isn’t free, and neither are my apps)
November 25, 2024 at 3:05 PM
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...
November 22, 2024 at 9:08 PM
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 🤯
November 21, 2024 at 7:06 PM
Reposted by Sujay Jayakar
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.
expo.dev Expo @expo.dev · Nov 21
🥳 Launch Party day 4: Introducing LiveStore - a local-first data layer built on SQLite for high performance apps.

The creator of LiveStore is @schickling.dev (former @prisma.io) and he's opening up early access to LiveStore today! Check out his blog post for the details: expo.dev/blog/local-f...
LiveStore: SQLite-based data layer for local-first apps
Introducing: LiveStore - the client-centric, local-first data layer for high performance applications.
expo.dev
November 21, 2024 at 5:06 PM
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.
November 18, 2024 at 4:19 PM
amazing work from @convex.dev engineer ian maccartney wiring up automerge to convex!
November 16, 2024 at 4:06 AM
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-...
RangeBitmap - How range indexes work in Apache Pinot
Suppose you have an unsorted array of numeric values and need to find the set of indexes of all the values which are within a range. The range predicate will be evaluated many times, so any time spent...
richardstartin.github.io
November 14, 2024 at 3:28 PM
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-...
An Object Sync Engine for Local-first Apps
Object sync engines manage a rich object graph across multiple clients and a centralized server and are a great fit for building local-first apps.
stack.convex.dev
November 13, 2024 at 3:49 PM
these digital marbling fluid simulations are the coolest thing i've seen in a while: blog.amandaghassaei.com/2022/10/25/d...
Digital Marbling
I’ve been working on a physics-based marbling simulation to explore the ways that the traditional craft of paper marbling can be augmented digitally. Paper marbling is a centuries-old craft that uses ...
blog.amandaghassaei.com
November 12, 2024 at 1:34 PM
if you've ever used google photos and wondered how it syncs millions of photos with buttery smooth scrolling, wonder no longer!
ikhare.com Indy @ikhare.com · Nov 8
Ten years ago, my team was hard at work building the first version of Google Photos for Android. I've always wanted to share a bit more about how we built it.

We wanted to build it "mobile-first." This is quite similar to the "local-first" conversation today.

stack.convex.dev/mobile-first
Mobile-first: Building Google Photos
Indy, our Head of Product, led building Google Photos for Android. This is his story.
stack.convex.dev
November 8, 2024 at 4:08 PM
we've long held at convex that SQL isn't a great fit for OLTP workloads. buuuuut, with all of the recent SQLite WASM work, why not try stuffing it into a convex component?

and while we're at it, did we just get reactive SQL queries for free?

(crosspost from the other place)
November 6, 2024 at 5:48 PM