3 ms·
1) It's too hard. And I think this argument gets way less attention than it deserves. Most businesses these days win or lose based on agility and time to market
by tboyd47 10y ago
1) It's too hard. And I think this argument gets way less attention than it deserves. Most businesses these days win or lose based on agility and time to market. The more energy you spend innovating your tech stack, the less energy you have available to innovate your business model.
2) Javascript bloat. This is increasingly important as mobile gradually overtakes desktop, and cheap Android phones proliferate. The more client-side code, the more your performance is limited by your users' own crappy devices.
3) It's not trendy anymore. There was only one truly exemplary, popular SPA, and that was Gmail. Isomorphic/universal is the new hotness, and that requires server-side rendering.
4) The Stack Overflow Effect[1] didn't take. Every client-side framework is so painful that people can't wait to migrate their production apps to something different. So now there are dozens, probably hundreds of frameworks in production, and each community lacks the stability and size to allow newcomers to bootstrap quickly.
5) It's just bad UX. People still manage to get SPAs wrong in 2017. My bank just rolled out a new SPA interface to their suite of consumer budgeting tools, and didn't bother with the History API. Every time I navigate back, it takes me out of the suite entirely and I have to find my way back manually to where I was. I think this problem is a consequence of #1 and #4, though.
-------------------------
[1]: http://svdictionary.com/words/stack-overflow-effect http://svdictionary.com/words/stack-overflow-effect