This page is a supplement to| go.dev
In Go, we build packages - fundamental Lego-like blocks that we assemble in modules and use to build applications. That's why it's crucial we start designing packages by modelling their public APIs. Let's roll up our sleeves, sharpen the scalpel and start the second code surgery. This time, we focus on tests.| Jakub Jarosz
Better benchmark looping in Go 1.24.| go.dev
TL;DR ¶ Some of the wisdom contained in Josh Bloch’s Effective Java book is relevant to Go. panic and recover are best reserved for exceptional circumstances. Reliance on panic and recover can noticeably slow down execution, incurs heap allocations, and precludes inlining. Internal handling of failure cases via panic and recover is tolerable and sometimes beneficial. Abusing Java exceptions for control flow ¶ Even though my Java days are long gone and Go has been my language of predilecti...| jub0bs.com
SQLite claims to be one of the most popular pieces of software in the world, being integrated into every major operating system and browser. It...| tenthousandmeters.com
Let’s say you created a Go program that stores data in PostgreSQL — you installed PostgreSQL, wrote the Go code, and everything works; great! But after writing a test for your code, you wonder: how do you best provide PostgreSQL to your automated tests? Do you start a separate PostgreSQL in a Docker container, for example, or do you maybe reuse your development PostgreSQL instance?| Michael Stapelberg
Documentation| go.dev
How to add examples, which double as tests, to your packages.| go.dev
Simple Lists is a tiny to-do list web application written in Go, with old school server-side rendering and no JavaScript.| benhoyt.com