Different approaches to HTTP routing in Go

Compares routing techniques in Go, including five custom approaches and three using third-party routing libraries.

Go filesystems and file embedding

A presentation of the Go draft designs for a filesystem interface and a standard way to embed files in a Go binary (LWN.net).

Kubernetes pod shutdown lifecycle

I always forget the details about Kubernetes pod shutdown lifecycle when I need them, so this is my now made public notes on the subject.

4 practical principles of high-quality database integration tests in Go

Did you ever hear about a project where changes were tested on customers you don’t like or countries that aren’t profitable? Or even worse: did you work on such a project? It’s not enough to say that it’s unfair and unprofessional. It’s also hard to...

Generics Part 01: Basic Syntax

Changes The draft is a living document which means these posts will need to change over time. This section documents when changes have taken place to this post. 21/08/20 : Moving forward with the generics design draft Series Index Generics Part 01: Basic Syntax Generics Part 02:...

Giving Rust Another Shot in 2020

Spanner's SQL support

Spanner is a distributed database Google initiated a while ago to build a highly available and highly consistent database for its own workloads. Spanner was initially built to be a key/value and was in a completely different shape than it is today and it had different goals. Sinc...

The sad, slow-motion death of Do Not Track

Talks about the valiant but almost-dead 10-year effort to prevent tracking with the Do Not Track header.

The Repository pattern in Go: a painless way to simplify your service logic

I’ve seen a lot of complicated code in my life. Pretty often, the reason for that complexity was application logic coupled with database logic. Keeping the logic of your application together with your database logic makes your application much more complex, harder to test,...

What's new in Lua 5.4

An overview of the new features in Lua 5.4 (LWN.net).