What’s wrong with Angular.js
Daniel Steigerwald

What is wrong with “What is wrong with Angular”

1 — He basically said templating is not “real development”. Yet we use it since the early days of the web ! Doing the databinding on the JavaScript side is not easier, it is a real pain to get and maintain the right selectors or to produce DOM with JavaScript methods. What do you think ? You’re not going to work on HTML, because you’re a “real developer” ? Dumb
2 — No it is not an anti-pattern. User inputs are generally all specified and under control, so it is a precious time & code saver instead of plain old listeners. Also, every binding is optional & configurable on Angular
3 — Because he thinks a total abstraction of the DOM and diff calculation is faster and better for battery ? React use a virtual DOM for diff calculation which prevents unnecessary DOM operations that are known to be slow. That said, Object.observe will obviate the need for dirty checking and thus keep only the necessary operations on the DOM. Calculating diff should also be greatly simplified thanks to the distinction between value operations that provide Object.observe. Early tests show performance improvement by 20x-40x vs dirty checking (https://mail.mozilla.org/pipermail/es-discuss/2012-September/024978.html). So he has no basis to assert that React is faster and consumes less battery power than Object.observe.
4 — Of course you have to change the view and the controller if its a new feature ! What’s wrong with that ? It is called separation of concerns, and a far better idea than putting everything in the same place
5 — Angular is fast enough to get really nice demos with Ionic on my lowcost smartphone. And Angular 2.0 will be even faster thanks to Object.observe. Also, what is the problem with HTML parsing ? That’s the number one feature of every web browser
6 — Isomorphic websites is a nice concept to try to fix issues with obsolete browser support and JS-unaware crawling bots. Angular is made for _modern_ platforms
7 — The evening I started to learn Angular, I made a basic chat application and a tic tac toe game. When I learned Ember, it took me two days to make a recipe book application, and at the end my code was crap. Angular is excellent to quickly have working demos. I agree the next “industrial” step is quite more complicated.
8 — What is wrong is thinking that a single framework should be suitable for every web application in this world
9 — Open source ? Giant community ? Hello ?
10 — this complete refactor is a great thing for Angular and will make previous points even more inaccurate than they were already.
I’m not an “ngFanboy”, I use Angular beside others (Backbone, Knockout ❤). Sometimes I do not use any framework at all and it is fine. This answer is not about supporting Angular, it's about criticizing a weak argumentation. There are some aspects of Angular I dislike, and other guys have done much better job to describe them: http://larseidnes.com/2014/11/05/angularjs-the-bad-parts/ ; note that the majority of these bad parts should go away with Angular 2.0, so I'm glad to see this major update happening no matter who complain.