Things I’ve built.
Three of these have proper case studies, because they had real constraints and taught me something. The rest are here because they’re honest evidence of what I can do, not because they need explaining.
A set-piece simulator that refuses to lie. It plays a corner out thousands of times, scores every chance with a real expected-goals model, and won't call a routine a winner unless it beats random search first.
Python · StatsBomb xG · optimisation · SHAPA club website rebuilt to outlive the committee that commissioned it. Editors publish a race report in five minutes, it targets 95+ on Lighthouse, and it runs for about ten pounds a year.
Astro · Sanity · Vercel · Tailwind · WCAG 2.2 AAFifty-one riders, three sessions each, asking whether a professional bike fit actually changes what the body does — and whether it differs between men and women. I designed the protocol, ran every session, and built the pipeline from raw sensor stream to finding.
Experiment design · Python · COSMED · Qualisys & Theia3D · EMGCoursework, experiments and client work.
Smaller pieces. Where there’s code worth reading, the link goes straight to it.
IMDb sentiment pipeline
A full sentiment classification pipeline: custom naive Bayes against TF-IDF, with lemmatisation, custom stop words, n-grams and minimum document frequency all tunable from the command line.
Space Invaders reinforcement learning
Coursework building and comparing reinforcement learning methods on Atari Space Invaders, with a second piece researching intrinsic motivation.
Brain tumour detection
A YOLOv10 model fine-tuned on annotated MRI scans, wrapped in a Gradio interface so predictions can be inspected image by image. A direct descendant of my EPQ on computer-aided diagnosis.
Society Matchmaker
An eight-person team project tackling student society engagement. I led the user research and built the random forest recommender behind it; engagement rose 150% against the system it replaced.
Agent experiments
A NEAT agent that teaches itself the Chrome dinosaur game, Conway's Game of Life extended into a forest fire simulator, and a boid flocking model adapted to study migration under environmental stress.
Barnett Art
A gallery site for an artist's work, built to take enquiries about individual pieces and ready to sell directly when that is wanted.
Argonauts
A 2D platformer with dashing, wall-jumping and enemy AI, built in Unity. The follow-up was a grappling traversal game made in Unreal during a hackathon.