In France we have a Craiglist-like website. They recently moved to ReactJS : https://www.leboncoin.fr/
The website features didn't changed in between. It's basically a pagination + a search based on radius (so DB related) + name (so DB related) + categories (so DB related).
The complete website could be build in pure HTML + CSS and a bit of JS + Ajax to refresh parts of it.
But no, it's build with ReactJS, and it takes seconds to search a simple item on it.
To compare, just try the same search on the Dutch equivalent, MarktPlaats, https://www.marktplaats.nl/. The experience is way snappier, way lighter, the features are the same, and it's just HTML + CSS + a bit of JS.
We made a mistake with React/Vue/Angular. And we should really go back and stop using those frameworks.
I’ve been plying around with lit-element lately and am finding it a much simpler experience overall. Likely a lot faster as well https://youtu.be/uCHZJy2n8Qs
They made the same with local Czech eBay-like website https://www.aukro.cz/ . Previously it was a fast website. Transition to the webapp was painful, their filtering component was not working properly on mobile. It still takes several seconds until the initial white page switches to the rendered DOM. They lost many customers due to this painful transition. I think they fixed some of the problems (I know filtering component works ok now) but I basically stopped using it since that transition too.
Thank you for this post. I yell at my screen each time I have to use leboncoin.
It was super ugly, but it did the job. Now it's super ugly, but it steals my focus at every opportunity, refreshes parts of the UI I'm about to click, or has select inputs that love to play hide and seek with my cursor. It's a UX nightmare.
I must say their new payment system is nice. But boy do we have to suffer when looking for something to buy now.
Agreed. SPAs only make sense for few websites like Trello, for most other websites plain dynamic HTML with dash of ajax here and there are much better.
This used to be a bigger deal before HTTP/2 increased the number of concurrent requests to be virtually unlimited.
Unless I'm missing something, it's "optimal" for a site to have many split files. If their JavaScript were 1 file, a change to a single character would mean the need to re-download every bit of JavaScript. Instead, with 96 files, it would mean 95 of them are still cached client-side and only 1 is need of downloading.
It looks to me like these scripts are asynchronously-loaded components that load only once they're needed. In this case it looks suspiciously like they're nested and each script download causes another script to be downloaded once the component renders, which would make HTTP/2 a moot point. I can even watch the requests pile up in the dev tools when they're cached, so my guess is if they dumped everything in one file (or even 10 files, just not 95) they'd get noticeably improved performance.
Twitter and the new Reddit aren't in the same category. Twitter is still somewhat usable.
Reddit, on the other hand, is an absolute clusterfuck from layout and usability perspective. The choices made were not made for monetary gain, they are simply really bad design choices that for one reason or another have not been fixed.
Aah, the Reddit redesign. I still can't use it. I check up on it once in a while, but my 7 year old MacBook Pro still don't like it. It remains slow, regardless of the number of times Reddit claims of have improved the speed.
On the phone it's even worse, a large number of subreddit now require that you use the app... unless you just go to old.reddit.com.
The point of the reddit redesign still alludes me. Sure the old design isn't mobile friendly, so I can understand that they would want to fix that. Then again they mainly use the redesign to push the app. And the new design isn't that mobile friendly anyway. Certainly not if you value battery life. Comments are now also hidden by default, which is just weird. But you have infinite scroll, which seems to be the main selling point. I'm not sure I needed that though.
Mobile twitter website gives me an “oops, something went wrong” or “you’re doing that too much” error probably about 50% of the time I open a link to it.
I sort of tolerated New Reddit at first, until I experienced first hand their (to the user) cynical reasons for doing it. Namely: throwing mobile app prompts in your face, blocking some reddits unless you're logged in, inserting ads masquerading as proper posts...
Even then, I could cope with some of it, except that they just totally broke the experience with shitty infinite scrolling. You can't click a damn thing and hope to go back to where you left on a post. Sometimes even old.reddit.com will redirect you to the new version now.
These redesigns would suck less if they were more about being functional and not about scraping every last morsel of engagement from unwitting visitors, through whichever devious methods they can imagine.