| ▲ | wackget 8 hours ago |
| Honestly the site[1] is very basic and pretty damn slow. When I click into a different category there is a noticeable delay of 1-2 seconds before the new page loads. I don't want to replicate this in any of my own projects. 1: https://apps.apple.com/ |
|
| ▲ | pwdisswordfishs 6 hours ago | parent | next [-] |
| Just checked, and it's pretty snappy... under Firefox... on 10-year old hardware... that was originally a Chromebook. Have you tried visiting the site on a worse machine? |
| |
|
| ▲ | samdoesnothing 8 hours ago | parent | prev [-] |
| That's what this type of SPA architecture leads to unfortunately. Routers should immediately display the navigated to route with place holder content / skeletons, but instead all the frameworks basically wait for all the data to load before transitioning. You can technically stream the data in but even a single awaited promise will block the navigation until it succeeds. And it's not an issue that shows up in dev because typically the data loading is instant. |
| |
| ▲ | cyberax 7 hours ago | parent [-] | | Nope. Skeletons are the worst. Down with the necromancy! They try to create a _perception_ of a quick answer while adding overhead and distracting people. | | |
| ▲ | bastawhiz 6 hours ago | parent | next [-] | | Skeletons are a loading state. Get rid of skeletons and you either have unresponsiveness or flashes of nothingness | | |
| ▲ | themafia 5 hours ago | parent | next [-] | | The flashes signify actual changes. It's a secondary signal to resume paying attention to the page. What I truly hate are animated skeleton boxes or element level spinners. Why are you trying to hold my attention on something that's not even loaded yet? We all understand the UI paradigm and implicitly understand network delay, you don't need "comfort animations" to keep me happy. I'd rather use the time to look at any of the other tabs or applications across my screens. Then the flash of content actually means something. | | |
| ▲ | shooly 4 hours ago | parent [-] | | The point of skeleton loaders is to prevent the page from jumping around furiously, which would force the user to re-parse the layout (possibly) multiple times. | | |
| ▲ | themafia 8 minutes ago | parent [-] | | In my experience it's just amateur UI design that causes this. Your display areas shouldn't change size unless the browser changes size. There should be nothing that is "content fitted." That's a historical mistake of early HTML but it's something easily overcome. You really do have to get the HTML+CSS to work like a desktop app before you layout your SPA. Worse still, applications like microsoft outlook on the web, use the skeleton boxes with comfort animations. What they don't do is pre layout their icons. And different icons will appear in different contexts. I often get the case where I aim for one icon, something will load in, create a new icon, and push my intended target out of the click. Skeleton loaders are a bad kludge over an initially ignored problem. |
|
| |
| ▲ | pier25 6 hours ago | parent | prev | next [-] | | Either you wait to get all the data to display the new UI, you show spinners, or you show skeletons. Personally I prefer to wait than having multiple flashes of content but I do agree no approach is perfect. | |
| ▲ | cyberax 5 hours ago | parent | prev [-] | | Which is fine. Nothingness, or a generic spinner actually don't lie to me. Skeletons lie by making an impression that the data is just about ready. So there's this failure mode where data is NOT ready because of a slow app/network, and I end up staring at a fake. Even worse, sometimes skeletons also break scrolling, so you end up even more frustrated because your controls don't work. |
| |
| ▲ | eviks 7 hours ago | parent | prev | next [-] | | It's not a perception if partial load shows some information faster than waiting for the full load | |
| ▲ | samdoesnothing 7 hours ago | parent | prev [-] | | It far and away beats the alternative which is clicking on a link and nothing happening. Feedback should be within a frame or two of latency, not seconds... | | |
| ▲ | halapro 5 hours ago | parent | next [-] | | If you let the browser change page, then you do have feedback. Super native. | |
| ▲ | kid64 6 hours ago | parent | prev [-] | | That's not the only alternative, there are a range of options between those extremes. |
|
|
|