Me resulta extraño que no se haya hablado de Node.js, una plataforma muy interesante para desarrollar aplicaciones de red con mucha carga.
"Node.js es una plataforma creada con el motor JavaScript de Chrome, para desarrollar aplicaciones de red rápidas y escalables. Node.js se basa en un modelo que responde a eventos, sin cuellos de botella de Entrada/Salida que lo hacen ligero y eficiente, perfecto para aplicaciones en tiempo real con mucha carga de datos y que corren a través de múltiples dispositivos."
Pros
Las bondades de Node.js todavía están por descubrir, todavía no había (que yo conozca) un sistema tan centrado en los eventos (programación asíncrona he leído por ahí que lo llaman). Sin embargo, sí que han podido demostrar lo bien que se defiende bajo una carga intensiva de trabajo, especialmente cuando otras tecnologías sensibles de quedarse colgadas (por ejemplo una base de datos), no afecten al resto de peticiones que le llegan a la aplicación.
Sus usos también están todavía por descubrir, he visto algunas demos montando servidores web y de chat y realmente tiene muy buena pinta. Aplicaciones cliente no he visto ninguna de momento, pero por lo menos ya podemos escribir código JavaScript fuera del navegador.
Viene con un sistema de descarga de módulos al estilo apt-get, como ya has podido ver en otras tecnologías como Ruby, Drupal, ...
Contras
Es una tecnología joven, demasiado joven. Tanto que ahora mismo, si estás buscando una biblioteca que haga tal cosa o tal otra, seguramente te la vas a tener que escribir tú mismo. Sí que existen algunos proyectos, pero todo es muy reciente:
· Express (Web Framework)
Si bien Node.js es muy escalable, escribir en JavaScript es susceptible de que se nos vaya de las manos y acabe convirtiéndose en el monstruo del espagueti volador, tendrás que andar con ojo.
Conclusión
Merece mucho la pena seguirle la pista a cualquier tecnología que gire en torno a JavaScript, parece que se está convirtiendo en un lenguaje bastante polivalente gracias a proyectos como este, Unity (motor 3D), Appcelerator (aplicaciones móviles y de escritorio) y tantos otros.
Ya existen empresas interesadas en desarrolladores para Node.js (tablón de trabajo).
Webcasts
Ahí van un par de videos de presentación muy interesantes, están en inglés.
¡Saludos!