Javascript SPA applications get less respect from business owners than they deserve.
People see JS and throw their JQuery & some CSS developers at it. Or they use their backend PHP devs who've never written code that runs for longer than one request.
Either way you end up with code written by people who don't understand some of the fundamentals of UI programming.
Angular gets the worst of it because it's the most popular framework. It's exacerbated by the fact that Angular doesn't offer suggestions for a lot of common problems.
I live and breathe Angular SPA applications -- the vast majority of developers that work with it cannot comprehend a well-designed and usable Angular application.
Proper error handling, sane state management, and keeping the codepaths short and easily grok'd is very difficult with Angular -- especially for larger applications. This results in blackholes where users find themselves in strange spots that are inescapable other than a full page refresh.
These are either developers dipping their toe into the front end after living in the back end of things their whole career, jQuery dudes hastily breaking into SPA development to stay afloat in an environment the submitted article exactly mentions, or simply lazy developers that couldn't be bothered due to tight deadlines/budget/whatever.
Angular is popular enough that someone who could distill a reasonable set of concepts and practices for working with it could probably reap some significant rewards in the education/training marketplace.
But if proper error handling, sane state management, and keeping codepaths short are actually "very difficult with Angular," maybe it's not the comprehension powers of the developers using it that are falling short.
A framework should be actively making those things easy.
Exactly. Server-side rendering is incredibly fast with modern browsers which makes a bunch of SPA sites completely infuriating. There are a few things that make sense like little button actions using AJAX but most of the page should just stay as a normal HTTP HTML request.
People see JS and throw their JQuery & some CSS developers at it. Or they use their backend PHP devs who've never written code that runs for longer than one request.
Either way you end up with code written by people who don't understand some of the fundamentals of UI programming.
Angular gets the worst of it because it's the most popular framework. It's exacerbated by the fact that Angular doesn't offer suggestions for a lot of common problems.