Hacker News new | ask | show | jobs
by notafraudster 2039 days ago
Progress bars work best when they are analyzing repetitive tasks analyzed either in series or in parallel without overhead. If I'm doing something 10,000 times, and if there's no overhead on parallelization or finishing steps. I can be reasonably certain that after 7,000 times, 70% of the time has passed and 30% remains. Maybe there's some step by step variability, but chances are it's dominated by the fraction of iterations complete.

Progress bars work worst when they are combining extremely disparate steps. You might need to run 10 functions, but if one takes 0.1 seconds and one takes 45 seconds, it makes little sense for each step to be counted the same atomically or to present each as 10% of a progress bar.

The absolute worst case scenario is when you depend on an external resource about which availability is unknown but highly variable.