Hacker News new | ask | show | jobs
by eric_b 3156 days ago
Angular 2 will not help your team deliver valuable web experiences to customers any more quickly or reliably than Angular 1. Probably almost certainly the opposite.

I'd argue most teams, if they're willing to go all-in on an SPA framework (which for most apps is a waste of time and money imo) would be better off with React + TSX.

Edit: Vue is probably closer to the "Angular way" with databinding, but component to component communication really needs something additional like Vuex. So, really, just use React/Redux and you'll get a bigger community with more real-world apps being built with the tooling.

10 comments

I disagree. In my experience, developing a REST API and SPA with Angular2+ has been the quickest development cycle I've experienced.

Not only is it very pleasant to work in, but the end product for the user is high quality.

Vue is great, but it's lack of proper component support makes it a bit annoying to work with.

I have just migrated an app that was on Angular 2 RC4 to Angular 5 with little to no migrational woes.

The transition from Angular1 - Angular2 sucks, but ng2 and beyond is trivial.

Vue has one of the best component models I've seen. Angular's is some odd mix of SystemJS, HTML, RxJS, and TS...and it's dependent on it's custom CLI for optimization. It's probably the most complicated component model of the modern JS frameworks. And there's no JSX support on Angular.
> Vue is great, but it's lack of proper component support makes it a bit annoying to work with.

Wait...what are you talking about?

>>Vue is great, but it's lack of proper component support makes it a bit annoying to work with.

Sounds like you haven't used Vue recently. As in, over the past year and a half.

vue 2 has the best component structure hands down.
I'd consider Ember to also be a top choice (if not the top choice) for teams who want to just go all-in on a framework and reap the productivity benefits. From all the frameworks I've tried, it's the one that's allowed me to focus the most amount of my time on actual product code, not plumbing.
Same here! Although it seems that Ember is getting little love from the HN crowd, we are very happy that we chose it for our company two years ago. I would encourage everyone who is looking be extremely productive and don't worry about plumbing too much to take a deeper look into it.
So much this. With Ember you can truly focus on shipping features.
This is false. Angular 2 is a remarkable improvement over Angular 1. I started off with Angular 2 and Angular 1 code makes me want to barf. Typescript is a major improvement over vanilla javascript.
I agree with you. I came from a native app (macOS/iOS) background and joined the team maintaining an AngularJS app, and also worked on an Angular 4 app.

I felt like Angular 2 was the Angular team repudiating all the mistakes they made with the original AngularJS.

They don't even seem comparable. I too want to barf each morning when I work on the ancient JavaScript AngularJS app, and then moving in the afternoon to the more modern Angular 4 project, written in TypeScript, feels like stepping out of my time machine back into the modern era, with a spring in my step and a cool breeze wafting through my beard.

I would have no objections to joining a modern Angular project, whereas I would absolutely, positively never join an AngularJS project again (unless the fate of the human race depended on it, or something like that).

Love Angular and it's definitely a modern framework. Ironically it feels like I'm going back in time to old school RAD development with Delphi. I've been following Anders Hjelsberg all my career.
Vue has one big advantage over React for an Angular shop: the views are often trivial to port, while JSX is further syntactically from Angular templates.
IMO the difference in the quantity and quality of packages available for React more than makes up for that difference.
I would say that Vue's core libraries are very well put together. Vuex, Vue-router, vue-resource, vue-axios, etc are all simple and easy to use. Personally, I wouldn't say either community has better supporting libs than the other.
Quantity: React has __hands down__ more packages and will have more packages than Vue for years to come.

Quality: I respectfully disagree. React does have quality packages, while Vue has official and high quality packages.

Moreover many of the react's package (eg: redux) can be used with Vue.

Well, being able to reuse other people's software (number of npm packages available for the library/framework) is an important variable when choosing a tool.
You can go Polymer 2.x or Vue 2.x both feel similar to angular 1.5 `component()` approach. React might be a nice option too but it is probably requires more different way of thinking than the former options.
React+MobX would probably be an easier transition and MobX is easy enough to learn and pretty popular.
I disagree, our experience with Angular 4 is very good, we are iterating at very high velocity, at a very large scale (Enterprise Tools, Telemetry, Dashboards, Admin tools), and we wouldn't do it any other way. Testing tools are awesome, so the end product is solid if you use them, and with Lazy Loaded Modules + AOT Compilation the applications are very performant.
Vue and React are 99% similar with databinding. Vue/React are basically the same looking at it from an Angular perspective.
With vue you don't need vuex for most things actually. Medium sized projects can just have a global vue component they use as a central store and just set and get data on it. Simple. Transparent. Works like a charm for a lot of cases. Actually most people i know are not big enough for anything else.
TSX ? Is that some new thing now ? Or you meant JSX ?
T stands for Typescript. Otherwise identical to JSX