AJR
banner
andrewrepp.com
AJR
@andrewrepp.com
Database nerd. Working on Hyperdrive at Cloudflare. Formerly on the Greenplum Kernel Team.

Also LoL and MtG, because I am a cliche.
Reposted by AJR
A step-by-step guide to building a key-value database from scratch: www.nan.fyi/database - love the explainer/interactive animation in this
November 14, 2025 at 4:27 PM
Reposted by AJR
It is 1998. I am at the kitchen table writing Batman fanfic but I keep getting distracted by breaking news about a Bill Clinton sex scandal

It is 2025. I am at the kitchen table writing a canonical Bat-book but I keep getting distracted by breaking news about a Bill Clinton sex scandal
November 15, 2025 at 1:34 AM
Reposted by AJR
Hello, friends! After 10(!) years of #AdventOfCode, I've made some changes to preserve my sanity: there will be 12 days of puzzles each December (still starting Dec 1) and there is no longer a global leaderboard. Read more:
adventofcode.com/2025/about#f...
adventofcode.com/2025/about#f...
October 22, 2025 at 2:32 AM
Reposted by AJR
It's great to see things shifting back to the principles we were promoting through the mid 2000s while working on RSS, Atom, Activity Streams, and ironically OpenSocial. Those efforts ended up being short circuited by Twitter and Facebook competing to own the walled gardens. We've come full circle.
September 27, 2025 at 3:29 AM
Reposted by AJR
ME, IN TEARS: you can't just say every single part of a computer system is a file

UNIX, POINTING AT THE MOUSE: file
September 7, 2025 at 11:01 AM
Reposted by AJR
Regarding goroutine & unbuffered channel interaction, found myself repeating this multiple times. Maybe it's time to write it down for reference.

Early return + unbuffered send = goroutine leak.

rednafi.com/go/early_ret...

#golang
Early return and goroutine leak
At work, a common mistake I notice when reviewing candidates’ home assignments is how they wire goroutines to channels and then return early. The pattern usually looks like this: start a few goroutin...
rednafi.com
September 7, 2025 at 1:49 PM
Reposted by AJR
on type safety
June 14, 2025 at 2:42 PM
Reposted by AJR
America is beautiful, contradictory, unfinished. I am proud of our country even as we constantly strive to make it better, to protect and deepen our democracy, to fulfill its promise for each and every person who calls it home.

Happy Independence Day. No Kings in America.
July 4, 2025 at 4:14 PM
Reposted by AJR
Proposed incident metric: how often at least one person says "but this is impossible" when considering a theory that turns out to be true.
June 29, 2025 at 11:08 PM
Reposted by AJR
“no way to prevent this” says only programming language where this regularly happens
mofu.run sof @mofu.run · Jun 14
incident report is out and this one is actually painful
Google Cloud Service Health
status.cloud.google.com
June 14, 2025 at 2:48 PM
Reposted by AJR
Looks like the Google Cloud incident report is out: status.cloud.google.com/incidents/ow...

A June 12 policy update with unintentional blank fields triggered a crash loop in Service Control code that lacked proper error handling, causing binaries to fail globally.
Google Cloud Service Health
status.cloud.google.com
June 14, 2025 at 1:51 AM
Reposted by AJR
A SIGTERM is issued by the operating system; my process effortlessly dodge rolls it, then immediately executes a perfect parry against the MMU. Before it can recover, a null pointer has been loaded into EBX. The kernel groans at my shit.
June 6, 2025 at 1:36 PM
Reposted by AJR
[new blog post]

Analyzing Metastable Failures in Distributed Systems

muratbuffalo.blogspot.com/2025/06/anal...
Analyzing Metastable Failures in Distributed Systems
So it goes: your system is purring like a tiger, devouring requests, until, without warning, it slumps into existential dread. Not a crash. ...
muratbuffalo.blogspot.com
June 5, 2025 at 5:59 PM
Reposted by AJR
happy to finally announce it!

@cloudflare.social is now backing @pkg.pr.new's data infrastructure!

thank you so much everyone for supporting the tool and making this possible.
June 5, 2025 at 7:51 AM
This is the one timeline where there may be future history books with a chapter on Roganomics.
June 5, 2025 at 11:31 PM
Reposted by AJR
The agenda for Systems Distributed is out now!

Join us in Amsterdam for two days of talks, film references, and systems... distributed!

systemsdistributed.com/agenda
May 1, 2025 at 1:02 PM
Reposted by AJR
Sounds like a pretty good start to a cozy adventure. What do you think?

#indiegamedev #gamedev #gameaudio #videogamemusic
May 3, 2025 at 3:13 PM
Really interesting thread here. Stored procedures can move mountains, and there are definitely ways to make them feel nicer to use. But you're not going to have fun pitching them to your team.
Serious question:

Why do so many developers hate stored procedures?
April 30, 2025 at 10:45 AM
Reposted by AJR
New article out: "Cloudflare Durable Objects are Virtual Objects"🚀

This pops up a lot and is a mindset shift from the traditional way of thinking on "creating" and "destroying" resources, so I wrote a few thoughts how to think about it.

www.lambrospetrou.com/articles/dur...

#DurableObjects
Cloudflare Durable Objects are Virtual Objects | Lambros Petrou
How to think about Cloudflare Durable Objects as Virtual Objects and the mindset shift it brings.
www.lambrospetrou.com
April 27, 2025 at 4:18 PM
Reposted by AJR
Wow, that's an insanely cool website: animejs.com/
Anime.js | JavaScript Animation Engine
A fast and versatile JavaScript animation library
animejs.com
April 19, 2025 at 7:15 AM
Reposted by AJR
Ended up writing my own little summary of the leakpocalypse in Rust
For the unfamiliar, this was an event near the release of Rust 1.0 that centered the question of whether leaking memory is safe.

At the time, std::mem::forget was marked unsafe, but it turned out you could write flavors of it with safe code anyway.
April 16, 2025 at 9:38 PM
Reposted by AJR
New blog post on the mental model I've used when working through complex or confusing papers on transactional systems.
transactional.blog/b...
April 17, 2025 at 6:36 PM
I'm incredibly excited to announce that we're making Hyperdrive available on the Free Plan for Cloudflare Workers! To celebrate this, we put together a deep dive on how it all actually works under the hood. Come take a look, and give Hyperdrive a try!

blog.cloudflare.com/how-hyperdri...
Pools across the sea: how Hyperdrive speeds up access to databases and why we’re making it free
Hyperdrive, Cloudflare's global connection pooler, relies on some key innovations to make your database connections work. We go deep into the details of what that looks like, in celebration of announc...
blog.cloudflare.com
April 9, 2025 at 7:48 PM
Reposted by AJR
TIL in vim, "gx" opens the URL under your cursor in your default web browser! Also works with local file paths
March 15, 2025 at 11:02 AM