Reading List
This page is auto-generated from Github Actions workflow that runs every day at night and fetches the 5 latest articles from each of my favorite blogs.
This page is auto-generated from Github Actions workflow that runs every day at night and fetches the 5 latest articles from each of my favorite blogs.
Introduction LLM are great, but they are trained on public data sets. In some cases, you need the LLM to use data that’s not publicly available or that’s frequently changing. There are several ways to make such data available to LLMs: Tool/function calls Retrieval-au...
How to wrap a generated gRPC client behind a clean Go API so users never have to touch protobuf types or connection management directly.
#593 — March 13, 2026 Read the Web Version Go Weekly How Go’s Inliner and go fix Can Rewrite Your Code Automatically — Go 1.26’s smarter go fix supports a new //go:fix inline directive where package authors can annotate deprecat...
You don’t need many tools to write Rust—just a decent editor, and maybe an AI assistant or two. Here’s my Rust dev setup in 2026.
How Go 1.26's source-level inliner works, and how it can help you with self-service API migrations.
In the previous article we explored how Go’s memory allocator manages heap memory — grabbing large arenas from the OS, dividing them into spans and size classes, and using a three-level hierarchy (mcache, mcentral, mheap) to make most allocations lock-free. A key detail...
Exploring the tradeoffs between wrapping errors at every return site versus wrapping only at boundaries, with no definitive answer - just honest tradeoffs for the kind of software I write.