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...

Sparsely-gated Mixture Of Experts (MoE)

In transformer models, the attention block is typically followed by a feed forward layer (FF), which is a simple fully-connected NN with a hidden layer and nonlinearity. Here's the code for such a block that uses ReLU: def feed_forward_relu(x, W1, W2): """Feed-...

Learning Software Skills fast: what worked for us best in the last 15 years

Quick takeaways Focus on applying what you learn - reading books or watching videos isn’t enough without practice Build real projects that challenge you - trivial examples don’t expose you to the hidden complexities you’ll face in actual work Expect and embrace...

Some signal boosting for Go

#​550 — April 16, 2025 Unsub  |  Web Version 🥚 We're taking a little break for Easter but didn't want to take the entire week off, so we have a slimline issue for you today :-) Back to full speed next Wednesday!__Peter Cooper, your editor...

Scheduling In Go : Part II - Go Scheduler

This blogpost is the second installment in a three-part series exploring the mechanics and semantics of the Go scheduler. Despite being published in 2018, the content remains relevant today, as the Go scheduler’s design continues to influence the development of efficient a...

Go 1.24's "tool" directive

Go 1.24 added a new tool directive that makes it easier to manage your project’s tooling. I used to rely on Make targets to install and run tools like stringer, mockgen, and linters like gofumpt, goimports, staticcheck, and errcheck. Problem is, these installations were glo...

Series