When I reimplement one of my programs, I often wind up polishing it too
#500 — March 19, 2024 Unsub | Web Version Go Weekly More Powerful Go Execution Traces — Over the last two releases, the Go team has worked to fix and enhance execution tracing, resulting in a 10x drop in overhead and much more s...
New features and improvements to execution traces from the last year.
Introduction Looping seems like a basic topic: Write a for loop with a termination condition, and you’re done. However there’s a lot of ways you can write a for loop in Go. Knowing more about the different versions of for will help you choose the best option to accomp...
#499 — March 12, 2024 Unsub | Web Version Go Weekly High-Speed Packet Transmission in Go: From net.Dial to AF_XDP — How can you send as many packets per second as possible from a Linux machine using Go? Andree wanted to find ou...
Now that generics have come to Go, let's take a look at the new syntax for type parameters. We’ll find out why we need type parameters, how we write them, and how we can use them to create generic functions in Go.
Generics what now? This friendly, down-to-earth tutorial series explains how Go’s generic functions and types work, why we need them, and where we can use them.
In a previous post I've described how - thanks to standardized tooling - we could use a locally-running Gemma model from a Go program within hours from its public release. This post dives into the internals of Ollama - a popular and extremely convenient open-source Go project tha...
Ever since Rob Pike published the text on the functional options pattern1, there’s been no shortage of blogs, talks, or comments on how it improves or obfuscates configuration ergonomics. While the necessity of such a pattern is quite evident in a language that lacks defaul...