Comparing interface values in Go has caught me off guard a few times, especially with nils.
Often, I’d expect a comparison to evaluate to true but got false instead.
Many moons ago, Russ Cox wrote a fantastic blog post on interface internals that clarified
my confusion. Thi...
Comparing interface values in Go has caught me off guard a few times, especially with nils.
Often, I’d expect a comparison to evaluate to true but got false instead.
Many moons ago, Russ Cox wrote a fantastic blog post on interface internals that clarified
my confusion. Thi...
Debug tricky nil comparisons in Go interfaces. Understand dynamic types, type assertions, and use reflect for generic nil checking.
Earlier this year, I was invited to join the wonderful Fallthrough podcast to talk about APIs, which would be my first appearance on Fallthrough.
As noted in I'm on Fallthrough: Patching Problems with Persnickety Proxies Purveyed by Paternalistic Princes, the episode on APIs was...
A new release of the Microsoft build of Go including security fixes is now available for download.
The post Go 1.24.1-1 and 1.23.7-1 Microsoft builds now available appeared first on Microsoft for Go Developers.
Middleware is usually the go-to pattern in Go HTTP servers for tweaking request behavior.
Typically, you wrap your base handler with layers of middleware—one might log every request,
while another intercepts specific routes like /special to serve a custom response.
However, I o...
Weak pointers and better finalization in Go 1.24.
Middleware is usually the go-to pattern in Go HTTP servers for tweaking request behavior.
Typically, you wrap your base handler with layers of middleware—one might log every request,
while another intercepts specific routes like /special to serve a custom response.
However, I o...
Compare middleware stacking with embedded delegation in Go HTTP servers. Learn when to override ServeHTTP for simpler request handling.
Quick Takeaways
High-quality code is mainly about keeping good iteration speed over time - can you add features without breaking what works?
Not all code needs to be high quality - focus your efforts on the code that’s most important, changes often, or creates the most val...