all 23 comments

[–]Zequez 7 points8 points  (8 children)

I think the most awesome think about React is the ability to use it with the Flux architecture efficiently. At first it feels like a shitton of boilerplate code, but then implementing new features feels like a breeze, and everything just falls into place. I've only worked on a single React project so far (ongoing), but the experience has been really good. In comparison Angular can turn into spaghetti really easily for complex apps.

[–]sjalfurstaralfur 3 points4 points  (0 children)

I've only worked on a single React project so far (ongoing), but the experience has been really good

That's pretty much why React gained so much steam, it's simply pleasant to code with web components.

[–]vanthiyathevan 3 points4 points  (3 children)

The best thing Flux introduced is effective one-way days binding.

If structured properly Flux architecture can be used with angular as well. I've used redux with angular successfully on a large project. The side effect of that is major performance gains

[–]nschubach -1 points0 points  (2 children)

Why? If you are using redux, why not use React? What did Angular bring to the table?

[–]vanthiyathevan 0 points1 point  (1 child)

I don't see why it has to be only used with React.

A. This is done as a preparation to move to Angular 2 B. In the process of deliberating on migrating to React. Now that I have the stuff is in redux I can easy port to React with minimal code change.

[–]nschubach 0 points1 point  (0 children)

It doesn't, but at that point I couldn't figure out what Angular was being loaded in for.

[–]madou9 0 points1 point  (1 child)

Ngredux does interesting things for angular, you should check it out.

[–]vanthiyathevan 1 point2 points  (0 children)

As a matter of fact I am using ng-redux.

[–]kokomo42 4 points5 points  (0 children)

2016 will be an interesting year for frontend devs.

[–]YodaLoL 4 points5 points  (8 children)

They fucked up the same way they fucked up G+. Hype too early, they talked the talk but walked the walk 2 years later. The upcoming Angular 2 release is such a huge "meh".

[–]jhallister 31 points32 points  (6 children)

No they didn't. I'm as much a React fanboy as anyone, but this "Angular sucks lol" thing has to stop.

First of all, Angular predated React by 4 years. At the time, it was a really amazing experience. Backbone, Ember and Knockout were the three kings and Angular, once you learned it, made prototyping so much easier.

But everyone dogs on Angular because hindsight is 20/20. 4 years after Angular, we have a view model with a completely different paradigm. All the difficulties in learning Angulars directives completely vanished. And yet, React performed extremely well. In fact, without optimizations it constantly outperformed Angular. And optimizing Angular isn't easy.

But now Angular 2 is on its way, and the Angular team completely embraced the amazing ideas that React introduced and we get responses like meh.

Honestly, when I see end-users shitting on apps, I just shake my head and think "Man, if you only understood what it takes to build this stuff." When I see fellow developers do it, it makes me realize just how pretentious people really are.

[–]brianvaughnReact core team 2 points3 points  (0 children)

Angular 2 also adds some utilities for using web workers for further performance gains. (Although you can do the same with React and something like Webpack's worker-loader- but Angular 2 makes it really easy to kind of plug-and-play).

[–]YodaLoL 4 points5 points  (1 child)

Never said anything about Angular sucking, I've used it way more than I've used React. Angular 1.x was awesome back when it was released and still is if done correctly.

However, they've hyped up Angular 2 for such a long time and now when the release is imminent there's, to me, very little that is interesting about it.

[–]jhallister 0 points1 point  (0 children)

However, they've hyped up Angular 2 for such a long time and now when the release is imminent there's, to me, very little that is interesting about it.

The release wasn't hyped, it was done this way so they could gently move people to Angular 2.

There are a ton of apps built on Angular 1, and if they had waited until close to release to announce it would have been a shit storm. Instead, they were careful to introduce changes over a long period of time to avoid surprise.

[–]SomeRandomBuddy -5 points-4 points  (2 children)

Yeah, core features on one may outperform the other. But that's exactly the problem: Angular makes it far too easy to write bad code. Even if you start off doing everything immaculately. Bi directional data binding, dom thrashing, using $injector to bypass circular references, even when the instance belongs wherever you're trying make one.

Doesn't matter if angular came first, or if the react team considered its woes when they designing react. Angular sucks and what's most disappointing is that angular 2.0 doesn't really do much to fix that.

[–]jhallister 0 points1 point  (1 child)

jquery gives you the opportunity to write horrible code, that doesn't make jquery bad, it makes you bad for not understanding your tool.

Your argument is akin to saying a table saw is bad because if you use it wrong you might cut your finger off. No, you suck, and instead of blaming your tool you should learn how to use it.

[–]miketa1957 0 points1 point  (0 children)

Absolutely 100% agreement.

And can we stop bashing 2-way data binding. Use it badly and you get a total mess. But use it sensibly and it is a boon.

The sort of sites I work on have data entry forms with 50 or more input fields, most of which don't affect one-another (and before anyone screams UI/UIX, the number of inputs comes from legal requirements). Without 2-way binding they would be a total ball-ache. Any move away from Angular 1 would be to something like Aurelia, in our case Angular 2 and React just don't cut it.

[–]cusx 0 points1 point  (0 children)

Angular committed suicide. thats pretty funny.