Summary of reading: July - September 2023

"Ordinary Wolves" by Seth Kantner - a fictional account about coming of age as a subsistence hunter and fur trader in remote Alaska wilderness in the 1970s and 80s. Since I've read "A thousand trails home" already, the plot is very familiar - the author proje...

How (not) to apply for a software job

Advice for how to (and how not to) apply for a software engineering job, particularly for the written parts of the interview process. As a bonus, some tips for your resume/CV.

Deconstructing Type Parameters

Why the function signatures in the slices packages are so complicated.

Fixing Go's for loops, for real

#​477 — September 26, 2023 Unsub  |  Web Version Go Weekly Organizing a Go Module — It’s common for Go developers to think about how to organize the files and directories in projects (some of our most popular links have been on t...

Watermill 1.3 released, an open-source event-driven Go library

Hey, it’s been a long time! We’re happy to share that Watermill v1.3 is now out! What is Watermill Watermill is an open-source library for building message-driven or event-driven applications the easy way in Go. Our definition of “easy” is as easy as build...

Changing GNU Emacs Lisp functions through <code>advice-add</code>, not brute force

Announcing GoReleaser v1.21 — mostly bug fixes

A boring release, mostly bug fixes. Boring is good. Highlights You can now sort tags by semver in GoReleaser Pro Docker pushes will now be retried when the registry yields a 503. It&rsquo;ll retry 10 times. Winget: added support for package_dependencies and update schema versio...

Implementing Enumerations In Go

Introduction Prior to coding in Go, I was writing software in C#. In C# enumerations can be declared and the associated type can be used in functions and as fields in a struct. The compiler won’t allow a value of the enumerated type to be passed or set that doesn’t belong to...

XML is better than YAML. Hear me out…

They turned my unpopular opinion from Go Time 289 into a standalone blog post. Check it out!

Gotchas with pointing Go modules to a fork, when building an installable module

This morning I cut a release of dependency-management-data which ended up horribly breaking all consumers of the application. As I flagged in the tracking issue for this, trying to install the CLI would lead to the following error: $ go install dmd.tanna.dev/cmd/dmd@latest go: dm...