At M-Way we now work more than 18 months with AngularJS and we love it. It both powers our desktop as well as our mobile web apps. But in the rapidly moving field of web technologies we all wonder what’s next. I’d like to give a short introduction where we are coming from, to better understand where we think it’s going to go in the next months with Angular.
Where we started with Angular?
We started playing around with Angular when the framework was in the version 1.0. It was quite impressive how fast something could be achieved with the framework. But in the beginning we had our difficulties with its different syntax and approach of templating. Everything began really to kick-off when AngularJS 1.2 was released.Due to internal strategy changes, we shifted our entire frontend stack towards Angular. It took only a few days until we started to love it. We were even more impressed when AngularJS 1.3 was released in last years fall. Features like the ng-model-options, the controller-as-syntax and of course the performance improvements were what we really needed at this time. So things looked great, we were excited about what’s next.
The announcement of Angular 2.0
So, what’s next?
After ng-conf 2015 we knew Angular 2.0 will not arrive with a big bang. Instead it will be possible to use AngularJS 1.X components alongside Angular 2.0 components. And the team at Google is working hard to provide a better transition than it looked like in the first place.In fact they are working on 1.4 and will release at least 1.5 and 1.6 if needed. For 1.4 two big features are arriving. First the brand new router is back ported from 2.0 to 1.4 and will replace the old one. This will be an important step to use AngularJS 1.X and Angular 2.0 components alongside, since they will use basically the same router. Second we have the new internationalisation module. It will replace the functionality of third party modules like angular-translate.
For Angular 2.0 many new things will arrive. One of the most interesting things were explained by Misko Hevery at ng-conf, the usage of directives inside HTML. It really makes more sense to us and we think this will help making Angular 2.0 friendlier for beginners. So everything looks fine again? Yes! And it gets even better.
A glance into the crystal ball
I’m really excited about the new module system. Its an easy but powerful way to organize your code in separate files and you don’t have to worry about using a proprietary system which is hard to configure. Another really simple but handy feature are the template strings. Having to use string concatenation to do templating stuff is really annoying. With templating strings you now can do multiline strings with variables in it without having to concatenate two or three or even more parts together. And the best part: you can write ES6 today when transpiling back to ES5. You just need a transpiler like Babel, and some features are already built into your browser.
The Angular team is writing Angular 2.0 completely in ES6 and they recommend using it for your application development as well. Speaking of Angular, what are the next steps? Well the guys from Angular gave us a lot of information at ng-conf, for example there was a talk, how you can prepare your 1.3 application for 2.0. We think playing around with Angular 2.0 is fun but we will wait for a stable release to really get things started. More important we think its best to know the technologies around Angular 2.0. There are ECMAScript 6 and Typescript. Especially getting to know ES6 will be crucial and it is considered ‘done’, so you can start wrapping your head around all those amazing new features.