El lenguaje Java fue creado por Sun Microsystems Inc. en un proceso por etapas que arranca en 1990, año en el que Sun creó un grupo de trabajo, liderado por James Gosling, para desarrollar un sistema para controlar electrodomésticos e incluso PDAs o Asistentes Personales (pequeños ordenadores) que, además, permitiera la conexión a redes de ordenadores. Se pretendía crear un hardware polivalente, con un Sistema Operativo eficiente (SunOS) y un lenguaje de desarrollo denominado Oak (roble), el precursor de Java. El proyecto finalizó en 1992 y resultó un completo fracaso debido al excesivo coste del producto, con relación a alternativas similares, tras lo cual el grupo se disolvió.
Por entonces
aparece Mosaic y la World Wide Web. Después de la disolución del grupo
de trabajo, únicamente quedaba del proyecto el lenguaje Oak. Gracias a una
acertada decisión de distribuir libremente el lenguaje por la Red de Redes y al
auge y la facilidad de acceso a Internet, propiciado por la WWW, el lenguaje se
popularizó y se consiguió que una gran cantidad de programadores lo depurasen y
terminasen de perfilar la forma y usos del mismo. A partir de este momento, el lenguaje
se difunde a una velocidad vertiginosa, añadiéndosele numerosas clases y funcionalidad
para TCP/IP. El nombre del lenguaje tuvo que ser cambiado ya que existía otro
llamado Oak. El nombre “Java” surgió en una de las sesiones de “brainstorming”
celebradas por el equipo de desarrollo del lenguaje. Buscaban un nombre que
evocara la esencia de la tecnología (viveza, animación, rapidez, interactividad).
Java fue elegido de entre muchísimas propuestas. No es un acrónimo, sino
únicamente algo humeante, caliente y que a muchos programadores les gusta beber
en grandes cantidades: una taza de café (Java en argot Inglés americano). De
esta forma, Sun lanzó las primeras versiones de Java a principios de
1995.
Desde
entonces, Sun ha sabido manejar inteligentemente el éxito obtenido por su lenguaje,
concediéndose licencias a cualquiera sin ningún problema, fomentando su uso
entre la comunidad informática y extendiendo las especificaciones y funcionalidad
del lenguaje.