Go 1.24's "tool" directive
Pin tool versions in Go 1.24 with the new 'tool' directive. Replace tools.go pattern with native go.mod support for project tooling.
Pin tool versions in Go 1.24 with the new 'tool' directive. Replace tools.go pattern with native go.mod support for project tooling.
Cross-entropy is widely used in modern ML to compute the loss for classification tasks. This post is a brief overview of the math behind it and a related concept called Kullback-Leibler (KL) divergence. Information content of a single random event We'll start with a single event...
How do cryptocurrencies actually work, though? Join Alice and Bob as they embark on designing a new digital ledger for secure “Bobcoin” transactions.
Ideally, every function that writes to the stdout probably should ask for a io.Writer and write to it instead. However, it’s common to encounter functions like this: func frobnicate() { fmt.Println("do something") } This would be easier to test if frobnicate wou...
Ideally, every function that writes to the stdout probably should ask for a io.Writer and write to it instead. However, it’s common to encounter functions like this: func frobnicate() { fmt.Println("do something") } This would be easier to test if frobnicate wou...
Test functions that write to stdout/stderr in Go by capturing output with os.Pipe. Learn patterns to avoid deadlocks in concurrent tests.
As mentioned in Using Renovate to manage updates to golangci-lint versions I very much recommend using Renovate to update your golangci-lint versions. With the release of golangci-lint v2 a couple of weeks ago, consumers need to perform a one-time migration of their configuration...
#549 — April 9, 2025 Unsub | Web Version Go Weekly Faster Shuffling in Go with Batching — Put down that deck of cards.. ‘shuffling’ here refers to moving the contents of an array about. It is based on expensive random inte...
A couple of weeks ago, I joined the lovely Kris Brandow and Ian Wester-Lopshire on the Fallthrough podcast to talk some more about API design. As I mentioned in I'm on Fallthrough: An Exploration of APIs, Versioning, & HTTP this was a planned follow-up, as we didn't quite cha...