Lies, Damn Lies, and Progress Bars
Lies, Damn Lies, and Progress Bars
- 8:58 AM
I should have waited for things to settle down, but I didn’t. I went ahead and installed Mac OS X Mavericks. You know how this goes, you have to reboot your computer and then you get this page that says “installing.” On this page, the computer also gives you a progress bar and a “time remaining” estimate.
I claim that this time remaining is a lie. I’m not sure right now, but I have this feeling that the computer told me there was less than 1 minute left for like 5 minutes of time. Of course, there is one way to find the truth – an analysis.
Yes. I have looked at the progress bar before for downloading a file. I suspect this case is a bit different.
Here is the plan. Use a camera and record the install process on another computer. With Tracker Video Analysis, I can create a plot of the percent of progress (from the length of the bar) as a function of time. I can also record the “time remaining” as reported by the installation process.
Here is a plot from Tracker video that shows the length of the progress bar as a function of time. I scaled the bar so that the full length was 100 (you could call it percent if that made you happy).
Of course, I also need the reported data from the installation. Here is the time left as a function of time. Yes, that seems silly but that is actually what is reported. I only have data points for the times that the “remaining time” changed. When it reports “14 minutes left,” I don’t have a new data point until it reads “13 minutes…”
Now for some analysis.
How Wrong Was It?
Since I have finished with the installation, I actually know how long the whole process took (38 minutes). Here is a plot of the reported time left as a function of actual time left.
Since this looked fairly linear, I added a linear regression line. If the computer were always correct, this would be a straight line with a slope of 1 and a y-intercept of zero. Here is the problem. Although the fitting line looks nice, the slope is 1.316 with an intercept of -14.25 minutes.
Here is another plot. This is the percent error as a function of time (just plain time – you could plot this versus time remaining or percent complete).
Does the installation lie? Yes. Look at that plot. At the end of the installation, it is almost 90% wrong. Maybe the computer doesn’t think you can handle the truth. Maybe it thinks that if it tells you that it doesn’t know how much time is left, you will leave and start using Windows 8.1.
How can you fix this? Well, you probably can’t “fix” the problem because of the nature of the installation process. Sometimes you just don’t know how long something will take. However, I have some suggestions. What if the computer didn’t report the “time remaining”? It would have to say something though. Here are some suggestions.
- “I don’t know how much time is left, but why worry? Relax and have a cup of tea. I’ll let you know when this is finished”.
- “I’m just a computer. I have no idea how much time is left. Have a cookie.”
- “I’m sorry, Dave. I can’t tell you how much time is left in the installation.”
- How about the computer just shows you pictures from your iPhoto library?
I guess this is why I’m not an Apple developer.
There are too many awesome questions here to not give you some homework. First, I have all the data. Here is a Google doc spreadsheet with the numbers from both the progress bar and the reported time left. You will probably need that to answer these questions (unless you want to collect your own data).
- Think of the progress bar as the x position of the installation. From this, make a plot of both average x-velocity and instantaneous velocity as a function of position.
- Use both of the above velocities to estimate the time remaining in the installation and compare it to the actual time remaining.
- See if you can come up with a better way to predict the time remaining in the installation.
Have fun with the homework. You could probably finish it before Mac OS X Mavericks finishes installing on your computer.