I have the perfect solution. Whatever time the progress bar makers estimate the task to take, automatically add 20%. or 50% or whatever, it makes no difference. The point is this: whatever time it takes will be smooth, seamless and perfectly predictable to the person watching the progress bar. And that makes people happy. Whether it takes 5 minutes and the computer just sits there with the task completed, and idly waiting for the predicted time of 6 minutes to expire before allowing the user to continue; the user is happy because the predicted 6 minutes took exactly 6 minutes.