Tip of the day #5: Install Go tools with a specific version
A developer shares a solution for installing Go tools with a specific version to resolve a staticcheck version mismatch error.
A developer shares a solution for installing Go tools with a specific version to resolve a staticcheck version mismatch error.
A developer shares solutions to common pain points and limitations encountered when using CGO, Go's FFI mechanism, to interface with C and Rust libraries.
Argues that minimal standard libraries in languages like Rust and JavaScript lead to an explosion of transitive dependencies, harming maintainability.
Explores using Go 1.23's new iterators and coroutines to optimize in-process gRPC communication for efficiency and transparency.
Learn a simple Go testing pattern using 'if got, want :=' for cleaner, more readable tests and table-driven test examples.
A guide to building multi-architecture Docker images using Chainguard Images, covering QEMU emulation, cross-compilation, and native runners.
A guide to deploying and managing simple Go web services on NixOS, highlighting benefits over Ansible and Docker for personal projects.
A guide to using the Porcupine library to check for linearizability in distributed systems like registers and key-value stores, implemented in Go.
The author details their journey to reduce memory usage in their 'Mess With DNS' service by optimizing how IP address lookup data is stored.
A practical guide to structuring Go projects, advocating for simplicity over rigid conventions and explaining when to use or avoid common directory patterns.
A guide to using the benchstat tool for advanced Go benchmark analysis, including projections and comparisons across code versions.
A guide to building a simple, serverless ACID database inspired by Delta Lake using Go, focusing on atomic PutIfAbsent for concurrency control.
A developer shares notes on Go 1.22's improved built-in router and using sqlc to generate database code, based on personal project experience.
A guide to common pitfalls and best practices when generating Kubernetes Custom Resource Definitions (CRDs) using controller-gen.
A guide to setting up VSCode for debugging the AzureRM Terraform provider using Go and delve.
Exploring what kind of application can be built using only the Go programming language's standard library, without external dependencies.
A Go programmer shares lessons learned from debugging a struct copying issue and recommends the '100 Go Mistakes' resource.
A guide to creating a custom formatter for the Gomega assertion library in Go to improve error output, specifically for github.com/pkg/errors stack traces.
A technical guide on building a Retrieval-Augmented Generation (RAG) system in Go to query PostgreSQL tabular data using Google's Gemini LLM.
Explains how to create smaller, more secure container images for Go applications using minimal base images like Chainguard Images to reduce size and eliminate CVEs.