Sí vale la pena aprender Typescript

Some people really like static type checking.

A simple vista parece que Typescript se siente como JavaScript pero con anotaciones lo cual es una ventaja “static typing”.

TypeScript Deep Dive

Typescript

Un lenguaje es “statically typed” si el tipo de una variable se conoce en su tiempo de compilación. La ventaja principal es que todos las verificaciones de tipos pueden ser realizadas por el compilador, lo que permite atrapar de manera temprana una gran cantidad de errores estúpidos.

Un lenguaje es “dynamically typed” si el tipo de una variable se interpreta en tiempo de ejecución, esto favorece al desarrollador ya que puede escribir código un poco más rápido, ya que no tiene que especificar el tipo cada vez.

La mayoría de los “scripting languages” tienen esta característica ya que no hay compilador para hacer “static typechecking” de todos modos, pero el desarrollador puede terminar buscando un error que se debe a la mala interpretación del tipo de una variable por parte del intérprete. Por suerte, la mayoría de los scripts tienden a ser pequeños, así que los errores no tienen tantos lugares para esconderse.

Por supuesto es posible desarrollar con ES6 y ES7, por ejemplo, usando Babel, lo interesante es que Typescript proporciona características similares a las de Babel, pero con el extra de la comprobación de tipos (es opcional).

Quickstart

The core concepts of Angular 2