A Go-powered TUI email client

#​552 — April 30, 2025 Unsub  |  Web Version Go Weekly The Draft Go 1.25 Release Notes — We’re still about four months away from the final Go 1.25 release (expected in August) but, as always, the release notes are being worked on...

Getting nothing done: how to let go and rest your mind

You don't need a special place, or a special time, or even special clothes, to meditate. It's just letting the mind rest when it's not needed, and that's the case more often than you might think.

Announcing GoReleaser v2.9

This release introduces support to Python builds through Poetry and UV!

The glass box/opaque box unit testing argument in light of standards

Fallthrough #17 - Maintainers, Monetization, and Making The Time

Had an amazing chat with Matthew and Angelica about being a maintainer, monetization, making time, and GoReleaser

Differential Coverage for Debugging

Diffing code coverage for passing and failing runs can identify suspicious code blocks.

Rendering diffs for Go's testable examples

Today I've been doing an Open Source day on oapi-codegen - thanks to my employer Elastic, who gives me 4 hours a month that I can work on the project in-hours - and have been doing some work towards the OpenAPI validation middleware for net/http-compatible servers. One of the mai...

Don't Fear the Reaper

#​551 — April 23, 2025 Unsub  |  Web Version Go Weekly Cheating the Reaper in Go — How far can you push manual memory management in Go despite its garbage collector? Miguel peels back Go’s GC internals to craft a blazing-fast a...

Preventing accidental struct copies in Go

By default, Go copies values when you pass them around. But sometimes, that can be undesirable. For example, if you accidentally copy a mutex and multiple goroutines work on separate instances of the lock, they won’t be properly synchronized. In those cases, passing a point...

Preventing accidental struct copies in Go

By default, Go copies values when you pass them around. But sometimes, that can be undesirable. For example, if you accidentally copy a mutex and multiple goroutines work on separate instances of the lock, they won’t be properly synchronized. In those cases, passing a point...