Fuzz tests in Go

Fuzz testing is Go’s clever way of generating new test inputs that you didn’t think of—and that may flush out some hidden bugs. Stand by for things to get a little fuzzy!

Twenty years of blogging

This blog has now been running for 20 years! Twenty years... a significant chunk of a human's adult life; while so many things in my life have changed since May 2003, the blog has remained a constant companion. This milestone inspired me to do some archaeology using the amazing W...

Writing Bubble Tea Tests

Learn how to use x/exp/teatest to write tests for your Bubble Tea apps.

FAAS in Go with WASM, WASI and Rust

This post is best described as a technology demonstration; it melds together web servers, plugins, WebAssembly, Go, Rust and ABIs. Here's what it shows: How to load WASM code with WASI in a Go environment and hook it up to a web server. How to implement web server plugins in …

Announcing GoReleaser v1.18 — the maintainers month release

May is the maintainers month, so I would first like to thank all the maintainers out there for the hard work, you rock!

Quick tip: A time-saving Makefile for your Go projects

Whenever I start a new Go project, one of the first things I do is create a Makefile in the root of my project directory. This Makefile serves two purposes. The first is to automate common admin tasks (like running tests, checking for vulnerabilities, pushing changes to a remo...

Serving the current directory over HTTP with Go

I've recently been updating a few lightweight static websites and have wanted to preview the changes locally. Although I usually reach for python -mhttp.server, it's a bit cumbersome to type, so I wanted something a little shorter. I was thinking of writing a script to make it qu...

Using open, pbcopy and pbpaste over SSH

Having your favorite commands available over SSH can be very convenient. I think I talked about this a couple of times before, but I usually work by SSH-ing from my mac into a Linux machine (a rather chunky one, might I add). While it allows me to work faster when I’m not...

The two types of C programmers (a provocative thesis)

WebAssembly Text code samples

This post talks about writing WebAssembly by hand (using its textual format), and mentions a new GitHub repository I've created with code samples. A bit of nomenclature first. WASM stands for WebAssembly - it has a binary format and a textual format. The textual format, called We...