News for hackers. Stuff that matters.
Re:The State of Meteor Part 2: What Happens Next by NhanH on Wednesday January 20, 2016 @09:05PM (#10942891)
Can someone chime in as to whether React won the frontend war? As in the super majority of new project will be developed in React. I'm not that well-versed in the Node ecosystem (I got my news from ... HN). But from little I've seen, I found it hard to believe that React would be able to react the place where jQuery was (is?).

Heck, we even have a post staying on the front page today lamenting the inferiority of React.

Re:The State of Meteor Part 2: What Happens Next by mkozlows on Wednesday January 20, 2016 @11:35PM (#10943383)
It would be basically impossible for React to reach jQuery-like levels of adoption. The beauty of jQuery was that you could take an old, crufty pre-jQuery application, drop in a single script tag, and start writing nicer code immediately with no fuss (and refactoring old crufty code as you touched it).

You can't do that with React. I can't even imagine what it would take to migrate some 2010-era J2EE enterprise app to React, but it certainly wouldn't be just dropping in a script tag and writing your new code more cleanly.

Which means that React can only be the product of choice for new development moving forward; and even then, given how complex it is, only some subset of apps are going to bother with it. Nobody ever said "this application is too simple to bother with jQuery," because jQuery helped even simple apps, but there are legitimately huge classes of apps for which React is just massive overkill.

Re:The State of Meteor Part 2: What Happens Next by gravity13 on Thursday January 21, 2016 @02:03AM (#10943799)
The comments in here today are a bit out of touch.

>You can't do that with React.

You can. Other than React's rather hefty size, there's nothing stopping you. React is just a view layer, is unopinionated about how you get your data to it, and for rendering to a DOM needs nothing other than a DOM node to render into.

Try it out. You can have 100 different React components slowly eating your legacy app alive. You just gotta be smart about it.

Re:The State of Meteor Part 2: What Happens Next by frandroid on Thursday January 21, 2016 @02:32AM (#10943892)
> You just gotta be smart about it.

They said _no fuss_.

Re:The State of Meteor Part 2: What Happens Next by rafaquintanilha on Thursday January 21, 2016 @09:20AM (#10945280)
Drop a React component in the middle of a legacy project is IMO less fussy then jQuery code. I say that because components are standalone, so you won't mix logic for that piece.
Re:The State of Meteor Part 2: What Happens Next by d0m on Wednesday January 20, 2016 @09:11PM (#10942916)
One interesting thing about React is how some big names (Amazon, Apple, Netflix, Yahoo) rallied to React instead of creating their own libraries, whereas they all had their own-cooked libraries before.

Also, which is more of a personal opinion, but I've tried a lot of frameworks/libraries and React is the first one that really "clicked" with the way I work and design. I don't think it will "replace jQuery", but for modern single web application, I think React is the way to go. Or said differently, "Nobody will get fired for choosing React" ;)

Re:The State of Meteor Part 2: What Happens Next by ef4 on Thursday January 21, 2016 @12:21AM (#10943505)
> some big names (Amazon, Apple, Netflix, Yahoo) rallied to React

That's a bit of an overstatement. At least three of those four are also shipping major Ember apps and investing heavily in that ecosystem. (The only one I don't know for sure is Amazon.)

Re:The State of Meteor Part 2: What Happens Next by Bahamut on Thursday January 21, 2016 @01:26AM (#10943701)
And at least 3 also ship apps with Angular as well, and I know Netflix has some eyes on Angular 2 as well with several key figures from Netflix having helped shape some of Angular 2's direction (at least through the push for observables).

This war talk is silly, and sort of akin to fanboyism that is often seen in stuff like video game consoles - lot of preaching & rhetoric, short on hard numbers and other meaningful metrics/facts.

Re:The State of Meteor Part 2: What Happens Next by d0m on Thursday January 21, 2016 @07:31AM (#10944773)
Sorry, I didn't mean to attack other frameworks.

I was referencing stuff like this: http://www.youtube.com/watch?v=eNC0mRYGWgc&t=8m18s

Re:The State of Meteor Part 2: What Happens Next by DCoder on Thursday January 21, 2016 @01:36AM (#10943729)
Random data point: last time I checked, the AWS management console web interface was built in Angular.
Re:The State of Meteor Part 2: What Happens Next by yazaddaruvala on Wednesday January 20, 2016 @09:33PM (#10942978)
I have read blog posts by Yahoo and Netflix.

While I believe you, I'm just curious how they are being used by Amazon or Apple. Do you have references about this?

Re:The State of Meteor Part 2: What Happens Next by TheAceOfHearts on Thursday January 21, 2016 @05:32AM (#10944394)
Apple held a ReactJS meetup on December and they showed off a declarative graphing library for React that they'll probably open source some day.
Re:The State of Meteor Part 2: What Happens Next by silviogutierrez on Wednesday January 20, 2016 @09:46PM (#10943023)
I was about to abandon Angular 1 for future projects and go all in on React. And it looked fairly promising, except everything is its own little module. Good for UNIX, but not so good for modules that change so often.

Then I started catching up on Angular 2 and TypeScript. It looks like the right mix between new and opinionated. I just don't have time to research a module for data, one for building, one for testing, and one for validation. That's where an opinionated framework comes in handy.

I do hope Angular 2 takes off.

Any other Angular people out there weighing in between React and Angular 2? If I were a betting man, I say it's going to come down to those two for the next few years.

Re:The State of Meteor Part 2: What Happens Next by Matthias247 on Thursday January 21, 2016 @08:33AM (#10945020)
I'm no classical web developer, so I'm not be the best reference, but I used both a little bit for some realtime (mainly websocket driven) webapp for state visualization of remote embedded devices. I started with React, and I'm now on ng2 and happy with it (apart from some hopefully soon fixed bugs).

Imho both are ok. What I did not like that much with React was that the virtual DOM did not play nice all the time (strange effects can happen if you place non VDOM aware widgets inside it) and if you not take special care (keys) then reconcilation can produce a messed up representation. These things seem less problematic in ng2.

An unexpected very pleasant surprise for me was using the dependency injection mechanism in ng2 - I did not expect it do be useful because I never used something like this before. But now if any sub-sub-subcomponent in my view needs access to a status I don't need to pass it all the way down through unrelated components via props (like in React) but can directly inject it only in the using component. I also had good experiences with MVVM architecture from other projects with other frameworks, so I am happily using this approach also in ng2. For the model component I'm using service objects which are encapsulating the current state, exposing it through observables and are injected into the component (viewmodel) through DI. What I like here is that I can bind the view directly to the observables from the model with the help of async pipes and thereby get an auto-updating behavior with zero boilerplate code.

Apart from that there are obviously the major differences - angular has an inbuilt router, React not. But still I wouldn't think of Angular2 as something highly opinionated, you still have lots of flexibility.

As I am a big fan of typescript a factor for me was also that ng2 is typescript-first and I don't have to rely on possibly incomplete or 3rd party type definitions. But that might be more of a political factor, the basic typescript support for react is also good (it can even check the types of props in JSX - which currently not possible for ng2 templates) but many 3rd party libraries don't seem to provide type definitions.

Re:The State of Meteor Part 2: What Happens Next by stephenhuey on Wednesday January 20, 2016 @11:30PM (#10943363)
We've been using Angular on one project and for a new application we were considering using just React with Node or maybe those two with Angular 1 or 2 also. However, after getting started with Aurelia we may stick with it and never consider Angular again!
Re:The State of Meteor Part 2: What Happens Next by d357r0y3r on Friday January 22, 2016 @12:36PM (#10954223)
Try Aurelia + TypeScript. I've used Angular 1, Angular 2, and Aurelia, and I think Aurelia is the best choice between those right now.

React is fundamentally different, but Aurelia (and its predecessor, Durandal) were always about making component-oriented apps.

Re:The State of Meteor Part 2: What Happens Next by suhelk on Wednesday January 20, 2016 @10:55PM (#10943262)
I totally agree with you.

It took me lots of time just to figure out to write a 'PROPER' react application. There are too many modules to choose from for routing, data acess etc..

Then I tried with Angular 2, it look me less time to get up and running with forms, routing and everything...

Re:The State of Meteor Part 2: What Happens Next by stephenhuey on Wednesday January 20, 2016 @11:31PM (#10943366)
It may take you even less time with Aurelia!
Re:The State of Meteor Part 2: What Happens Next by suhelk on Friday January 22, 2016 @07:12AM (#10952248)
Aurelia too seems interesting. Since I have done development in Angular 1.x before, Angular 2.0 was the natural choice.

From the look of it, Aurelia seems promising, need to look into more before I need to comment anything.

Re:The State of Meteor Part 2: What Happens Next by apalmer on Wednesday January 20, 2016 @09:19PM (#10942932)
No,

Or to rephrase, No React has not won the frontend war in the way and scale that jQuery won the front end war. At one point something like over 50% of all new (at the time of its peak) web applications big and small included it? No. I mean jQuery actually really lost its stranglehold primarily because the browsers actually started incorporating most of its core ideas into themselves to a point where it wasn't 'necessary' anymore.

However as far as alpha geek mindshare, react has definitely overtaken everything else in the frontend world. At least from what I can tell.

Re:The State of Meteor Part 2: What Happens Next by joshowens on Wednesday January 20, 2016 @10:10PM (#10943106)
I think when you look at the companies using React now, you start to understand why it is gaining ground quickly. Couple that with the fact that Facebook has dumped a lot of efforting into the tooling around it, it makes sense to me.
Re:The State of Meteor Part 2: What Happens Next by JDDunn9 on Thursday January 21, 2016 @12:13AM (#10943482)
I think React won the HN front page, where anyone who criticizes it or promotes another technology gets down-voted. However outside this bubble, ReactJS has a very long way to go before adoption rates make it a contender for top library (http://trends.builtwith.com/javascript/javascript-library).
Re:The State of Meteor Part 2: What Happens Next by VeilEm on Thursday January 21, 2016 @12:22AM (#10943512)
React is probably too hard for casual scripters. I disagree with the OP's point about it being the new jQuery. It is however perfect for a solid engineering solution to building great web applications. It's for engineers who care about churning out a well tuned architecture and not for those who are just creating an CRUD app that just grows organically.
Re:The State of Meteor Part 2: What Happens Next by sgdesign on Thursday January 21, 2016 @12:53AM (#10943613)
I'd be curious to know what you find hard about React?

Also a CRUD app that just grows organically needs a well-tuned architecture too, once it grows large enough.

Re:The State of Meteor Part 2: What Happens Next by VeilEm on Thursday January 21, 2016 @10:54AM (#10946019)
With React you have to Reason about abstract things pretty early, especially if you're using something like Redux. You have to know how to think about code in the abstract. A lot of people are just trying to get specific behavior on their website. They're thinking "I want a form that does this x", "I want a button that does y". They don't may not know how to think about abstract architecture and they may not see the value in it.

React doesn't really let you write code this way easily. You will run into problems with the lifetime cycle. You will be constantly fighting the library. Angular on the other hand lets you write a basic CRUD app without having to worry about those things. It's friendlier for people new to development.

I'm not advocating for Angular, I very much dislike it and I exclusively write using React, I just think React too hard or too much for normal people.

Re:The State of Meteor Part 2: What Happens Next by SignMeTheHELLUp on Thursday January 21, 2016 @03:09AM (#10944012)
React won. And that's a good thing. Anyone reading this has one less decision to make. If you're building a JS frontend you want to be using React. You'll also want Redux to structure your application around React.
Re:The State of Meteor Part 2: What Happens Next by rmason on Wednesday January 20, 2016 @11:22PM (#10943340)
Take a look at the trend line and React still has a long ways to go to catch Angular:

https://www.google.com/trends/explore#q=reactjs%2C%20angular...

Having stated that I am trying to get up to speed on React in order to make a knowledgeable comparison to Angular 2. I've got friends who are way better JavaScript programmers than I am, ones with VC backed startups built with Angular 1, who are really struggling to learn Angular 2.

Re:The State of Meteor Part 2: What Happens Next by santoriv on Wednesday January 20, 2016 @11:44PM (#10943403)
Is that trend line really an indication of Angular's popularity relative to React?

It took a few weeks to get decent with Angular, over a month to get productive with Ember, and about a few days to figure out React.

That trend line might be more indicative of Stack Overflow searches.

Re:The State of Meteor Part 2: What Happens Next by xxxxxxxx on Wednesday January 20, 2016 @11:52PM (#10943427)
Interesting. Looks what happens when you add jQuery:

https://www.google.com/trends/explore#q=reactjs%2C%20angular...

Re:The State of Meteor Part 2: What Happens Next by lolc on Thursday January 21, 2016 @01:34AM (#10943723)
I could imagine that people omit the 'jquery' keyword nowadays because it's implied.
Re:The State of Meteor Part 2: What Happens Next by fourstar on Thursday January 21, 2016 @01:37AM (#10943732)
React only won the people who aren't satisfied with their current framework/situation because they didn't have the attention span to stick to one thing for more than a year. Still using Backbone. Still works.
Re:The State of Meteor Part 2: What Happens Next by sergiotapia on Thursday January 21, 2016 @01:43AM (#10943741)
I completely agree, with the huge caveat that React works so incredibly well with Meteor it ruins the experiences with React elsewhere. It really is a match made in heaven. Give it a try.
Re:The State of Meteor Part 2: What Happens Next by desireco42 on Wednesday January 20, 2016 @09:09PM (#10942911)
I think it did, but this is JS we are talking about and tide will turn quickly.
Re:The State of Meteor Part 2: What Happens Next by thebouv on Wednesday January 20, 2016 @11:51PM (#10943421)
jQuery and React aren't in competition. Not even really tackling the same problems (though obviously there is some overlap in some areas) and neither one of them are frameworks.

React is overkill for a website. It is great for a web application. But your blog about recipes or hats for cats? You're just over-engineering at that point.