The Unified IR Format

In the previous post , we explored how the Go compiler’s type checker analyzes your code. We saw how it resolves identifiers, checks type compatibility, and ensures your program is semantically correct. Now that we have a fully type-checked AST, the next logical step would...

Go still supports building non-module programs with GOPATH

Announcing GoReleaser v2.13

Happy thanksgiving - GoReleaser v2.13 is here!

Splintered failure modes in Go

Simplify Go error handling by consolidating validation and system errors. Learn when to return boolean vs error for clearer failure modes.

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