Blog
Notes on things I've built and tested, this site included.
Why the 2048 board is a Python list
My AlphaZero agent for 2048 learns from self-play, which is engine-bound. A 16-element Python list beat NumPy 20–51× on every engine primitive.
Kronos against 500 random stock-pickers
A simulated portfolio picked by Kronos beat an index ETF after fees and tax. 79 of 500 random stock-pickers did as well or better.
Rebuilding this site as one page
Why the five-station deck with the particle sphere and command palette came down, and what's running in its place.