What is in a String... In Go
Understanding how strings work in Go: memory management, immutability, and why every concatenation is an allocation, with practical patterns to fix it.
Software, stories, and the world they're built in.
Understanding how strings work in Go: memory management, immutability, and why every concatenation is an allocation, with practical patterns to fix it.
The story of how IPv4 exhaustion nearly broke the internet, the hacks that held it together (NAT, CIDR, address markets), and what three decades of IPv6 delays teach us about technical debt.
Redis is fast because it's simple: in-memory, single-threaded, and purpose-built. But its use cases are narrower than most engineers assume, and its durability tradeoffs are poorly understood.
Scaling your codebase is secondary to scaling your team's process. Five things your development workflow needs before your app ever needs to handle load.
Try-catch buries error handling at the bottom of your logic. Here's how to borrow Go's tuple-return pattern and handle errors right where they happen.
Seven hard-won lessons for first-time product builders: ship fast, resist feature requests, outsource ruthlessly. Technology scales a solution. It does not create one.
Before writing a single line of code, ask whether the solution is actually an app. The most dangerous instinct in software is reaching for code before thinking.