Banner123111trans1

About Me

My Photo
I am a behavioral therapist in Nashville, Tennessee. I received my doctorate in Special Education with a focus on educational psychology, learning, and measurement in 2011. My passion is helping parents and teachers of children with emotional and behavior problems. Prior to moving to Tennessee, I lived and taught in New York, Vermont, and California. I have been a follower of Jesus Christ since August of 2003. E-mail me.

Blog Archive

Saturday, October 29, 2011

On the abolition of the computer progress bar

Originally posted on September 15, 2006. I thought I'd give it a bump since I'm still waiting for the progress bar abolitionist movement to begin...
Every computer I have ever owned has used some type of progress marker to appease consumers as they wait for software to install, load, or complete a task. In the beginning, the message was, "Please wait," with no indication of how long this wait might be. I recall that it took approximately 5 minutes to load King's Quest on my IBM PCjr., and about 2 minutes to load WordPerfect 5.1 on my Zeos 386SX-16 MHz. In those days, the only notice that the task was nearing completion was a slight change in rhythm of the chattering sounds that emanated from the A drive. Other common messages were "Loading..." "Thinking..." or my person favorite: "Hold on, this may take a few minutes..." Those were the good ol' days.

Then, someone developed the progress bar (examples below.) It appears to have been first used by Apple with the II-GS in 1983, and was first patented by IBM in 1990 as a "dynamic progress marking icon."



This article is an attempt to demonstrate the futility of the progress bar and to implore software developers to bring back the glory days of computing when no one pandered to the user with progress bars that mean nothing. A secondary purpose is to illustrate how the person who invented this appeasement tool was foolish, as is every software developer who has thoughtlessly perpetuated its use.

Take for example the following modern example of the progress bar. This is a screen capture of my download of HLM 6.02 (Student Edition) this afternoon.



Let's assume for a moment that the time indicator is based on the speed of the present download. Download speed changes constantly, moderated by the user's network activity (e.g. navigating other websites, streaming video, sending and checking mail) as well as the speed of the upload by the host server.

Have you noticed that with progress bars like this one, the time indicator is variable, sometimes changing constantly? Have you ever seen the time indicator increase ad infinitum until it reads something like "13 hours, 12 minutes"? As you probably know, this was likely caused by either (a) a slowdown in the network connection, or (b) a lost connection. You were likely forced to cancel the download and restart it, because it never would have completed on its own. The computer, unfortunately, had no idea, and your progress bar time indicator was as useful as a watch with no battery.

It does absolutely no good to watch a blue progress bar fill up the white space, unless you happen to enjoy watching such things. The relative distance of the blue bar to the end has little (indeed, sometimes very little) relation to the amount of time the task is going to take.



How long is this task going to take? In order to know the answer, you need the following information:

1) How long has the task been going? and
2) Is the blue bar moving at a constant rate?

This one is a common version of a progress bar in Apple's Mac OS X, and it means absolutely nothing. It does not move at a constant rate, so the user cannot use this as a visual indicator to estimate how much longer the task might take.



This is an attempt to disaggregate the smooth increase of the blue bar into bite-sized chunks. Every time a new chunk appears, the software developers expect you to feel you're that much closer to the end. Unfortunately again, since each chunk does not take an equal period of time to appear, this chunk-type of progress bar means nothing. How many of us have sat watching our computer load something and at times, the chunks come flying fast and furious, and then there is a long pause while the hard drive clicks away and the computer does who-knows-what.

If you've used computers as long as I have (particularly Windows computers) you've undoubtedly seen the computer "hang" indefinitely on a certain chunk, with the only way out being a Ctrl-Alt-Delete or a cold reboot of the machine. What, then, is the point of having a progress marker in the first place?

Some might protest against the abolition of the progress bar by saying, "if it hadn't crashed, the progress bar would have finished. At least you knew at what point in the task you were when the machine experienced trouble." You're still expecting me to assume that the Progress Bar was some type of indicator of how close to finishing the task we were. What if the very last chunk took as long as the combination of all previous chunks? (I've seen this happen, more than once.) Then, as opposed to being a happy little graphic to watch while you wait, it actually adds stress to the process because the status of the progress bar bears no relation to whether or not the task is near completion.



This is a laughably creative version of the progress bar. Here, I'm supposed to be excited because I get two progress bars for the price of one! On the top, I am allowed to see which specific file is being copied, and the bottom is the aggregate progress of the entire task.

The only problem is, some files may be 10k in size, while others might be huge graphics or audio files which take much longer to copy. If you've ever watched carefully, these types of progress bars, while interesting to watch, are completely meaningless. Some files cause the top bar to fly across without even giving you time to read the file name, while some other files take as long as many of the previous files put together. Further, unless you are the software developer, you don't know (or care) what the file names mean, so this is extraneous and useless information.

Again, unless the bottom progress bar moves across at a constant rate, there is no sense in including it at all. In 22 years of using computers, I have never seen a Progress Bar that moved at a constant rate.



This type is very interesting. By including information on what specific task is being performed, I am supposed to feel more comfortable that the process is moving along as planned. In this case, the machine is "Generating connected components." Prior to that, it was probably "Checking system hardware" or "Optimizing file structure" using the same or a different progress bar.

Many times, the progress bar is reset with each new process. While I might feel comfortable seeing lots of blue bars fly across my screen, there is no information here: since I can't see the aggregate progress of all of the processes together, each new bar is another new piece of meaningless graphical eye-candy for me to watch while I have no idea how long my computer is going to take to finish its task.


Here, iTunes 7.0.0 is expected to take "About 2 minutes" for a 25.7 MB download. If you look carefully, however, you'll notice that after iTunes downloads, I still need to download QuickTime 7.1.3. At 2 minutes, iTunes would be downloading at .2167 MB/second. At the same rate, QuickTime will download in 3 minutes, 49 seconds. Why, then, doesn't the progress bar say 3 Minutes, 49 seconds? My Texas Instruments TI-1706SV calculator could figure this out but my Powerbook G4-800 apparently could not.

Unless the user has some assurance that the current rate of progress will persist across downloads, the progress bar means nothing.

Finally, my personal favorite:


This is from Safari, but it's common in many browsers (I'll include an additional example below.) If you look, the blue bar is complete, right? Look again. No, not there. At he bottom of the page is a message that says: "Loading 'http://www.xxx.com/', completed x of xx items". Here, the number of items is the "true" progress bar. Unfortunately, I've seen countless websites where the last item takes the longest to load, so again, there is no constant progress, so the progress indicator is absolutely meaningless.


The most annoying one, in my opinion, is the type of progress marker that says, "Loaded 31/32 items..." and a few seconds later, "Loading 32/33 items" and then "Loading 33/34 items" until finally the process is inexplicably complete. What is the point of telling me how many total items there are if the total increases periodically? It is pure idiocy.

I rarely criticize Apple, but their Safari is a major offender with this kind of progress monitor.

Can you survive without Mr. Progress Bar? I can.

Pass it on. Let's start a revolution.




Update: Here is a very interesting research paper on the effect on perceived duration of the computer progress bar from Carnegie Mellon University. Conclusion: there may be instances when no visual cue is preferred.

0 comments: