Blog

The first 99,999 writes are free: Or, why lazy StringIO.write() may sprint into a memmove wall

Debugging a Python StringIO performance oddity for fun and practice.

Supporting GPU-accelerated Machine Learning with Kubernetes and Nix

It ain't what you don't know that gets you into trouble — well, sometimes it is.

ddiaflashcards.com - Flashcards for Designing Data Intensive Applications

Releasing a study deck for a much loved software textbook.

The Books I Read - 2021

The 38 books I read in our second COVID-19 year (with some reviews).

From Data Engineer to SysAdmin: Put down the K8s cluster, your pipelines can run without it

Big Data meets Big Container, and now no one is getting anything done.

What's in a name? The Data Scientist vs. Machine Learning Engineer title bore.

Why has data scientist fallen out of favour, with machine learning engineer being ascendant?

How can an ML model perform highly and poorly at the same time?

An instance of unhelpful term overloading in machine learning engineering.

A Basic Python Toolchain in Bazel

How to improve on the default auto-detecting Python toolchain shipped with Bazel.

Using Terraform to make my many side-projects 'pick up and play'

A post contending that Terraform is a no-brainer addition to your side-project development toolkit.

Bazel is taking over

On the Bazel build system's potential to become a category-killer.

The Bazel 'Elevator Pitch'

There's an elevator pitch for Bazel from early 2018 that I point people at and crib from so often that I thought it was well time I copied it out and put it online.

How To Ask For Help In Slack

The help-needer's and question-asker's checklist

Want to get blog posts over email?

Enter your email address and get notified when there's a new post!