DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
View Events Video Library
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

UK-US Data Bridge: Join TechnologyAdvice and OneTrust as they discuss the UK extension to the EU-US Data Privacy Framework (DPF).

Migrate, Modernize and Build Java Web Apps on Azure: This live workshop will cover methods to enhance Java application development workflow.

Kubernetes in the Enterprise: The latest expert insights on scaling, serverless, Kubernetes-powered AI, cluster security, FinOps, and more.

A Guide to Continuous Integration and Deployment: Learn the fundamentals and understand the use of CI/CD in your apps.

Related

  • Evolution of Interfaces in History of Java
  • Reading an HTML File, Parsing It and Converting It to a PDF File With the Pdfbox Library
  • A Maven Story
  • JPA Criteria With Pagination

Trending

  • Extend Your GPTs With C#
  • JBang: How to Script With Java for Data Import From an API
  • Unblock Your Software Engineers With Unblocked
  • Service Mesh and Management Practices in Microservices
  1. DZone
  2. Coding
  3. Java
  4. A Short History of Java

A Short History of Java

It's Java's 22nd birthday! Let's look back in time at how the world's most popular language formed and how Java got to be the juggernaut it is today.

Jamie Mercer user avatar by
Jamie Mercer
·
May. 23, 17 · Opinion
Like (42)
Save
Tweet
Share
48.5K Views

Join the DZone community and get the full member experience.

Join For Free

Java, the wildly accessible and ever-present programming language, is celebrating its 22nd anniversary today. Twenty-two years. To put that into perspective, if Java was a person, they would be old enough to have finished college, have a celebratory alcoholic drink, gamble in Iowa and get married without parental consent in Mississippi!

A lot of people today might take for granted the impact Java has had, not just on computing, but on the day-to-day lives of non-programming folk.

Java is on our smartphones, powering Android devices and millions of apps. It reads our credit and debit cards at shop tills and pings financial information between businesses and our banks. It allows us to play games, such as Minecraft, across multiple devices, creating an infinite sandbox of creative opportunities.

What Java is used for

Basically, Java is all around us, but that wasn’t always the case; it actually had very humble beginnings.

It all started in 1990, when Sun Microsystems engineer Patrick Naughton became increasingly annoyed with the state of Sun’s C++ and C APIs and was given the opportunity to create an alternative language as part of The Stealth Project.

The Stealth Project soon changed to the Green Project, with Mike Sheridan and James Gosling joining the ranks, and the group began developing new technology for programming next-generation smart appliances.

Initial ideas revolved around combining Mesa and C and producing an object-orientated environment in C++.

They decided to rule out C++ because it needed too much memory and because its complexity led to developer errors; the lack of garbage collection was resulting in programmers having to manually manage system memory, which often resulted in mistakes. They also wanted a platform that would port easily to all types of devices.

Gosling attempted to modify and extend C++ (a development he refers to as "C++ ++ --"), but quickly abandoned this approach in favor of creating an entirely new language which he called Oak, named after the tree that stood outside his office.

The new language took 18 months to finish. By the fall of 1992, the team was able to present their first demonstration where they built a personal digital assistant called Star7, which had a graphical interface to assist the user. It also featured a smart agent called “Duke,” who would later go on to become the mascot of Java.

The Green Project became Firstperson, a subsidiary of Sun Microsystems, and started to look at building highly interactive devices. They were approached by Time Warner to create an interactive set-top box but responded with a proposal for an entire set-top box platform! The TV industry thought that this gave too much power to the user and Firstperson lost their bid before eventually being rolled back into Sun after they were unable to find further funding in the TV industry.

In 1994, after several days of brainstorming, the team refocused the platform on the World Wide Web, which was gathering a lot of momentum at the time. With the dawn of graphical web browsers such as Mosaic, the team figured that the Internet could evolve into the same highly interactive medium that they had envisioned for cable TV. Naughton would write a small browser named WebRunner (an homage to the movie Blade Runner) which would later become HotJava.

In the same year, Sun changed the name of the Oak language to Java, after a trademark dispute from Oak Technology. The name 'Java' was the result of a brainstorming session which James Gosling described as “continuous wild craziness.”

There seems to be some disagreement on who suggested Java as a name, with Gosling adding “It felt like most of the words in the dictionary were yelled out at some time or another.” Rumors of the name being suggested because the developers were holding mugs of coffee in their hands during the meeting are yet to be refuted, but if the origins of the Oak name are to be believed doesn't seem beyond the realms of possibility…

Although Java 1.0a was available for download in 1994, it wasn’t until the 23rd of May 1995 that Java would see its first public release. Java 1.0a2, along with the HotJava browser, was announced by Sun Microsystem’s Director of Science, John Gage, at the SunWorld conference.

Since the release of JDK 1.0 on January 23, 1996, the Java language has undergone several changes. Since J2SE 1.4 in 2002, the Java Community Process (JCP) has governed the overall evolution of the language. The JCP uses Java Specification Requests to specify any additions or changes to the platform.

In 2004, the version name format changed and instead of being J2SE 1.5 (which it is still known as internally), it was known as J2SE 5.0. The name format changed once again in 2006 with the launch of Java SE 6; this format is currently still in use today.

Java Version History

JDK 9 will launch in July 2017 and promises the design and implementation of a standard module system for the Java SE platform, and to apply that system to the platform itself and to the JDK.

And that brings us up to date! Remember on May 23 to doth your cap and raise a glass to Java, a truly versatile programming language. 

Java (programming language) History (command)

Opinions expressed by DZone contributors are their own.

Related

  • Evolution of Interfaces in History of Java
  • Reading an HTML File, Parsing It and Converting It to a PDF File With the Pdfbox Library
  • A Maven Story
  • JPA Criteria With Pagination

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends: