Portfolio

Projects

Screenshot of Blackjack++ web casino with cards, chips, and roulette

Blackjack++

Built a full-featured casino web app with polished JS/CSS UI (animated roulette, card dealing, draggable chips) and a PHP/MySQL backend. All randomness and game rules run server-side with AJAX updates for balances, plus an admin console for account management. Includes an in-game blackjack strategy coach that gives real-time, optimal-play feedback.

Historical newspaper scans processed by a Python pipeline

Crimson White Preservation Pipeline

Digitized 149 historical newspaper issues (1910–1914) and built a Python pipeline to segment scans, run OCR, and auto-generate preservation metadata (JSON → XML skeletons). Created text embeddings and used FAISS + a subject-heading model to assign Library-of-Congress topics and write page/issue abstracts—making previously hard-to-find content searchable. Packaged everything into a simple tool for non-technical staff, with offline fallbacks.

Plots and tables from a Pokémon TCG Monte Carlo simulator

Probabilistic TCG Optimizer (Togekiss 1-0-1)

A Python Monte Carlo simulator that models real Pokémon TCG rules and search lines to estimate “get the Stage-2 up” odds by turn and expected prize value. Implements targeted tutors/search (e.g., Poffin, Ultra Ball, Rare Candy) and outputs consistency curves, prize EV, and side-by-side deck tweaks over 5k–20k trials. Key finding: Stage-2 access is the bottleneck—extra search or a second copy meaningfully improves early “up” rates.

Baseball pitch chart with recommended sequences

Baseball Q-Learning Pitch Suggester

Scrapes Baseball Savant data and builds a 4-D state space to simulate at-bats. Trains a Q-learning agent to recommend pitch sequences that maximize a target outcome (groundball, flyball, strikeout), producing turn-by-turn suggestions grounded in game context.