Honest Download Meter: Prototype

Data remaining
Running time
Time remaining
Estimated completion time
Current speed
Average speed
Standard deviation
Sequential correlation
Instant speed

Prototype of a download progress meter that expresses uncertainty.

Time Remaining shows an upper and lower bound for completion time. It treats the download speed as a sequentially correlated gaussian variable. Lower and upper bound are set at 1 stddev from the mean. Numbers are rounded to 5s above 10 to stabilize the display.

Current Speed is meant to improve upon typical speed measures. These tend to use exponential-filtered averages (e.g. new = old + (current - old) * .2), which take very long to settle after a perfect flat stair-step and give the wrong impression. Instead this uses a cosine-smoothed running average, of a short outlier-rejected mean—similar to a median filter—which zones in on flat sections and settles quickly to zero.

Average Speed is a normal 50-second average, meant to show effective throughput. It's the mean of all the samples in this window.

In real use, only a few of these quantities would be displayed. Rather than show the full speed graph, only the smoothed version could be shown in sparkline form.

Honest Download Meter Prototype