Blog Archive
Other
- March 2026 — Running: A Metaphor for Life
- February 2026 — Optimizing a Kernel from 147,734 to 2,333 Cycles: A Learning Journey
- December 2025 — Understanding Database Transactions and Isolation Levels
- November 2025 — When Pub/Sub Is Not Enough: Thoughts on the Databricks Paper, Using Kafka as a Foil
- November 2025 — How Does Kafka Scale for Log Processing?
- November 2025 — Cloudflare Outage 2025-11-18
- December 2024 — Performance Comparison: Tokio vs Tokio-Uring for High-Throughput Web Servers
- October 2024 — Notes from Crafting Interpreters - Chapter 2 (A Map of the Territory)
- August 2024 — Memory layout of a Rust program
merkle-trees
dynamodb
consistency
replication
innodb
buffer-pool
lru
mysql
caching
performance
code-review
pull-requests
software-quality
engineering-practices
claude
c-compiler
gcc
ai-generated-code
assembly
optimization
claude-code
ai-assisted-development
developer-workflow
gc
java
- April 2026 — Java Virtual Threads: The Pinning Problem, the Deadlock, and the Fix in Java 24
- April 2026 — Garbage Collection: From First Principles to Modern Collectors in Java, Go and Python