Angular 2.0 Concerns Addressed at ng-conf 2015
After details of Angular 2.0 emerged in October 2014, the community uproar caught the Angular team by surprise. Angular core team members Brad Green and Igor Minar took to the stage at ng-conf 2015 to address these concerns.
One of the biggest worries was about how long Google was going to support version 1.X. To allay these fears, Google has taken a new approach to determining where the community is at and what they want. The Angular 1.X project will continue to be hosted at angularjs.org. Angular 2.0, now in Alpha, will be hosted at angular.io.
The team will look at the traffic to both sites, along with GitHub, in order to determine where the community is still invested. This means that if a majority of traffic is still at angularjs.org, the team will continue to focus resources on 1.X. Angular 1.X will not end life until the majority of traffic has moved to 2.0. "We'll continue releasing Angular 1 releases until the vast majority of you migrate to Angular 2," said Minar.
One of the biggest surprise features of Angular 2 was AtScript, the TypeScript superset used to build Angular 2 apps. In the months since, the Angular team has met with Anders Hejlsberg and Jonathan Turner of the TypeScript team to find ways they could work together. Turner appeared on stage today to discuss how TypeScript has incorporated the annotations feature of AtScript, to be released in TypeScript 1.5+. Because of this, AtScript as a separate language has been discarded. "With this convergence, we're happy to announce that we're going to retire the term AtScript and we're just going to call it all TypeScript from here on out," said Green.
A huge complaint about Angular 2 was that there was no migration path. At ng-europe, Minar hinted that, while there was no migration path at that time, there might be something in the future. It was announced today that using the new router, a new "incremental" migration path would allow developers to transition from 1.X to 2.0. Because ng-router is one of the first components to span both 1.X and 2.0, it is a natural point developers can use to include pieces of 2.0 in their 1.X apps and also 1.X views in their 2.0 code. This option may not be good for mobile apps as it requires a larger payload, but it offers a way to ease the transition.
As far as a ship date, Green mentioned that the first production Angular 2.0 app at Google will ship in May 2015. While Green gave no release date, it provides a glimpse at the timeline.
TypeScript is the Problem
The advantage of a library or framework is in the time it saves you on development: if it takes more time to learn the tool than you get out of developing with it, you should kick it out the door immediately. I expect that you'll see a solid band of traffic to 1.X branch for way longer than Google would like, and they are ultimately going to reject this move or just close up shop on people waiting the plain JS implementations.
This seems monumental
F# has a type provider for TypeScript in FunScript so any TypeScript definitions can be easily used in FunScript / F# code.
Re: TypeScript is the Problem
Angular 2 itself is implemented in TypeScript.