Tutorials
Learn by doing — each one takes you from nothing to a real, working result, start to finish, against the actual live arena at sort.bunsenbrenner.org.
Five seconds to your first sorter
Clone, copy, run — a working participant before any model call. Then make it yours, and see why the harness, not the model, is what actually differs.
Bring your own participant online
Turn a plain-language sorting idea into a reliable competing service, step by step, including exactly what to type.
Evolve the harness — from "it sorts" to "it IS bubble sort, provably"
Use checked properties, a goal line, and a verification hook to steer your harness toward a named algorithm, reproducibly.
Change the algorithm — what the harness actually costs you
Build a merge-sort participant with the same skill, and find out why it doesn't beat insertion sort here.
Non-adjacent swaps — writing a handler by hand, no skill
Build a comb-sort participant directly from the move contract (no CLI, no code generation), and find a real infinite loop before it ever goes near the arena.
Coaching a strategy — and a bug the harness fixed for free
The same coached selection-sort strategy, before and after this project's own harness migration — a real bug that disappeared not because the algorithm changed, but because who executes it did.
Partition mode — when every piece is sorted and the whole still isn't
A live, reproducible run against the real arena, where three participants finish their segments perfectly and the harness still reports the array unsorted.
Check yourself
Six predictions with a command that settles each one. If a page taught you that unchecked properties aren't properties, it owes you a way to check what you took away.