Why do software installation or updates always go very fast up to 90% complete, then the last 5-10% takes so much longer?

724 views

Why do software installation or updates always go very fast up to 90% complete, then the last 5-10% takes so much longer?

In: Technology

32 Answers

Anonymous 0 Comments

I do not have such an experience. Depends obviously on the specific software package, but also on the operating system you use.

Anonymous 0 Comments

I’ve actually developed loading bars for applications before.

99 times out of 100 a loading bar is set by dividing the number of tasks to accomplish by the number of tasks already accomplished. Rarely is there any consideration to the length of time it takes to do a task. If there is, it’s a best guess. Not many people want to pay for time studies to get it to be a realistic loading bar. They just want a notification of progress so they don’t think the application is frozen.

Just for kicks and giggles. I have done a time study on an application loading and normalized the loading bar to be fairly accurate as a countdown. On the computer I was developing with. I transferred the application to a user’s computer and it was way off. (Maybe my HD was fast or slower than the user’s, or their network connection was flaky. Who knows. There’s a million reasons).

Not saying you can’t figure it out, but no one is going to pay a developer to do it.

Anonymous 0 Comments

The installer has no idea how long it will take (because it depends). The progress bar is mostly arbitrary just, so user know something is happening. It just can’t end before the installation is completed. That’s why it’s most often stuck on 99%. Other option is adding x% after each complete step, but all steps are not equally long.

TLDR.: No one is gonna waste time trying to make accurate progress bar.

Anonymous 0 Comments

TL;DR Most software “loading” bars are fake. Meaning they don’t actually show the precise percent of the progress. It’s a guesstimate!

Source: Me! A manager in software testing with just over 10 years of experience

Anonymous 0 Comments

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.

Anonymous 0 Comments

Think like you’re carrying a box with lots of toys in it. You need to take it from the living room to your room and place all them in the right spot.

Someone decided 90% of the work just carrying the box, 10% is putting them on place.

But carrying the box is quick, you can do it in a minute. Putting the toys in place takes a lot longer, maybe 4 minutes.

Anonymous 0 Comments

You know how we can be on the way home and you’ve gotta go to the bathroom? You know you can hold it but the closer we get to the house the worse you have to pee? Kinda like that.

Anonymous 0 Comments

There are multiple ways to make a progress bar, so depends on the implementation. I suspect, that when it comes to software installation, it is basically a lot of files being unpacked in the back. When it comes to lots of read and write operations, computers behave in a little funny, albiet logical way.
Imagine, you have 1 big video file of 1GB, and then 1,000,000 small files of 1KB each. Will it take the same time to copy both sets, with the same hardware? NO.

For every file, the computer has to

– Find a space on the disk

– Reserve that space

– Read Data

– Write to new space

Now, for that single 1GB file, the first two steps are done only once. While for the 1,000,000 smaller files, the first two steps are done for each file (ie 1 million times). Hence, copying 1 million small files is much slower than copying one big file, even if they are the same size.

When it comes to software installation, the installer might look at the total size of files being written, and give you a progress bar based on it, but the big files may get picked up soon, and get written, while lots of smaller files remain at the end. and hence, even after 99% of the space taken by the files may be filled, there might be thousands of smaller files in that 1%, that are taking a little extra time than one would expect.

Anonymous 0 Comments

For a lot of software, it is in the main phase, unpacking the main data which can often be fewer but larger files, so its fairly steady. Near the end is where generally the smaller more plentiful files get unpacked and organized. The installer also has to clean up a lot of the working data from the install at this last point. Unpacking a large file takes less time per mb than unpacking a lot of smaller files because there is transfer time in between the files. Think of it like unfolding a table cloth with many folds verses a bunch of napkins one by one but with the same surface area.

Anonymous 0 Comments

Progress bars are totally arbitrary and up to whoever is writing the installer. Someone might do it based on % of files transferred, or % of total size transferred, something in between, or something completely unrelated.

That said, you (and I) probably notice the ones that are the least representative of actual behavior and forget about the ones that work as you’d expect, because brains are weird.