3 ms·
How about: make your product faster so you don’t need progress indicators? I see these way too often, and most operations really should feel instant to the use
by makecheck 9y ago
How about: make your product faster so you don’t need progress indicators?
I see these way too often, and most operations really should feel instant to the user. Little things should not be taking multiple seconds to complete.
And for the occasional actually-time-consuming task, calculate the end point so you can display a proper bar. An indeterminate spinner is laziness, forcing the user to wait an unknown amount of time when you can probably figure it out.
- arbie 9y agoAny operations that rely on server-side compute/data must margin for nondeterminism. I would put in a loading indicator just to cover the outliers. Local (client-side) operations are a different matter entirely. Either precompute the result for common operations or optimize for speed!
- makecheck 9y agoUnless the device is physically out of space for storing things, there is no excuse for putting up a modal loading indicator because of a server-only problem. As a general rule, every single edit should be able to return control to the user immediately. If the network can’t be reached, save locally and attempt an update in the background (showing a small, unobtrusive annotation that an update is pending, as opposed to a screen-erasing obnoxious progress popover). And definitely don’t erase everything the user did if the network ends up being unreachable.
- styfle 9y agoWhat about if two users are editing the same object? How do you reconcile or merge the changes?