Having used both react and Angular... Angular is a massively over-engineered mess. It abstracts away so much of web app development that anything built using it will be obsolete the moment Google stops supporting it.<p>It abstracts away error handling, the http client(????), compilation, uses (still) non standard decorators to function. I would be fine with this if those were broken parts of JavaScript, but those are some of the few things that work fine.<p>Instead of paving over the bad parts of JS they built a platform within a platform. Not to mention the learning curve is insane because of this. Might as well throw your knowledge of JS and browsers API's out the window because you won't be using any of those in Angular4.<p>It's the new webforms
Also: Angular 2's Change Detection is a flaming tire fire of needless complexity.<p>Everyone benchmarks a Todo app and concludes that it has comparable perf to React. In practice, Angular 2's Change Detection makes apps incredibly slow.<p>Change Detection in a reasonably large app resembles a bucket of water, sloshing back and forth. Every template event and timer causes your Component tree to be re-rendered every time.<p>Because Angular doesn't encourage immutable data by default, and its ngFor directive optimizes for mutating data... Apps have a tremendous amount of trouble migrating to OnPush at a later time. It's a mine field riddled with gotchas and edge cases.<p>Angular2 lacks coherence. Or maybe its unifying theme is massive, needless complexity. It's not worth the trouble.
Interesing article, I hadn't spent the time to follow the drama of these frameworks as we are still using AngularJS 1.X at work. I enjoy working with AngularJS and would be satisfied to build future projects with it.<p>Will I be missing out if I choose to stick with an end-of-life framework that does everything I need or is it worth while to make the jump and invest the time to relearn something that I have already solved? Truly confused here.