Martin Kleppmann
@martin.kleppmann.com
29K followers 420 following 780 posts
Associate Professor at @cst.cam.ac.uk, researching decentralised systems and security protocols. Advisor to the Bluesky team. Wrote “Designing Data-Intensive Applications” (O’Reilly). he/him
Posts Media Videos Starter Packs
Reposted by Martin Kleppmann
simonwillison.net
Vibe coding is irresponsibly building software through dice rolls, not caring what code is produced

What about when engineers at the top of their game use AI tools responsibly to accelerate their work?

I propose "vibe engineering"!

simonwillison.net/2025/Oct/7/v...
Vibe engineering
I feel like vibe coding is pretty well established now as covering the fast, loose and irresponsible way of building software with AI—entirely prompt-driven, and with no attention paid to …
simonwillison.net
Reposted by Martin Kleppmann
syncconf.bsky.social
It was agonizing to choose from among the 34 excellent submissions, but here are the four talks selected from our CFP process!
Reposted by Martin Kleppmann
jakelazaroff.com
put another way: i don't want your data—not just from an ideological "users should be in control" perspective, but from a pragmatic "this makes my app harder and more expensive to run" perspective

we've been so focused on making it easy to scale up that we've accidentally made it hard to scale down
jakelazaroff.com
i like making little web apps for myself/family/friends. the most annoying parts — the parts that drastically increase the scope, from "a bunch of HTML, CSS & JS files" to "a web server and database" — are auth+persistence. so i am very excited about atproto including a user-owned solution for both.
Reposted by Martin Kleppmann
jimmybernot.bsky.social
This is my 1st time catching my pet archer fish, Legolas, spitting on camera. Archerfish use modified jaw and tongue bones to fire a jet of water to knock down bugs from over hanging vegetation. Here Legolas is shooting down a fruit fly 🪰 🐠🧪
martin.kleppmann.com
Glad you liked it! As the book is mostly focussed on general concepts than the specifics of particular systems, the Postgres update doesn’t really make a big difference to the book (also, we don’t go into that much depth regarding I/O).
Reposted by Martin Kleppmann
skiles.blue
Imagine the hubris required to burst into the largest socio-technical system on earth and just start yanking out wires, thinking you are genius. Mass-emailing insulting messages and thinking people will welcome your help. Destroying careers, killing kids in Africa, and thinking you're the hero.
martin.kleppmann.com
Just learnt that “syzygy” is a real English word
Reposted by Martin Kleppmann
pvh.ca
pvh @pvh.ca · 16d
It's pretty cool that Ink & Switch is contributing to this big ARIA programme now. We get two big things out of it: funding (obviously) but also a community of fascinating creators and problems to connect with. I'm learning all about the UK power grid this week.
www.inkandswitch.com/newsletter/d...
ARIA Safeguarded AI Programme, new faces, and a splattering of ink lab notes
Peter, our lab director, will announce a major new initiative. You’ll hear about two researchers who have recently joined our staff. Finally, we’ve got a collection of lab notes about Programmable Ink...
www.inkandswitch.com
martin.kleppmann.com
You can probably swap half way through, as the high-level structure hasn’t changed hugely. Chapter numbering has changed and we moved a few sections around, but you should be able to match up 1st and 2nd editions easily enough.
martin.kleppmann.com
I’m still confused. Every computational device, server or not, has some local memory. Regarding “decentralised reference”, the easiest would be using DNS to reference the server, but whether you consider that decentralised or not is a matter of definitions. It’s independent from local memory anyway.
martin.kleppmann.com
I don’t understand — what do you mean with dedicated memory? You can run a PDS on just about anything: a cheap cloud VM, a raspberry pi, …
Reposted by Martin Kleppmann
samhenri.gold
Did you know your MacBook has a sensor that knows the exact angle of the screen hinge?

It’s not exposed as a public API, but I figured out a way to read it and make it sound like an old wooden door.
Reposted by Martin Kleppmann
gotocon.com
☁️ Beyond the cloud = local-first software.

On today’s #GOTOpodcast, @expede.wtf & @julianwood.com dive into apps that run on your device, sync seamlessly, stay private & empower devs.

🎧 gotopia.tech/podcast
martin.kleppmann.com
Agree it’s not a binary “declarative or not”. I think the point is more that what’s considered declarative is often a matter of “vibes”, when in fact a fairly precise definition is possible.
martin.kleppmann.com
Isn’t that comparing apples and oranges? I thought XPath is a way of querying data stored in XML form, whereas Jamie wants a way of querying data stored in relational form, while exposing it as JSON in the response.
martin.kleppmann.com
I wouldn't over-index on the specifics of IMDB; it's just an example. My impression is that it's pretty common to want a hierachical view onto some data while keeping the underlying representation normalised (relational or graph-shaped). That's essentially what GraphQL is, after all.
martin.kleppmann.com
I've long thought there wasn't a good definition of what makes a language "declarative". But then I stumbled across this 12-year-old blog post by my colleague Neel Krishnaswami, who has a surprisingly elegant and useful definition semantic-domain.blogspot.com/2013/07/what...
What Declarative Languages Are
On his blog, Bob Harper asks what, if anything, a declarative language is . He notes that "declarative" is often used to mean "logic or func...
semantic-domain.blogspot.com
martin.kleppmann.com
Returning JSON from SQL queries, by Jamie Brandon. The syntax is bad but I guess it works www.scattered-thoughts.net/writing/sql-...
SQL needed structure
www.scattered-thoughts.net