

AngularJS 2.0: Crazy Like a Fox? - jffry
http://www.intridea.com/blog/2015/3/24/angularjs-2-0-crazy-like-a-fox

======
lsiunsuex
Serious question - when AngularJS 2.0 is finally released, is there any reason
to leave 1.x if it works perfectly fine? I understand 1.x may not be supported
and new "plugins" or what have you might not be created for it anymore, but
i'm months into development of an app using 1.x and I really don't want to
start over right now.

~~~
jffry
If 1.x suits your needs, fine. Angular 2 seems like it will have improved
performance and be overall simpler, but 1.x will keep being supported for the
time being. Plus it's open source, so if many people want to stay on 1.x,
that's achievable.

That said there will also be a migration path for your apps from 1.x to 2.0,
and they have explicitly stated that you can migrate portions of your app to
2.0 without rewriting everything, so you can dip your toes in and see how you
like it.

------
jffry
The author's remarks echo my feelings on the state of front-end dev well:

    
    
      [Angular and Ember] are both smart, valid, and potentially
      wildly successful approaches. The fact that there are
      different teams of smart people building software to make
      the front-end better, and that those teams have different
      and directly conflicting philosophies is fantastic.
    

This was also a theme echoed recently at ng-conf. Shift the mindset from "X
framework is better unilaterally" to "X framework is really good at Y but less
good at Z". They're tools; nobody's going around saying "hammers are better at
everything than screwdrivers"

~~~
dragonwriter
> They're tools; nobody's going around saying "hammers are better at
> everything than screwdrivers"

But different front-end frameworks are, arguably, more like different brands
or designs of hammers than they are like hammers vs. screwdrivers. And while
different brands of tools in the same class may have tradeoffs that make some
better for particular uses and others better for other uses, quite often it is
the case that people do perceive one is better (or, more often, worse) than
some other for every task. Those that are widely perceived as better in that
sense over time come to dominate until an alternative that it doesn't beat in
all uses becomes available, those that are perceived as worse in that sense
gradually (or quickly, depending on the strength of the perception and the
degree people who already started using the tool are locked in) are abandoned
and left behind.

~~~
jffry
Yeah, my analogy wasn't the greatest. Substitute "claw hammers" and
"sledgehamemrs" and "deadblow hammers" instead.

What excites me right now is there's a lot of great, interesting, useful tools
available right now (React, Ember, Angular, to name a few). Maybe one or more
won't ultimately pan out, but they're great opportunities to try new
approaches and learn from each other.

To build a web app with one of these new tools exposes you inherently to the
risk that this tool might be abandoned in the next 1-3 years. It's up to you
to weigh the risks of a new tool against its benefits. If long-term stability
is something your project highly depends upon, then perhaps these new tools
aren't the appropriate choice, and something like jQuery/Backbone is a better
option.

