Welcome!

This blog is a depth-first search into networking, programming, random tech topics.

I like to combine code and data in unique ways as I figure out how this world works. I've been interested in go, internet infrastructure, gRPC and using network protocols/APIs for things you shouldn't.

I'm Kevin McDonald. I am a backend software engineer from Texas, living and working in Copenhagen, Denmark. Let's learn together.

You can find me as sudorandom on most platforms. Get updated on new posts by following me on Mastodon or with RSS.

  Major Projects

protoc-gen-connect-openapi

A protoc plugin that generates OpenAPI 3 definitions from Connect and gRPC service definitions, enabling seamless integration with OpenAPI-based tools.

fauxrpc

A tool that generates fake gRPC and Connect servers based on your Protobuf definitions. It produces realistic, randomized data that adheres to your service's constraints.

Internet Map

An interactive visualization of global internet infrastructure, including submarine fiber-optic cables, internet exchange points, and regional bandwidth data.

  Latest Posts

HTTP/2 From Scratch: Part 4

HTTP/2 From Scratch: Part 4

More HPACK and using http.Request and http.Response
IRC Log: rm -rf /var/opt/gitlab/postgresql/data

IRC Log: rm -rf /var/opt/gitlab/postgresql/data

A tired sysadmin accidentally deletes the production database and discovers that all five backup mechanisms have failed.
HTTP/2 From Scratch: Part 3

HTTP/2 From Scratch: Part 3

Decoding HPACK and the evolution of the HTTP header
Building a Live BGP Map

Building a Live BGP Map

Building a cool looking, real-time BGP map
HTTP/2 From Scratch: Part 2

HTTP/2 From Scratch: Part 2

Diving into the binary framing layer and byte-shifting in Go

 Featured Posts

Building a Live BGP Map

Building a Live BGP Map

Building a cool looking, real-time BGP map
Visualizing the Internet (2026)

Visualizing the Internet (2026)

Mapping global Internet infrastructure and routing dominance over time
HTTP/0.9 From Scratch

Series: HTTP From Scratch

Building the foundation with HTTP/0.9