Updates for April 2026
Here's what I've been working on, doing, and thinking about this month.
I upgraded this site's generator for Zig 0.16 and made it multithreaded.
I went on a business trip to London for two weeks, staying in the central part of the city, close to the Tower Bridge. While I worked during the week, I still had four days on the weekend for sightseeing in the city and trips to Cambridge and Bletchley Park11 This is where the ciphers used by Axis powers in World War II were broken using early computers..
A notebook that lays flat was my first photo-rich article. Despite the low-quality photos, it's nice to share what my setup looks like.
I did not read nearly as much as I did last month, but I did find time for one fun science-fiction book:
Project Hail Mary by Andy Weir
Instead, I read some excellent articles:
Go Ahead and Use AI. It Will Only Help Me Dominate You.
This was hilarious and a testament to writing in your own voice without the help of LLMs.
Your hex editor should color-code bytes
I have some strong opinions about syntax highlighting and this is a neat application of it. I'd like a hex editor with structural grouping for known-formats, since I almost always use them on file data. But this looks really useful for hex editing arbitrary data.
A tail-call interpreter in (nightly) Rust
I wish there was some way to apply this to the work I do in Swift, where I built a little arithmetic expression evaluator for the CPU Counters instrument. To be fair, I haven't actually looked at the generated code and I'm likely leaving a lot of performance on the table. Byte code VMs are a really effective solution to some hairy problems and can be competitive with native code in some cases.
Andy Wingo wrote the value of a performance oracle as a follow-up, showing that his WebAssembly runtime isn't as slow as Wasmtime. I'm still not convinced that there are not fundamental limits to performance, having re-read the WebAssembly Troubles series recently. And as much as I love the Uxn ecosystem, his take that a Uxn interpreter is a viable target to optimize for is a little odd. There are veritable loads of more commonplace workloads available in languages that can target WebAssembly.
Porting Mac OS X to the Nintendo Wii
Seriously impressive. This might be the one of the last pieces of greenfield IOKit development to happen outside of Apple.
256 Lines or Less: Test Case Minimization
This is a nice demonstration that you don't need to be too fancy to get 80 to 90 percent of the benefit of an idea. The problem I've faced with property-based testing is finding useful invariants for a data structure or algorithm that can be easily checked. But I also didn't have access to convenient generation libraries.
Lua can be a really cool HTML templating engine
I love a tactical Lua interpreter as much as the next person, but I'm not convinced that a DSL for HTML is a great application for it. Regardless, I appreciated how the code was presented and discussed. It's almost like a literate program, but positioned as a persuasive piece.
Before my trip to London, we put on a little Easter egg hunt for my daughter in our backyard and, the next day, another one at my aunt's house. My aunt cleverly assigned each kid an egg color so they all got a set number of their own.
While I was in London, I experienced a busy, built-up, very old, dense city and got around almost exclusively on their underground light rail and regional heavy rail systems. Getting from Heathrow airport to the middle of the city was fast and relatively convenient: the Elizabeth line was busy but not too bad. Being able to tap-to-pay everywhere took the stress away from finding a kiosk or getting some London-specific card.
Now that I'm back home, I'm taking a week off work to spend time with my family and do some spring cleaning.



