An accurate progress bar is difficult to code and are not critical so many are done as a last minute best effort.
There are examples in the past of progress bars that were designed to go up to a set percentage over a period of time independent of the actual state of loading. Once the time was done, it would stay at that set percentage until everything was loaded. This caused a lot of frustration as computers became faster but these programs refused to start until at least 10 minutes went past.
TLF5YO:
Progress bars are hard to get right but as long as it is moving everything is going to be okay.
Latest Answers