GNU Style Flags—Almost Jun 14, 2024To have GNU-style short and long flags, you don't have to reach out to third-party packages. Go's flag package can handle double-dash, long-name flags.
Property Testing: Beyond Matching Input-Output Pairs Dec 01, 2024How to test properties of a function call that hold true for any input
Just Make a Task (Make vs. Taskfile vs. Just) Nov 28, 2024Make, Taskfile, Just, or something else? How build tools manage dependencies to avoid unnecessary work.
When (not) to call package-level APIs Nov 21, 2024Package level APIs are convenient, but they aren't concurrency safe. Here is how and when to use them.
Conventions in Go (a refresher) Nov 12, 2024Good conventions make reading, sharing, and talking about code much easier.
Developing Software With First Principles Thinking Nov 05, 2024Learning how the world works keeps you from having to blindly
MethodByName Inflates Your Binary Size Oct 25, 2024Four methods in Go's reflect package can block dead code elimination and thus increase binary size.
CUE: Your next configuration languaage? Sep 22, 2024Standard configuration languages lack type safety and verifiability. CUE is a validation language that is perfect for replacing YAML or JSON.
How to break up circular dependencies Sep 15, 2024Import dependencies in Go must contain no circles. Here is how to get rid of them