Go still supports building non-module programs with GOPATH

Reading List

This page is auto-generated from Github Actions workflow that runs every day at night and fetches the 5 latest articles from each of my favorite blogs.

Announcing GoReleaser v2.13

Happy thanksgiving - GoReleaser v2.13 is here!

Splintered failure modes in Go

A man with a watch knows what time it is. A man with two watches is never sure. — Segal’s Law Take this example: func validate(input string) (bool, error) { // Validation check 1 if input == "" { return false, nil } // Validation check 2...

Pointer pop quiz

Here’s a silly example extracted from real code. Does this program print true or false?

Becoming a Product Engineer: First Steps

Quick takeaways Developers are often kept in “golden cages” - treated as coding monkeys receiving tasks without understanding the broader context or product vision Requirements are usually incomplete or wrong - understanding the business context helps developers spot...

Dips and wiggles: Prometheus, Grafana, and Checkly

Here’s how to connect your Checkly metrics to Prometheus and Grafana and turn them into useful dashboards.

The current state of cryptography in Go

#​580 — November 26, 2025 Read the Web Version 📅 This is a rather early note, but Go Weekly will be moving to Fridays in January 2026, as part of a schedule reshuffle for most of our newsletters.__Your editor, Peter Cooper Go Weekly...

Notes on the WASM Basic C ABI

The WebAssembly/tool-conventions repository contains "Conventions supporting interoperability between tools working with WebAssembly". Of special interest, in contains the Basic C ABI - an ABI for representing C programs in WASM. This ABI is followed by compilers like C...

There's always going to be a way to not code error handling