The Curious Engineer

All blogs / Performance / optimization

Musings on computer systems

buttondown.com/nelhage

This is my occasional newsletter, for my thoughts and explanations on assorted topics in software engineering and computer systems. It also receives notifications about new blog posts from my blog. Content clusters around my areas of expertise and interest in computer systems engineering, including

Performance / optimizationTesting / QASoftware / engineering practiceCPU / microarchitecture

Posts
36 from 15 Oct 2020 to 21 Apr 2025
Posting
now and then (2 in the last year)
Kind
personal blog
Feed
https://buttondown.com/nelhage/rss

2025 1

  1. What is the purpose of POSIWID?

2024 2

  1. New blog post: Finding near-duplicates with Jaccard similarity and MinHash
  2. New blog post: Stripe's monorepo developer environment

2023 5

  1. New blog post: Performance engineering, profilers, and seeing the invisible
  2. New blog post: Advent of Code in C++ Template Metaprogramming
  3. New blog post: A note about ML and Pickle
  4. New blog post: Graceful behavior at capacity
  5. New blog post: Efficiency trades off against resiliency

2022 2

  1. Blog post: A cursed bug
  2. Two reasons Kubernetes is so complex

2021 25

  1. Some thoughts on GitHub Copilot
  2. Blog post: Distributed cloud builds for everyone
  3. Blog post: Building LLVM in 90 seconds using Lambda
  4. Some more Llama profiling
  5. Do the hard one second
  6. Profiling llama
  7. What's worth optimizing? October 22, 2020 Broken links in last week’s email Many people reported that all the links in last week’s post were dead. Thanks for letting me know, and I’m sorry about...
  8. New blog post: Opinionated thoughts on SQL
  9. Once more, with feeling… October 22, 2020 Sorry for the second email. It seems that I failed to actually disable link tracking on the previous post. I’m pretty sure that this time I’ve got it fixed...
  10. Notes on some PostgreSQL implementation details
  11. Three approaches to edge cases in data models October 29, 2020 Edge case poisoning This post is somewhat a response to Hillel Wayne’s recent post on edge case poisoning. It should be understandable without reading his...
  12. What does a cache do?
  13. Test size and scope November 5, 2020 It’s been A Week I have a 60%-written post on software performance I was hoping to send this week, but in retrospect it was pretty foolish to expect I would...
  14. HTTP Pipelining, S3, and gg
  15. Performance engineering requires stable benchmarks November 12, 2020 Reproducible benchmarks are essential to doing performance engineering. In order to know if a change had an impact on performance, you have to be able to...
  16. Tagged unions are overrated
  17. Benchmarking and theories of performance November 19, 2020 I just this week finished reading Kuhn’s The Structure of Scientific Revolutions. I’d encountered many or most of the ideas in the book by reference, but...
  18. On Reasoning about Code
  19. Determinism in software engineering November 27, 2020 A few weeks back I wrote about nondeterministic performance and the problems it poses for benchmarking. That reminded me that I’ve got a bunch of thoughts...
  20. Alive2 and missed-optimization bug reports
  21. Papers I love: gg December 4, 2020 I’ve been playing with Amazon Lambda the last few weeks for a side project, and during the process I’ve gone from kinda infuriated with and baffled by Lambda...
  22. Some notes on code review
  23. Notes on Amazon Lambda December 11, 2020 First, a callback to an older post: Itamar Turner-Trauring did a neat writeup on using Cachegrind to deterministic performance analysis, inspired by my post...
  24. Tracing JITs and coverage-guided fuzzers
  25. Situated Social Software December 18, 2020 (Probably) no new letters for the rest of this year — going to take a holiday break. Thanks for subscribing and reading this newsletter, and you can find...

2020 1

  1. Welcome to my newsletter! And: Performance as hardware utilization October 15, 2020 Hello! Welcome to the newsletter. I started this year with a goal of writing weekly posts on my blog, but ever since COVID-19 lockdowns started, I've been...