| No, they didn't. In fact, they just recently released 1.6.5, yet another in a stream of maintenance updates to the old-generation 1.x branch. Technical rants are one of the reasons I enjoy reading this website, and lot of people here like to shit on Angular. But it seems to me the reasons aren't usually technical, they are more techno-political or ford-vs-chevy type arguments. The term "over-engineered" is often thrown out there, and while that's a hard-to-quantify subjective judgement, it does kind of fit. There are many features in Angular, which do lots of things for you, but at the cost of added complexity and a steeper learning curve. But one of the good aspects of being "over-engineered" is the incredibly long sunset window for Angular 1.x (the previous, and largely incompatible generation; 2.x onwards is "current generation"). Maintenance releases to 1.x keep coming out, some of which (1.5) add a bunch of new stuff that makes it easier to modernize your design even under the old framework, and to port your legacy 1.x code to modern Angular when the time comes. Also, there's an well-documented upgrade path, and (importantly!) an officially supported library (ngUpgrade) that lets you make a gradual transition to modern angular, where your old code runs in Angular 1.x, new components run in modern Angular, ngUpgrade helps integrate the two worlds in a single app in the browser. So you can do a component-by-component migration of a production app over years. As a native app developer (and not a fan of JavaScript) who nevertheless last year joined a team that also has to maintain an old, in-production, customer-facing Angular 1.x app, I really like all these "over-engineered" features. That's not to say I love every single thing about Angular but I think a.) it's pretty good, b.) modern version is better than the old one and going in the right direction, and c.) lots of the complaints are more like "they fucked up the upgrade process from 1.x" (they did) or "Google sux brah" (whatever). |