Sign in

Anselm Eickhoff

@anselm.io
2.6K followers 1.6K following 339 posts

Thinking about code & design. Play is the only humane form of work. Founder of @garden.co - creator of Citybound & @jazz.tools

PostsRepliesMedia
Anselm Eickhoff @anselm.io · 13/08/2026
hell yeah
000
Anselm Eickhoff @anselm.io · 18/07/2026
Exactly!!
010
Anselm Eickhoff @anselm.io · 18/07/2026
and when I challenge this response at all the reaction isn’t “yeah I guess there are opportunities and possibility of a good life anywhere”, it’s “yeah I guess Europe is fucked, too” just blackpilling and hopelessness everywhere dare to be an optimist!!
000
Anselm Eickhoff @anselm.io · 18/07/2026
having lived in Russia for 5y+ it’s funny to see the same inability to distinguish visible politics and the government from real life. but it’s still surprising when applied to what should be a much more familiar culture with much more tourist and business exchange
100
Anselm Eickhoff @anselm.io · 18/07/2026
striking to go to a European conference and visit my hometown and every single old/new acquaintance asks the same first question “wait you want to live in and invest [your time/future] into the US?! Now?!??”
110
Anselm Eickhoff @anselm.io · 16/07/2026
It feels novel because most ‘realtime databases’ ask you to build an app around their hosted backend. Jazz makes each participant feel like it has a real local database, then turns synchronization into the substrate.”
001
Anselm Eickhoff @anselm.io · 16/07/2026
I do think we can delegate a lot to it, especially: - durable queues and consumer progress - atomic claims/reservations - idempotency and receipts - reactive wakeups - cross-device inspectors and control surfaces - permissions around who can observe or mutate
100
Anselm Eickhoff @anselm.io · 16/07/2026
That collapses several conventional layers at once: database client, API, websocket subscription system, cache invalidation, and a chunk of backend authorization.
100
Anselm Eickhoff @anselm.io · 16/07/2026
The local-first part is deeper than ‘SQLite with sync.’ Your process talks to a local replica as though it owns the data, while Jazz handles replication, reactive query updates, offline operation, permissions, and much of the consistency machinery.
310
Anselm Eickhoff @anselm.io · 16/07/2026
you know how the best marketing is saying the exact words your users say when describing your product to friends? this apparently includes the users’ LLMs now: “I’d describe Jazz as a replicated application state machine disguised as a pleasant relational database.” (contd.)
120
Anselm Eickhoff @anselm.io · 15/07/2026
I have an idea, but I’m going to continue this discussion assuming it’s about this unless your clarify bsky.app/profile/vfo....
020
Anselm Eickhoff @anselm.io · 15/07/2026
for visibility bsky.app/profile/anse...
000
Anselm Eickhoff @anselm.io · 15/07/2026
distorting superficial diversity metrics that are inherently noisy conf-to-conf, when an achievement of this community has exactly been diversity. Please pick better adversaries.
110
Anselm Eickhoff @anselm.io · 15/07/2026
Worthwhile movements depended on the support of far stranger bedfellows than this. Instead of focusing on stuff to help the movement you ragebait based on vilifying boring cloud vendors as some perceived enemy and…
120
Anselm Eickhoff @anselm.io · 15/07/2026
CF realistically doesn’t give a shit about local first, but @threepointone.bsky.social does. It is bottom up support from a long time member who can influence the sort of money that makes this big.
210
Anselm Eickhoff @anselm.io · 15/07/2026
The fact that this was possible is because local first is now big enough to attract sponsorship from big cloud companies, which as a signal helps the movement actually make a ripple in the mainstream.
120
Anselm Eickhoff @anselm.io · 15/07/2026
But this was the instance of the conf with the most new people from the most walks of life. And the most diverse set of topics of talks and the most new speakers. @martin.kleppmann.com’s talk was the most directly political call for a renewed meaning of the local first principles to that audience.
130
Anselm Eickhoff @anselm.io · 15/07/2026
Lu, you know how much I respect you and I say this as an attendee: I wish you actually came to the conf and contributed instead of torpedoing it from afar. I know you’re smarter than this. Was CFs copywriting tone deaf/presumptuous and their talk kinda offtopic? Sure. 1/n
110
Anselm Eickhoff @anselm.io · 15/07/2026
Wrapped up @localfirstconf.com in a summery Berlin beer garden yesterday. Always a special crowd to me because it’s where @jazz.tools got born 2 years ago. And where else can you hang out with Martin Kleppmann, Dan Ingalls and people who only use Mistral models at the same place?
0393
Anselm Eickhoff @anselm.io · 14/07/2026
People have been yapping about Malleable Software forever now. I think we’re finally actually entering its golden age - loving the “medley of demos” around Patchwork by @pvh.ca and @inkandswitch.com at @localfirstconf.com
0333
Anselm Eickhoff @anselm.io · 12/07/2026
history of distributed systems with the 🐐 at @localfirstconf.com
061
Anselm Eickhoff @anselm.io · 10/07/2026
I can’t say the same for Zig. Funnily enough, I admire Zig for its technical choices and innovations. But if Kelley’s ego, weird opinions and narrow worldview are more important than being in the arena and supporting the devs that use(d) it, it’s never going to be relevant.
010
Anselm Eickhoff @anselm.io · 10/07/2026
I haven’t seen enough internals to have an opinion on if Bun is slop, has always been slop and if the Rust version still is slop. But even if all of that is true, it’s extremely effective slop that has worked for a large audience and pushed the envelope for the entire ecosystem.
120
Anselm Eickhoff @anselm.io · 10/07/2026
The most striking aspect is the repeated attack of Jarred’s trajectory. “Groomed from a young age to uncritically embrace the Silicon Valley mindset” Extremely patronizing thing to say to someone who has found a way to build a beloved devtool, *defying* the VC playbook for years
230
Anselm Eickhoff @anselm.io · 10/07/2026
Some are defending Kelley with “he’s always been like this” and “his substance is correct and if the tone offends you, you just don’t get him” This reeks of old-guard autism-as-an-excuse toxic software discourse. There’s plenty of brilliant, opinionated devs who aren’t dicks.
110
Anselm Eickhoff @anselm.io · 10/07/2026
The reason that this is a bigger problem is that optics matter for devtools and their maintainers. In Rust vs Zig people focus on language features, but the one thing Rust has nailed is having an open, diverse community. As a result it has one of the best ecosystems out there.
120
Anselm Eickhoff @anselm.io · 10/07/2026
The transparent resentment, airing of supposed dirty laundry, and the most personal attack a dev could utter (“your code has always been slop”) is looser energy. “Unprofessional” doesn’t capture it and is beside the point. Abrasive tone is whatever, the substance is hostile!
120
Anselm Eickhoff @anselm.io · 10/07/2026
When someone stops using your stuff, your only reaction should be wanting to understand why. This is often the single biggest chance to learn what you can do better. This is still true if that person/org has been extremely personally annoying to you.
110
Anselm Eickhoff @anselm.io · 10/07/2026
Lost a lot of respect for Kelley today. I think it’s simultaneously true that 1) OSS owes you nothing 2) slop is bad 3) devtool maintainers should have service attitude First, you should be very mistrustful of your own “you’re holding it wrong” statements. (contd.)
260
Anselm Eickhoff @anselm.io · 04/07/2026
Okay but then you’re talking about maybe seconds of difference. If that matters for the semantics of your app you should either use local causality dependencies to make sure the edge server processes them in the right order, or just use proper exclusive transactions that get globally linearized
110
Anselm Eickhoff @anselm.io · 04/07/2026
No the only thing that matters is the order that these arrive on the server in
100
Anselm Eickhoff @anselm.io · 04/07/2026
No, give me an example of a situation you’re concerned about
100
Anselm Eickhoff @anselm.io · 04/07/2026
I’ve always felt more European than German, and more “of the Internet” than any real place I’m still a visitor of the USA (working on it), but this is the first place where I truly get to be myself. The first place that I want to help build. Today I’m coming out as American 🇺🇸
000
Anselm Eickhoff @anselm.io · 04/07/2026
although we are planning to implement WebTransport based multi-channels with different priorities, which can help in some head of line blocking cases
110
Anselm Eickhoff @anselm.io · 04/07/2026
yes, transport is a FIFO and the tier that you’re waiting for will process previous commits in that order
110
Anselm Eickhoff @anselm.io · 04/07/2026
No, the column contents literally merge with a per column merge strategy. Order only comes in as authored-at timestamp that deterministically influences the strategies
000
Anselm Eickhoff @anselm.io · 04/07/2026
See my reply up the tree re choose your own consistency. But agreed that this is quite novel and we need to nail docs. Thanks for mentioning jazz v2!
020
Anselm Eickhoff @anselm.io · 04/07/2026
The thing that seems to be missing from this discussion is that jazz v2 transactions are not just choose your own durability (which infra tier) but also choose your own consistency! default “mergeable” = eventually consistent, participates in merging or “exclusive” = traditional ACID, linearized!
110
Anselm Eickhoff @anselm.io · 24/06/2026
Prob very similar, and on-demand is also mostly the same thing, but I assume @siidorow.dev wanted to just preserve each author’s exact wording from the interviews. The diff between Jazz v2 and classic is that v2 also permits aggregate results to be synced (for counts etc) instead of all rows
040
Anselm Eickhoff @anselm.io · 24/06/2026
Can’t wait to see it! Would definitely benefit from a medium-length format. Please ping me when it’s done and I’ll repost
010
Anselm Eickhoff @anselm.io · 24/06/2026
TLDR
1313
Anselm Eickhoff @anselm.io · 24/06/2026
Thanks for letting us know, please try the non direct link: bsky.app/profile/anse...
110
Anselm Eickhoff @anselm.io · 24/06/2026
FIXED LINK: aaltodoc.aalto.fi/items/e71b38...
aaltodoc.aalto.fi
The Limits of Generalized Sync: A Taxonomy of Architectures, Trade-offs, and Decision Factors
Web applications increasingly compete on responsiveness, driving engineers to move data closer to the client. Sync engines promise reusable synchronization infrastructure, but whether that promise hol...
020
Anselm Eickhoff @anselm.io · 24/06/2026
For his master's thesis, @siidorow.dev interviewed me about how @jazz.tools fits into the landscape of sync engines and local-first DBs. Now that it's published (congrats!) I can say that it is *the* most rigorous & precisely categorized overview of our field! PDF: aaltodoc.aalto.fi/server/api/c...
3324
Anselm Eickhoff @anselm.io · 10/06/2026
Fable @ high reasoning for hard questions & architecture & review + GPT 5.5 @ low reasoning for smart and fast implementation is an insane combo
020
Anselm Eickhoff @anselm.io · 02/06/2026
Sure, inference is also just next token prediction, but if next token prediction is good enough it *becomes indistinguishable from intelligence*. The mechanism doesn’t matter and I would argue a lot of human/animal intelligence is also rooted in prediction. Thanks for coming to my ted talk
110
Anselm Eickhoff @anselm.io · 02/06/2026
The whole new math proofs stuff was shocking, but this hits on a very concrete personally relevant level. The number and detail of concepts it has to “hold in its head” and cross-induce over goes far beyond what you could fairly call “just smarter autocomplete”.
100
Anselm Eickhoff @anselm.io · 02/06/2026
Because it understands stuff that I only know from behavior and invariants observed in real code that it has no access to and that are only extremely indirectly implied by the spec. A lot of the things in there are novel and idiosyncratic designs, too.
100
Anselm Eickhoff @anselm.io · 02/06/2026
It is better than I am at “mentally simulating” the system based on nothing but the spec and correctly predicting extremely complex, nuanced interactions between features and systems. How do I know it’s correct and complete?
110
Anselm Eickhoff @anselm.io · 02/06/2026
I’ve found my personal reason to believe LLMs are intelligent: I’m (hand)writing a comprehensive spec for all of @jazz.tools and have Codex point out contradictions and gaps.
120