Building static binaries with Go on Linux
https://eli.thegreenplace.net/2024/building-static-binaries-with-go-on-linux
https://eli.thegreenplace.net/2024/building-static-binaries-with-go-on-linux
How to package Go applications in RHEL 10
https://developers.redhat.com/articles/2024/12/10/how-package-go-applications-rhel-10
https://developers.redhat.com/articles/2024/12/10/how-package-go-applications-rhel-10
Go 1.25 interactive tour
https://antonz.org/go-1-25
Go 1.25 is scheduled for release in August, so it's a good time to explore what's new. The official release notes are pretty dry, so I prepared an interactive version with lots of examples showing what has changed and what the new behavior is.
https://antonz.org/go-1-25
Finding performance problems by diffing two Go profiles
https://www.dolthub.com/blog/2025-06-20-go-pprof-diffing
https://www.dolthub.com/blog/2025-06-20-go-pprof-diffing
Counter Service: How we rewrote it in Rust
https://engineering.grab.com/counter-service-how-we-rewrote-it-in-rust
The Integrity Data Platform (IDP) team decided to rewrite one of our heavy Queries Per Second (QPS) Golang microservices in Rust. It resulted in 70% infrastructure savings at a similar performance, but was not without its pitfalls. This article will elaborate on:
- How we picked what to rewrite in Rust.
- Approach taken to tackle the rewrite.
- The pitfalls and speed bumps along the way.
- Was it worthwhile?
https://engineering.grab.com/counter-service-how-we-rewrote-it-in-rust
Comparing Rust, JavaScript and Go for authoring WASM Components
https://obeli.sk/blog/comparing-rust-javascript-and-go-for-authoring-wasm-components/
https://obeli.sk/blog/comparing-rust-javascript-and-go-for-authoring-wasm-components/
Don't mock the database: Data fixtures are parallel safe, and plenty fast
https://www.crunchydata.com/blog/dont-mock-the-database-data-fixtures-are-parallel-safe-and-plenty-fast
https://www.crunchydata.com/blog/dont-mock-the-database-data-fixtures-are-parallel-safe-and-plenty-fast
Comparing gzip, brotli and zstd compression in Go
https://blog.kowalczyk.info/a-5hum/compressing-for-the-browser-in-go.html
https://blog.kowalczyk.info/a-5hum/compressing-for-the-browser-in-go.html
fang
https://github.com/charmbracelet/fang
The CLI starter kit. A small, experimental library for batteries-included Cobra applications.
https://github.com/charmbracelet/fang
unregistry
https://github.com/psviderski/unregistry
Push docker images directly to remote servers without an external registry
https://github.com/psviderski/unregistry
makefile-graph
https://github.com/dnaeon/makefile-graph
makefile-graph is a Go module and CLI application, which parses GNU Make's internal database and generates a graph representing the relationships between the discovered Makefile targets.
https://github.com/dnaeon/makefile-graph
lazycontainer
https://github.com/andreybleme/lazycontainer
A terminal UI to manage Apple Containers without stress. Written in Go with Bubbletea
https://github.com/andreybleme/lazycontainer
Generic interfaces
https://go.dev/blog/generic-interfaces
There is an idea that is not obvious until you hear about it for the first time: as interfaces are types themselves, they too can have type parameters. This idea proves to be surprisingly powerful when it comes to expressing constraints on generic functions and types. In this post, we’ll demonstrate it, by discussing the use of interfaces with type parameters in a couple of common scenarios.
https://go.dev/blog/generic-interfaces
Graceful Goroutine Shutdowns in Go: A Practical Guide
https://dev.to/jones_charles_ad50858dbc0/graceful-goroutine-shutdowns-in-go-a-practical-guide-2b9a
https://dev.to/jones_charles_ad50858dbc0/graceful-goroutine-shutdowns-in-go-a-practical-guide-2b9a
marchat
https://github.com/Cod-e-Codes/marchat
Terminal-based group chat app with real-time WebSocket messaging, file sharing, themes, and admin tools — built with Go and Bubble Tea.
https://github.com/Cod-e-Codes/marchat
How Go 1.24's Swiss Tables saved us hundreds of gigabytes
https://www.datadoghq.com/blog/engineering/go-swiss-tables
https://www.datadoghq.com/blog/engineering/go-swiss-tables
Trace Go Apps Using Runtime Tracing and OpenTelemetry
https://last9.io/blog/trace-go-apps-using-runtime-tracing-and-opentelemetry
https://last9.io/blog/trace-go-apps-using-runtime-tracing-and-opentelemetry
Designing a composable rate limiter
https://clipperhouse.com/composable-rate-limiter/
Having used rate limiters a few times, I’ve observed that they must be thoughtfully designed. In particular, they are typically comprised of several policies which we wish to stack on one another. It can get messy.
So I decided to design a rate limiter that emphasizes composability, which I define as having the right primitives, where one can express arbitrary policies, and which can be combined in a way that is easy to reason about.
https://clipperhouse.com/composable-rate-limiter/