[ SECURITYLAB_—_BLOGS ]

Long-form writing on runtime, distributed systems, kernel internals, Go concurrency, memory models, eBPF, and assembly walkthroughs.

Blog
Go Profiling in Anger: pprof, Escape Analysis, and Inlining Without Magic

Go Profiling in Anger: pprof, Escape Analysis, and Inlining Without Magic

Most performance advice for Go is ritual — 'use sync.Pool,' 'avoid interface boxing,' 'preallocate slices.' Useful sometimes, hollow often. A production engineer's guide to profiling Go systems with pprof, reading escape analysis output, and understanding when the compiler actually inlines.

2026-03-12 8 min read
Blog
NATS vs Kafka vs MQTT: Same Category, Very Different Jobs

NATS vs Kafka vs MQTT: Same Category, Very Different Jobs

All three are 'messaging systems.' None of them is interchangeable with the others. A practical breakdown of NATS, Kafka, and MQTT — by the actual design axes that determine which one breaks when you misuse it.

2026-02-24 9 min read
Blog
Scale-Up vs Scale-Out: Why Every Language Wins Somewhere

Scale-Up vs Scale-Out: Why Every Language Wins Somewhere

The 'which language is fastest' benchmark wars miss the real question. Rust, Go, Java, and Python aren't competing on the same axis. They're tuned for different scaling strategies — and picking the wrong one costs you years.

2026-02-20 9 min read
Blog
Testing Real-World Go Backends Isn't What Many People Think

Testing Real-World Go Backends Isn't What Many People Think

The unit-vs-integration framing is a junior lens. Production Go backends need a different taxonomy: deterministic tests, contract tests, race tests, and fidelity tests. The ones that actually catch production bugs.

2026-02-18 10 min read