Ir al contenido principal
Bethemesh
BiografíaHistoria de la informáticaPrincipiante

Brendan Eich: JavaScript, del prototipo de Netscape al estándar web

Cómo Brendan Eich creó el primer JavaScript en Netscape y participó en su transformación en el lenguaje estandarizado de la Web.

Publicado el 17 de agosto de 2026Actualizado el 15 de septiembre de 2026Lectura : 9 minPor Yann Bastien
Retrato de Brendan Eich, creador de la primera versión de JavaScript
Mostrar el índice
  1. Antes de Netscape: un ingeniero de lenguajes
  2. 1995: dar comportamiento a las páginas web
  3. Scheme y Self bajo una apariencia familiar
  4. Cuando las peculiaridades se convierten en contratos de compatibilidad
  5. De JavaScript a ECMAScript
  6. Un lenguaje transformado por sus usuarios
  7. Mozilla y la Web abierta
  8. Por qué Brendan Eich sigue siendo importante en la historia de la Web
  9. Cronología
  10. Preguntas frecuentes
  11. ¿Brendan Eich creó realmente JavaScript en diez días?
  12. ¿JavaScript es una versión de Java?
  13. ¿Qué diferencia hay entre JavaScript y ECMAScript?
  14. ¿Por qué JavaScript utiliza prototipos?
  15. ¿Brendan Eich creó Node.js?
  16. ¿Por qué siguen existiendo las antiguas rarezas de JavaScript?

Brendan Eich está ligado a una de las anécdotas más conocidas de la historia de la programación: JavaScript habría sido «creado en diez días». La frase es correcta si se refiere al primer prototipo, construido en Netscape en mayo de 1995. Resulta engañosa si da a entender que el lenguaje actual nació terminado en aquel plazo. JavaScript es fruto de tres décadas de normalización, implementaciones rivales, correcciones y compromisos con una de las reglas más difíciles de negociar de la Web: las páginas existentes deben seguir funcionando.

La trayectoria de Eich resulta interesante precisamente por esa tensión. Bajo una enorme presión de tiempo, diseñó un lenguaje fácil de insertar en una página, pero combinó ideas de Scheme y Self bajo una sintaxis familiar para quienes programaban en C o Java. Una necesidad comercial inmediata terminó convirtiéndose en el lenguaje nativo universal del navegador.

Antes de Netscape: un ingeniero de lenguajes

Brendan Eich nació en Pittsburgh en 1961. Estudió matemáticas e informática y obtuvo en 1986 un máster en la Universidad de Illinois en Urbana-Champaign. Antes de Netscape trabajó, entre otras empresas, en Silicon Graphics y MicroUnity, con compiladores y sistemas.

Ese recorrido es importante para entender 1995. Eich no improvisaba sin referencias: conocía los compromisos entre diseño, implementación y rendimiento, y tenía especial interés por Scheme, un dialecto de Lisp en el que las funciones ocupan un lugar central.

1995: dar comportamiento a las páginas web

A mediados de los noventa, la Web seguía siendo sobre todo un conjunto de documentos. HTML describía una página y el navegador la mostraba; muchas interacciones requerían una nueva petición al servidor.

Netscape Navigator era entonces uno de los navegadores dominantes. Netscape quería que los autores pudieran añadir comportamiento directamente en el navegador sin una cadena de desarrollo pesada. Paralelamente, colaboraba con Sun alrededor de Java, orientado a aplicaciones más estructuradas. El nuevo lenguaje de script debía ser más ligero, estar disponible desde HTML y funcionar sin compilación previa.

Eich llegó a Netscape en abril de 1995. En mayo construyó en unos diez días el prototipo llamado Mocha. El trabajo continuó antes del lanzamiento: el lenguaje pasó a llamarse LiveScript y, a finales de 1995, JavaScript, cuando Java gozaba de una enorme visibilidad comercial.

El nombre provoca confusión desde entonces. JavaScript no es una versión simplificada de Java. Sus sistemas de tipos, modelos de objetos y entornos de ejecución son diferentes. La semejanza más visible procede de una sintaxis deliberadamente familiar, heredera de la familia C: llaves, operadores y estructuras de control.

Scheme y Self bajo una apariencia familiar

Bajo esa superficie, JavaScript trata las funciones como valores de primera clase. Pueden almacenarse en variables, pasarse como argumentos o devolverse como resultado. Esta flexibilidad, familiar en Scheme, encaja especialmente bien en un navegador dirigido por eventos, donde una función puede responder a un clic, a una entrada del usuario o al final de una operación.

Para los objetos, Eich se inspiró en parte en Self. En lugar de hacer de las clases el mecanismo fundamental, un objeto puede delegar la búsqueda de propiedades en otro mediante una cadena de prototipos. La sintaxis class, incorporada mucho después, no sustituyó este modelo: ofrece una forma más familiar de trabajar sobre él.

JavaScript adoptó además tipado dinámico y numerosas conversiones implícitas. Estas decisiones facilitaban escribir scripts pequeños con rapidez, pero también generaban comportamientos sorprendentes. Algunas de las peculiaridades más famosas del lenguaje se entienden mejor como consecuencia del compromiso original: debía ser accesible, expresivo y estar listo en muy poco tiempo.

Eich desarrolló al mismo tiempo el primer motor, antecesor de SpiderMonkey. Diseñar a la vez la sintaxis y su implementación aceleró la experimentación, pero dejó poco margen para reconsiderar ciertas decisiones antes de que páginas públicas empezaran a depender de ellas.

Cuando las peculiaridades se convierten en contratos de compatibilidad

En la Web, un error publicado es difícil de borrar. Cuando miles de sitios dependen de un comportamiento, cambiarlo de forma incompatible puede romperlos. Las conversiones implícitas, ciertas reglas históricas de ámbito, el comportamiento de this o la coexistencia de null y undefined forman por ello parte de una herencia que JavaScript moderno debe gestionar en lugar de eliminar sin más.

Esta restricción explica tanto las asperezas del lenguaje como su extraordinaria continuidad. Los estándares suelen añadir mecanismos más claros o seguros sin retirar bruscamente los antiguos.

También conviene distinguir dos capas: JavaScript no es el navegador. El lenguaje define valores, funciones, objetos y operaciones. API como el DOM, los eventos, fetch o el almacenamiento pertenecen al entorno web. Las incompatibilidades históricas podían proceder del lenguaje o de las API que lo rodeaban.

De JavaScript a ECMAScript

El éxito de Netscape produjo pronto implementaciones competidoras. Microsoft introdujo JScript en Internet Explorer, mientras los navegadores desarrollaban comportamientos y API propios. Sin una base común, los autores de sitios podían verse obligados a escribir código diferente para cada navegador.

Netscape presentó el lenguaje a Ecma International en 1996. La primera edición de ECMA-262 apareció en 1997 con el nombre ECMAScript. El cambio fue decisivo: las reglas centrales del lenguaje dejaron de depender únicamente del navegador de un fabricante.

JavaScript sigue siendo el nombre histórico y habitual; ECMAScript es la especificación normalizada. Los navegadores implementan esa especificación y añaden después las API propias de la Web.

La normalización no fue lineal. El ambicioso proyecto ECMAScript 4 chocó durante los años 2000 con fuertes desacuerdos sobre cuánto debía cambiar el lenguaje. El compromiso desembocó en ECMAScript 5 en 2009. ECMAScript 2015 (ES6) supuso después un gran salto con módulos, let y const, sintaxis de clases, funciones flecha y muchas otras mejoras. A partir de ahí, la especificación adoptó un ritmo anual.

El fracaso de ES4 deja una lección importante: hacer evolucionar un lenguaje omnipresente es tanto un problema de gobernanza como de ingeniería. Hay que mejorar la plataforma sin dividir las implementaciones ni abandonar miles de millones de líneas de código existente.

Un lenguaje transformado por sus usuarios

La historia posterior de JavaScript supera ampliamente a Eich. Durante los años 2000, Ajax popularizó interfaces capaces de comunicarse con el servidor sin recargar páginas completas. Las bibliotecas y, más tarde, los frameworks ayudaron a estructurar aplicaciones cada vez más complejas.

Desde 2008, motores como V8 elevaron notablemente el rendimiento mediante compilación JIT y otras optimizaciones. En 2009, Ryan Dahl creó Node.js, utilizando V8 para ejecutar JavaScript fuera del navegador. El lenguaje llegó así a servidores, herramientas de desarrollo y entornos que el proyecto de Netscape de 1995 nunca había previsto.

Eich no creó V8 ni Node.js, ni diseñó personalmente las numerosas funciones añadidas después a ECMAScript. Su papel histórico consiste en haber creado el núcleo inicial y participado en su normalización. La plataforma moderna es una construcción colectiva de comités de estándares, equipos de motores, fabricantes de navegadores, autores de bibliotecas, desarrolladores y usuarios.

Mozilla y la Web abierta

Tras la adquisición de Netscape por AOL, Eich se convirtió en una figura importante del proyecto Mozilla. Ocupó responsabilidades técnicas y directivas. Firefox, lanzado en 2004, ayudó a recuperar una competencia fuerte entre navegadores y a impulsar estándares web abiertos.

En 2014, Eich fue brevemente director ejecutivo de Mozilla antes de dimitir en medio de una controversia pública relacionada con una donación política realizada en 2008. El episodio forma parte de su trayectoria profesional, pero es independiente de la valoración técnica de su papel en JavaScript.

En 2015 cofundó Brave Software, creadora del navegador Brave, que pone el acento en la protección frente al seguimiento y en un enfoque diferente de la publicidad en línea. El proyecto prolonga su relación con los navegadores, pero es distinto del diseño y la normalización de JavaScript.

Por qué Brendan Eich sigue siendo importante en la historia de la Web

La aportación duradera de Eich no consiste en haber diseñado él solo el JavaScript moderno. Consiste en haber dado al navegador un lenguaje en un momento decisivo de la expansión de la Web: suficientemente accesible para difundirse de inmediato y suficientemente expresivo para superar pronto los pequeños scripts para los que parecía destinado.

Sus influencias ayudan a explicar esa capacidad de adaptación: funciones de primera clase, objetos basados en prototipos y dinamismo permiten estilos de programación muy distintos. Sus compromisos explican también muchas de sus dificultades. Ambas dimensiones pertenecen a la misma historia.

Sobre todo, JavaScript muestra cómo un lenguaje desplegado en la Web deja rápidamente de pertenecer a su creador. Se convierte en un contrato colectivo entre una especificación, varios motores, API, herramientas y una enorme cantidad de software existente. Su éxito depende tanto de esa continuidad como de su diseño original.

Cronología

  • 1961: nace Brendan Eich en Pittsburgh.
  • 1986: obtiene un máster en la Universidad de Illinois en Urbana-Champaign.
  • Abril de 1995: se incorpora a Netscape.
  • Mayo de 1995: construye el prototipo Mocha en unos diez días.
  • 1995: Mocha pasa a llamarse LiveScript y después JavaScript.
  • 1996: Netscape presenta el lenguaje a Ecma International.
  • 1997: se publica la primera edición de ECMA-262.
  • 1998: Eich participa en la creación del proyecto Mozilla.
  • 2004: lanzamiento de Firefox.
  • 2009: ECMAScript 5; Ryan Dahl lanza Node.js.
  • 2014: breve etapa de Eich como director ejecutivo de Mozilla.
  • 2015: ECMAScript 2015 y cofundación de Brave Software.
  • Hoy: ECMAScript continúa evolucionando y JavaScript sigue siendo el lenguaje nativo universal de los navegadores web.

Preguntas frecuentes

¿Brendan Eich creó realmente JavaScript en diez días?

Creó el primer prototipo, Mocha, en unos diez días en mayo de 1995. El lenguaje siguió cambiando antes de su lanzamiento y evolucionó durante décadas mediante estándares e implementaciones diferentes.

¿JavaScript es una versión de Java?

No. El nombre y parte de la sintaxis crean una semejanza engañosa. JavaScript tiene tipado dinámico y se basa fundamentalmente en prototipos; Java fue diseñado con otro modelo y otro entorno de ejecución.

¿Qué diferencia hay entre JavaScript y ECMAScript?

ECMAScript es la especificación estándar que define el núcleo del lenguaje. JavaScript es el nombre habitual de sus implementaciones. En un navegador, JavaScript trabaja además con API Web como el DOM.

¿Por qué JavaScript utiliza prototipos?

Eich se inspiró en parte en Self. Los objetos pueden delegar la búsqueda de propiedades en otros objetos. La sintaxis moderna de clases no sustituye este mecanismo, sino que se construye sobre él.

¿Brendan Eich creó Node.js?

No. Ryan Dahl creó Node.js en 2009 utilizando el motor V8. Su importancia muestra hasta qué punto JavaScript superó su función original dentro de las páginas web.

¿Por qué siguen existiendo las antiguas rarezas de JavaScript?

Porque la compatibilidad hacia atrás es una restricción fundamental de la Web. Eliminar o cambiar un comportamiento antiguo podría romper sitios todavía accesibles, por lo que el lenguaje suele evolucionar añadiendo mejores alternativas mientras conserva gran parte de su pasado.

¿Te ha resultado útil este artículo?

Colección

Lenguajes de programación

12 / 26

  1. 01Grace Hopper: de los primeros compiladores a COBOL
  2. 02John Backus: FORTRAN, la notación BNF y el rechazo del código máquina
  3. 03Dennis Ritchie: el lenguaje C en el corazón de Unix
  4. 04FORTRAN: demostrar que un compilador podía competir con el ensamblador
  5. 05El lenguaje C: hacer portables los sistemas sin ocultar la máquina
  6. 06Niklaus Wirth: de Pascal a Oberon, diseñar mediante la simplicidad
  7. 07Bjarne Stroustrup: diseñar C++ sin renunciar al rendimiento
  8. 08Pascal: aprender a programar haciendo visible la estructura
  9. 09C++: de C with Classes al C++ moderno
  10. 10Programación orientada a objetos: objetos, mensajes y abstracciones reutilizables
  11. 11Guido van Rossum: crear Python para que el código sea legible
  12. 12Brendan Eich: JavaScript, del prototipo de Netscape al estándar web
  13. 13James Gosling: el ingeniero que dio origen a Java
  14. 14Python: legibilidad, baterías incluidas y un ecosistema mundial
  15. 15Java: escribir una vez, ejecutar en cualquier lugar
  16. 16JavaScript: el lenguaje que hizo interactiva la Web
  17. 17Ken Thompson: de Unix a Go, la simplicidad como método
  18. 18John McCarthy: Lisp y la idea de programar con símbolos
  19. 19Alan Kay: Smalltalk y el ordenador como medio personal
  20. 20Barbara Liskov: la abstracción que hizo modular el software
  21. 21Robin Milner: ML, la prueba asistida y los lenguajes de la interacción
  22. 22Brian Kernighan: AWK, Unix y el arte de explicar el código
  23. 23Anders Hejlsberg: de Turbo Pascal a C# y TypeScript
  24. 24Larry Wall: Perl, el lenguaje que conectó las herramientas de Internet
  25. 25Yukihiro Matsumoto: Ruby y la felicidad del programador
  26. 26Rasmus Lerdorf: PHP y la democratización de la Web dinámica
HistoriaHistoria de la informáticaPrincipiante

JavaScript: el lenguaje que hizo interactiva la Web

Del prototipo de Netscape a ECMAScript, Ajax, Node.js y TypeScript: cómo JavaScript se convirtió en la plataforma universal de programación web.

17 de agosto de 20268 min