Teaching
Kadane’s algorithm, found by hand before it is shown.
The max-subarray toy
Find the stretch of numbers with the biggest total. Tap where it starts, then where it ends.
Tap where your stretch starts.
The toy did not load. Reload the page to play.
Competitive programming
The on-ramp, for whoever starts next.
Practice, camps, and the years it took.
Every contest from 2012, the bad weeks included.
Lessons
Pick the stretch of numbers with the biggest total, check it, then watch a computer find it in one pass.
An arcade of algorithms to play, built by Ashwin for his students.
One classic problem, recorded for mycodeschool during a college internship.
Writing on teaching
An ICPC scoreboard under review, the grind behind my own rank, and what a student, a teacher or an engineer can show now that an AI can write the answer.
Kits
Vibe coding workshop (opens in a new tab)
How LLMs actually work, why prompting is engineering, and a working coding agent built from scratch.
Agentic coding starter kit (opens in a new tab)
A starter template for AI-assisted development: two filled-in templates, one worked example and a short guide to the workflow and the free tools.
RPI framework experiment (opens in a new tab)
A live classroom demo comparing two AI-generated implementations of the same project, built with the same cheap model, with and without a Research, Plan, Implement pipeline.