Blog

Thoughts on development, design decisions, experiments, and product thinking.

08May 10, 20265 min read

Why Your "Memory-Safe" Language Is Still Lying to You

We told ourselves that switching to Rust or Go would end memory corruption. We rewrote the critical paths, celebrated on Twitter, and moved on. But I've spent the last year looking at post-incident reports and CVEs, and what I found was uncomfortable: memory safety is a spectrum, not a binary, and most developers have no idea where their code actually sits on it.

memory safetysecurityRustC++vulnerabilitiessystems programmingexploitationsoftware engineeringdebuggingcompilers
011May 10, 20265 min read

Why Your CPU's Memory Model Is Secretly Destroying Performance

Most engineers write concurrent code as if memory writes simply... happen. They're wrong. I've spent years debugging subtle correctness bugs and bizarre performance cliff edges caused by one thing: the gap between what your code looks like it does and what your CPU actually does. Let me show you what's really happening inside that black box.

CPU architecturememory modelconcurrencyperformancelow-level systemsmemory orderinglock-free programmingcache coherency