¿Asana utiliza JavaScript del lado del servidor?

Actualización (enero de 2013) : esta respuesta está bastante desactualizada, pero la respuesta sigue siendo sí. Ya no escribimos Lunascript, solo Javascript. Y ahora que han tenido más tiempo para madurar y las comunidades se han desarrollado a su alrededor, estamos buscando utilizar más tecnologías estándar de la comunidad como Node para respaldar nuestro Javascript del lado del servidor.

, utilizamos Javascript del lado del servidor.

Todo el framework Luna está escrito en Javascript. El marco se completa con elementos estándar / necesarios, como una abstracción del almacén de datos y un despachador, pero lo más interesante es que incluye una abstracción para la reactividad, es decir, actualizar automáticamente la interfaz de usuario a medida que cambian los datos.

Este marco ejecuta Lunascript (después de compilarlo en Javascript). Sin embargo, también puede escribir a mano contra él en lo que es como escribir “ensamblado” para Lunascript. A largo plazo, esperamos invertir en nuestro compilador y centrarnos en el primero. En el corto plazo, hay muchas razones para enfocarse en esto último, principalmente el control sobre el rendimiento y evitar la fricción que acompaña a cualquier nivel de abstracción adicional, especialmente un nuevo lenguaje.

Como una de la primera generación de aplicaciones basadas en Javascript del lado del servidor, gran parte del tiempo de ingeniería al comienzo de la compañía se dedicó a cosas como un sistema de objetos rápido y API de subproceso. Javascript sigue siendo un lenguaje inmaduro para el desarrollo del lado del servidor, pero creemos que es conveniente tener un solo idioma en el cliente y el servidor vale la pena la inversión inicial. Hemos adoptado muchas nuevas tecnologías en Asana, y no todas han funcionado, pero definitivamente creemos que Javascript del lado del servidor será una gran ventaja competitiva para nuestra aplicación.