Any framework like React (which embeds html tightly with javascript) is flawed at its core.
HTML itself is declarative in nature. All frameworks should embrace this.
By looking at React docs, I can tell you from my experience that it'll be pain in the s to maintain a large scale React application.
AngularJs' declarative way gives an app maintainability and highly test-ability. These two things are not the luxury but a must have requirement for any large scale long-live application.
Of course you're free to agree or disagree with their argument, but I wouldn't assume they are just newbs who are unaware of standard best practices. They know the "rules" and are breaking them consciously.
This is what you typically get at the end in an Angular app. You don't need to "figure out" things where they are and what they are, and what they do in DOM.
I don't have any practical experience with angular (but I'd like to, and definitely think its testability is a step in the right direction).
That said, I've found react to be very declarative, especially over the raw jQuery and Backbone I'd used before. Most of the components I write have no state, and render() declares how to render them from any state, without having to worry about how to change things on state changes.
As I said here the last time a new React version came out, we're using React for more or less all new JS development at Khan Academy, and we're loving it.
In short, it's simple (very little to learn) and very fast. One other big thing I love is that it encourages building reusable and composable components. Angular has a lot of the same structure, but if you end up building directives then you have to drop down to manual DOM manipulation again if you want speed.
I just read through all the React docs and the tutorial. My first impression is it looks and reads like Flex for Javascript, both for the JSX markup and the component lifecycle events. I'm not saying that is a bad thing, just an observation.
HTML itself is declarative in nature. All frameworks should embrace this.
By looking at React docs, I can tell you from my experience that it'll be pain in the s to maintain a large scale React application.
AngularJs' declarative way gives an app maintainability and highly test-ability. These two things are not the luxury but a must have requirement for any large scale long-live application.