Live data from Hacker News

It's time for modern CSS to kill the SPA

jonoalderson.com

301–310 of 516 posts

Re: It's time for modern CSS to kill the SPA

#301

Lots of pushback here in the comments. But I can't think of the last time I enjoyed using a SPA website over a multi-page one. The initial loading feels delayed, the page scrolling feels unnatural and jarring (completely opposite of how a native app feels). Also, one of my banks recently changed their old website to a new SPA one. And it is now completely useless. It can't load information in time, so most of the for…

> But I can't think of the last time I enjoyed using a SPA website over a multi-page one. You likely don't even notice that most of what you browse are SPAs. The reason why there is pushback is because the article is straight up misinformation.

Actually the static address bar and the refresh button behavior makes it obvious.

Re: It's time for modern CSS to kill the SPA

#302

Earlier quoted context omitted.

Low-bandwidth/spotty connections (combined with aggressive caching) are one of the strongest cases in favor of SPAs (emphasis on the A for Application, not website). Visit (and cache) the entire frontend for the app when you have a good-enough connection, then further use of the app can proceed with minimal bandwidth usage.

Honest question: Where are the places with low-bandwidth internet? Are we talking about cruise ships and satellites internet use cases?

Often times my house. I live in one of the 20 largest metro areas in the US. There is a cellular dead spot around my house, seemingly from AT&T and Verizon. Phones work, but barely. Pages with high data demands become a problem.

Re: It's time for modern CSS to kill the SPA

#303

SPAs make sense when your users have long sessions in your app. When it is worth the pain to load a large bundle in exchange for having really small network requests after the load. Smooth transitions are a nice side effect, but not the reason for an SPA. The core argument of the article, that client-side routing is a solution for page transitions, is a complete misunderstanding of what problems SPAs solve. So absolu…

This article is full of misrepresentations and lazy takes. The author has had other anti-JS polemics widely upvoted on HN, which were just as carelessly written. But people upvote it anyway. What is the cause of this? 1. Bad experiences with JavaScript apps that have aggregated complexity (be it essential or incidental complexity)? 2. Non-JS developers mystified and irritated at a bunch of practices they've never rea…

You miss the whole point and the author is correct about this:

Modern CSS is powerful, and HTML is the way to deliver web content.

Every web framework is _literally_ a hack to make the web something it isn’t. People who haven’t seen the evolution often pick up the bad habits as best practice.

For thise JavaScript people, I recommend trying Laravel or Ruby/Rails. And then once you realize that JavaScript sucks you’ll minimize it.

Re: It's time for modern CSS to kill the SPA

#304

Earlier quoted context omitted.

SPA means single page app . For example, Google docs, Figma, Google calendar, etc. Apps that use web technologies instead of being native apps. A long time ago some webdevs started abusing the SPA concept to build simple websites. However that is not within the original meaning of the term SPA, because simple websites are not web apps. The author assumed that everyone would just understand that they are talking about…

So you describe the 1%? Is this to refute the person you’re replying to?

1% of domains perhaps, not 1% of developers.

Re: It's time for modern CSS to kill the SPA

#306
post #287

Lots of pushback here in the comments. But I can't think of the last time I enjoyed using a SPA website over a multi-page one. The initial loading feels delayed, the page scrolling feels unnatural and jarring (completely opposite of how a native app feels). Also, one of my banks recently changed their old website to a new SPA one. And it is now completely useless. It can't load information in time, so most of the for…

You think bad programming is restricted to SPAs? If they botch the back button in an SPA they will botch other things in an MPA

But this bank's old MPA worked pretty well. By trying to modernize it they completely broke it instead.

Re: It's time for modern CSS to kill the SPA

#307

Lots of pushback here in the comments. But I can't think of the last time I enjoyed using a SPA website over a multi-page one. The initial loading feels delayed, the page scrolling feels unnatural and jarring (completely opposite of how a native app feels). Also, one of my banks recently changed their old website to a new SPA one. And it is now completely useless. It can't load information in time, so most of the for…

The toupee fallacy strikes again here. Gmail, slack[0], Netflix and Spotify are top tier examples - they actually work. Most are true garbage though.

[0] I am firmly on the slack-performance-is-a-disgrace train, but their web client is a great example of a well done SPA - it’s miles better than the app other than notifications.

Re: It's time for modern CSS to kill the SPA

#308
post #287

Earlier quoted context omitted.

You think bad programming is restricted to SPAs? If they botch the back button in an SPA they will botch other things in an MPA

But this bank's old MPA worked pretty well. By trying to modernize it they completely broke it instead.

I’d put big money on it not being the same team that made the new app.

Re: It's time for modern CSS to kill the SPA

#309

I see some people claim that client-side routing isnt the strongest argument for SPA:s. And that is probably true from a technical point of view. However, lots of times users/clients want that even if they dont care about the rest (which is why I love how easy HTMX and Astro make it to add client side routing on top of a normal MPA).

Astro is a breath of fresh air in this space really.

Re: It's time for modern CSS to kill the SPA

#310
post #294
post #210

This article is getting a lot of pushback from the SPA champions, deservedly so, but it makes some good points to. I can’t be the only one, but I myself am getting very tired of the amount of websites where I have to sit and look at a skeleton loading for way too many seconds, then the data loads and it looks nothing like the skeleton. There is an over abundance of really crappy SPAs out there. Sorry not sorry

I thought about your comment, and IMO the reason some (or most) SPAs are badly built comes down to the inexperience of developers and hiring managers. They don't know much about performance, they don't measure it, they don't handle errors properly, they ignore edge cases, and some are learning as they go. Bottom line: they build the SPA, but leave behind a terrible UX and tech debt the size of Mount Everest.

They would have done the same thing with a MPA too though.
Post reply on HN