How To Set Up Subcommands Without a CLI Command Package in 2 Steps Sep 01, 2024Which CLI command package to choose? Postpone this decision and use a build tool instead
Magic, or the lack thereof Aug 25, 2024Go is a non-magical language. The term 'non-magical' deserves a closer look.
It's time to switch! 5 ways of using the switch statement Aug 18, 2024Go's `switch` statement is more flexible that you might know.
4 tools for generating REST APIs Aug 09, 2024Generate Go code from an OpenAPI spec, or vice versa? You decide. These tools help you go both ways.
Removal Of Response Headers For Errors Can Break On-The-Fly Encoding in Go 1.23 Aug 04, 2024In Go 1.23, ServeContent, ServeFile, and ServeFileFS remove the Content-Encoding header, affecting middleware that applies on-the-fly encoding.
Range-Over-Func In A Nutshell Jul 28, 2024The new iterator functions in Go 1.23 replace an unwieldy loop construct with the familiar range syntax. Here is how.
6 repos that help you get better in Go Jul 07, 2024What's better than learning by inspecting real code? These repositories can help you transition from 'I know Go' to 'I understand how to use Go'.
Concurrency and pointers Jul 05, 2024Passing values through channels is fine, but beware of passing (hidden) pointers between goroutines.
Don't check in go.work Jun 27, 2024The go.work file manages local redirects of remote modules. It's specific to your machine, so don't add it to the repository.
How to Rename a Public Module in Go Jun 21, 2024Renaming a public module breaks all client code. Give your clients time to move over.