Blog February 26, 2026 Who Actually Buys Washington? Twenty years of federal lobbying disclosures, added up. The numbers are not what you think. data politics
Blog February 20, 2026 Counting the Dead A relative risk analysis of 44 armed conflicts - from recognized genocides to precision warfare. Who bears the cost? statistics data conflict gaza middle-east
Blog January 28, 2026 Building a Rust Game Engine: Part 5 - Window Abstraction Creating a platform-agnostic window system using winit, with event integration and proper key code mapping. rust gamedev
Blog January 27, 2026 Building a Rust Game Engine: Part 4 - Events Designing an event system in Rust using enums and pattern matching instead of C++ inheritance, with bitflag categories for filtering. rust gamedev
Blog January 26, 2026 Building a Rust Game Engine: Part 3 - Logging Setting up a proper logging system with colored output, severity levels, and source tagging to distinguish engine from application messages. rust gamedev
Blog January 25, 2026 Building a Rust Game Engine: Part 2 - Entry Point Implementing an engine-owned entry point using traits and macros so the engine controls initialization and shutdown. rust gamedev
Blog January 24, 2026 Building a Rust Game Engine: Part 1 - Project Setup Setting up a Cargo workspace for a game engine with proper project structure, build tooling, and output organization. rust gamedev vulkan