Progress? We're not making any progress! or Are We There Yet? A common need in programs is the need to display the progress of an operation. Displaying progress can tell the user: the program is still alive; what percentage done the program is; when the activity might complete. Another type of report commonly, but incorrectly, called "progress" is the spinning wheel. A similar one is the "Cylon" activity bar. Such indicators would more properly be called "activity indicators". These are not covered in this post. Progress can be defined: "forward or onward movement toward a destination". An activity indicator does not, and cannot, indicate progress, because it does not indicate that "forward" or "onward" movement is being made! Thus, for a file transfer, a beep every second doesn't indicate progress, but a beep every 1024 bytes of data transferred would indicate progress (although po...
Thoughts, comments, and code examples from my forthcoming book, "The Real Art of Computer Programming".