Index
Demystifying Debuggers Series
UI Programming Series
General Programming Essays
Multi-Core By Default (October 2025)
Programmers Are Users (Bad Performance Makes Everyone Less Efficient) (December 2024)
Upstream & Downstream (May 2024)
Multithreading & Mutation (March 2024)
The Easiest Way To Handle Errors Is To Not Have Them (December 2023)
Factorio, Mutation, & Lossiness (July 2023)
The Digital Grove Project (June 2023)
The Function Is A Lie (May 2023)
The Codepath Combinatoric Explosion (April 2023)
Main Loops, Refresh Rates, and Determinism (March 2023)
A Taxonomy Of Computation Shapes (February 2023)
Emergence and Composition (December 2022)
In Defense Of Linked Lists (November 2022)
You Get What You Measure (October 2022)
Untangling Lifetimes (September 2022)
Table-Driven Code Generation (July 2022)
Culture Essays
The Magic of the Better Software Conference (January 2026)
The Marketplace Of Ideals (July 2023)
Software Kingdoms (June 2023)
Regulation Cannot Save A Defeated Culture (January 2023)
More Languages Won’t Fix The Computing World (August 2022)
Ships, Icebergs, Game Engines (August 2022)
The Gullible Software Altruist (July 2022)
Computers, Ownership, Agency (July 2022)
Talks
Cracking The Code: Realtime Debugger Visualization Architecture (July 2025)
Enter The Arena: Simplifying Memory Management (August 2023)
Digital Grove Codebase Walkthrough Videos
Basics
UI
Podcast Appearances
Wookash Podcast — UI (October 2025)
Wookash Podcast — Fate of C (August 2025)
The Standup — Debuggers (August 2025)
Wookash Podcast — Debuggers (January 2025)
Backend Banter — Memory Management & Arenas (January 2025)
Discussions
Stream Clips
Multithreaded Radix Sort Implementation Walkthrough (September 2025)
