Skip to main content

Progress simulator

The five behaviours this course spends a semester on, in one page — with the completion condition printed beside the bar.

Everything here is simulated. No file is read, nothing is uploaded, and no network request is made. The byte counts, stage durations and failures are generated in your browser from a fixed script so that every behaviour is reproducible on demand — which is the whole reason this course can set exercises about failure at all.

This is a demonstration of the five behaviours the twelve weeks work through. It is not the prototype students build; theirs is a repository they keep for the semester. Use the ×4 speed if you do not want to wait — a site about waiting should not make you do any.

Scenario

Even rate. The easy case, and the one most bars are designed for.

Idle

—0.0 s elapsed

Nothing has started. Press Start.

Source events (0)

Every number above is derived from one of these. An event the simulator does not emit is a number the interface is not entitled to show.

    The completion condition

    The bar reaches 100% only when a committed event has been received.Not when the last byte is sent, and not when the transfer stage ends — verification runs after that and can still fail. The percentage countswork units across four stages (read 5, hash 15, transfer 60, verify 20), weighted by their duration in the steady scenario. It is not a percentage of bytes, and in the Stage speeds vary scenario you can watch those two disagree.

    What each scenario is for

    Steady
    Even rate. The easy case, and the one most bars are designed for. Week 3: Where is the denominator?
    Stage speeds vary
    Same total work, wildly different rates per stage. Watch the estimate. Week 3: Where is the denominator?
    Unknown total
    No denominator. Nothing on screen may imply a fraction. Week 4: No idea how long
    Stall, then recover
    Live connection, no data for eight seconds, then it resumes. Week 8: Stuck, timed out, disconnected
    Fail, then retry
    Fails in verification. Retry resumes from the last completed stage. Week 9: Cancel and retry

    Things to notice