I'm @brandur, an occasional writer, and engineer on Crunchy Bridge, previously Stripe and Heroku.

I most often talk about web APIs, Postgres, Rust, software safety and resilience, efficient human interfaces, and running.


  • River: a Fast, Robust Job Queue for Go + Postgres

    Introducing River, a Postgres-based job queue designed for resilience and correctness through strong transactional guarantees. November 20, 2023

  • On Using Go's `t.Parallel()`

    How and why we started annotating all our Go tests with t.Parallel(), and why you might want to consider doing so too. August 26, 2023

  • Soft Deletion Probably Isn't Worth It

    The traditional soft deletion pattern using deleted_at columns leaks into code, curbs the usefulness of foreign keys, and makes data removal difficult. Luckily, there’s an alternative. July 19, 2022

Older articles available here.


  • The peanut gallery

    On the use of words like “simple”, “elegant”, and “elegant” in the sense of software. October 14, 2023

Older fragments available here.