Inspecting the Source of Go Modules
Explains the security of Go's Checksum Database and the risks of viewing unverified source code on platforms like GitHub, with tools to verify module integrity.
Explains the security of Go's Checksum Database and the risks of viewing unverified source code on platforms like GitHub, with tools to verify module integrity.
Clarifies that go.sum is a checksum cache, not a lockfile, and explains why go.mod is the true source for dependency versions in Go.
A guide on installing and managing multiple versions of the Go programming language for different projects using the Go downloader and direnv.
A practical guide to structuring Go projects, advocating for simplicity over rigid conventions and explaining when to use or avoid common directory patterns.
Critique of proxy.golang.org's permanent caching, which hides broken dependencies and creates hidden risks in the Go ecosystem.
An update on the godocs.io fork of godoc.org, detailing improvements made over six months to support the Go community.
Explains how to validate Go module paths using the golang.org/x/mod/ package's CheckPath function.
A guide to organizing Go code by splitting functions into separate source files and building a standalone binary executable.
A tutorial on creating and loading plugins in Go, demonstrating a driver program that chains two plugins to process data.
Explains how to use Go's internal/ directory to create private packages, reducing a project's public API surface and improving design.
A guide on using Go modules to manage and version development tools for Go projects, ensuring consistency across teams and CI/CD pipelines.
A tutorial on using the Elasticsearch 7.0 Go client with Docker to set up a development cluster and build a web API.
A developer explains how Go 1.11's module system solved their biggest frustration (GOPATH), leading them to appreciate Go's simplicity, concurrency, and stability.