JavaScript superó, hace ya más de un año, la cifra de los 14 millones de programadores y es, además, es el lenguaje de programación más demandado por los empleadores en remoto, según Remote Hunt, el segundo mejor valorado por los desarrolladores, según Hired, y el más usado (durante diez años consecutivos) por los usuarios de Stack Overflow.
De hecho, hoy en día un alto porcentaje de las aplicaciones web se fundamentan en Node.js, un entorno de tiempo de ejecución basado en JavaScript, que permite ejecutar código en este lenguaje fuera del navegador. Hasta en Microsoft Excel ha sido ya implementado, para dotar de mayor flexibilidad a la aplicación líder en hojas de cálculo.
JavaScript, ¿un lenguaje-dinosaurio?
Sin embargo, según Douglas Crockford, creador del estándar JSON (JavaScript Object Notation), una solución omnipresente a la hora de serializar datos en aplicaciones web, "lo mejor que podemos hacer hoy en día con JavaScript es retirarlo".
"Hace veinte años", explica en una entrevista reciente, "yo era uno de los pocos defensores de JavaScript. Su combinación de funciones anidadas y objetos dinámicos era brillante […] Pero desde entonces, ha habido un gran interés en hinchar aún más el lenguaje, en lugar de en mejorarlo", explica Crockford.
"JavaScript, como el resto de lenguajes-dinosaurios, se ha convertido en un obstáculo para el progreso. Deberíamos centrarnos en el próximo lenguaje, que debería parecerse más a E que a JavaScript. [Pero] aún no tenemos ese nuevo lenguaje".
'E' es una elección atípica como referencia para crear un reemplazo de JavaScript —su sintaxis es similar a Java, y está enfocado a la computación segura—, pero que Crockford sea uno de sus creadores sin duda habrá pesado en su elección. Al margen de eso, sí es cierto que el auge de JS como lenguaje ha venido de la mano, simultáneamente, de un auge de las potenciales alternativas.
Así, los mismos rankings de lenguajes populares que coronan a JavaScript también suelen contar con la presencia de TypeScript, un superconjunto del anterior que añade conceptos como los tipos estáticos o los objetos basados en clases. También es cada vez más demandado WebAssembly, un formato binario ejecutable dentro del propio navegador que podemos desarrollar recurriendo a C/C++/C# y Rust.
Sin embargo, Crockford es realista y conoce las dificultades de plantearse prescindir de JS: "necesitamos que todos los fabricantes de navegadores lo adopten, y que reemplacen simultáneamente DOM por una interfaz bien diseñada. Buena suerte con eso".
Ver 15 comentarios