3 ms·
+1000 The biggest things for me are probably the excessive amount of resources used, the long load times, how hard it is to get things "right" (like not breaki
by cletus 9y ago
+1000
The biggest things for me are probably the excessive amount of resources used, the long load times, how hard it is to get things "right" (like not breaking the back button) and links taking awhile to load because we have to load your stupid SPA (if they work at all).
SPAs did win out big in one area though. On mobile. Except on mobile they're called "apps". As much as many HNers like to chafe against native mobile development as they yearn for the open standards of the Web, native apps have basically "won". Users love em.
I guess that leaves desktop.
I do wish more people asked "does my Web presence need to be an SPA?" or even "will it benefit significantly from being an SPA?" because I feel like the answer more often than not is "no".
- EGreg 9y agoNative apps are downloaded once at install time and the user expects and tolerates the delay. That's the major difference. You can wrap your SPA in a native app and thus cache the requests ahead of time. But develop on the web, and use Cordova.
- Skinney 9y agoHow hard it is to get things right? It's not hard at all. It's builtin with frameworks like Ember or Angular, and for React you got react-router which does things correctly by default. It's just bad programming. I don't even understand why people would make an SPA without a url-router. Doesn't that just make development harder/more anoying? Why would links take longer to load in a SPA? CSS, Javascript and the like should already be downloaded, there should be much less networking involved. Also. My SPA's come in at around 120-130kb minified (no gzip). That's about the same as "pure-html" sites which include jquery. I do agree with your last point though. Pure content sites, or even "mostly"-content sites, is probably better off with backend generated html.
- tyrw 9y agoI wouldn't say that mobile apps "won" anything, just that networks and hardware aren't fast enough yet for browser on mobile. Desktop started the same way, and just as most of the desktop apps have moved to the browser, so too will mobile apps. React native, cordova etc are just the early signs of this transition.
- sidlls 9y ago"SPA" and "native" are not even remotely the same thing.