Understanding Go Error Types: Pointer vs. Value| Fillmore Labs Blog
File parsers in Go contain unexpected behaviors that can lead to serious security vulnerabilities. This post examines how JSON, XML, and YAML parsers in Go handle edge cases in ways that have repeatedly resulted in high-impact security issues in production systems. We explore three real-world attack scenarios: marshaling/unmarshaling unexpected data, exploiting parser differentials, and leveraging data format confusion. Through examples, we demonstrate how attackers can bypass authentication,...| The Trail of Bits Blog
Ardan Labs is trusted by small startups and Fortune 500 companies to train their engineers and develop business software solutions and applications.| www.ardanlabs.com
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
Ardan Labs is trusted by small startups and Fortune 500 companies to train their engineers and develop business software solutions and applications.| www.ardanlabs.com
« blog2025-02-01| lukasschwab.me
Using Go’s DisallowUnknownFields option to improve an API’s integration experience by making paramter naming mistakes faster to resolve.| brandur.org
What is the point of using pointers to slices? This article discusses when it's a good idea to use pointers to slices.| www.willem.dev
Learn how to change the default JSON format of time.Time values in Go.| www.willem.dev
How I switched hosting my Go-based side projects from Amazon EC2 to Fly.io, significantly simplified deployment, and saved a bit of cash while I was at it.| benhoyt.com
A tutorial about WebAssembly and how to cross compile and run Go programs in the browser using WebAssembly.| golangbot
An introduction to Go errors.| go.dev
My re-implementation of the code from the official Go tutorial 'Developing a RESTful API with Go and Gin', using only the standard library, adding tests, and fixing issues.| benhoyt.com