Categories Introduction About Me - Ben Ashby CV About Me - Ben Ashby Artificial Intelligence More Good and Bad Machine Learning Uses What AI Can and Can't Do Beginning AI Machine Learning More Good and Bad Machine Learning Uses What AI Can and Can't Do Beginning AI Rust Downcasting Traits in Rust Understanding Borrowing in Closures and Variable Capturing in Rust Understanding Borrowing and Lifetimes in Rust Trait Bounds in Rust Phantom Types in Rust Basic Generics in Rust Programming Downcasting Traits in Rust Understanding Borrowing in Closures and Variable Capturing in Rust Understanding Borrowing and Lifetimes in Rust Trait Bounds in Rust Phantom Types in Rust Basic Generics in Rust OpenResty JWT Validation in OpenResty Security JWT Validation in OpenResty Android Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App Jetpack Compose Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App Firebase Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App ViewModel Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App Kotlin Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App Coroutines Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App Flows Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App Personal Project Revisiting Modern Android: Notes on Compose, Firebase, and ViewModel for a Planner App AI Experimenting with MCP - Building an Evergreen Knowledge Server for WoW Specs Gaming Experimenting with MCP - Building an Evergreen Knowledge Server for WoW Specs MCP Experimenting with MCP - Building an Evergreen Knowledge Server for WoW Specs