I've noticed that indeterminate loading spinners that just keep spinning can be really stressful for users. They often feel unsure if something is actually happening or if the application is frozen. Even just an approximate idea of progress can make a big difference. A message like "Loading your data..." is definitely more reassuring than a silent spinner. Setting expectations, like saying "This might take 30 seconds," also helps. I'm curious about different approaches—how much thought do you all put into loading indicators? Do you feel it's worth enhancing them to show steps like "connecting, fetching, processing"?
4 Answers
Implementing actual progress isn't straightforward. Using fetch doesn’t easily allow for that—it’s much easier if you use XHR instead. But even then, it usually means implementing more elaborate backend solutions. It's often just not worth the engineering effort when users usually see loading screens for such little time.
Yeah, it really does add layers of complexity that most projects just don’t warrant.
In my opinion, loading spinners should only indicate progress when you're dealing with longer loading times—like 10 to 20 seconds. For quicker loads, users don’t really see anything beyond a second or two, so adding progress indicators could feel like over-engineering. That said, for anything longer, a bit of detail can be very helpful for user reassurance.
That's exactly the problem! You can't always predict how loading will go because users might be on slow networks. It’s good to have some sort of indicator rather than just a spinner.
Totally agree! Sometimes, even when loading only a few kilobytes, users might be in a bad spot connection-wise. Just showing they're waiting for something is better than nothing.
For me, loading indicators need to keep things basic. Sometimes a straightforward "Loading..." does the job without over-complicating. If you try to break it down too much, it can confuse users more than help them, especially when their loading times can be very unpredictable.
Absolutely! I’ve implemented spinners without detailed progress because most API responses are either 0% or 100%. Trying to fake a middle ground doesn’t really help.
Exactly! The more you try to predict, the more complex it gets. Just letting users know something is happening is often enough.
Yeah, showing loading progress really depends on the scenario. A simple spinner works fine for quick operations. However, for longer processes, breaking down tasks into stages and informing users might enhance their experience. I’ve even made a game people could play while waiting for something that can take over a minute. It’s all about managing expectations for the user without making it too complicated.
Haha, love the snake game idea! Sometimes, a distraction is just what users need!
True, but it can also make your app feel unfinished if you don’t manage it right. A good balance is key!

True! Some APIs don’t give incremental updates, so getting accurate progress reporting is tricky. It’s an often overlooked challenge.