History of Java
History of Java
There are number of things in history of Java which will make it very interesting to know those facts about Java language.
There was a small team named as “Green Team” whose members were three college friends named as “James Gosling”, “Mike Sheridan”, “Patrick Naughton” who originally initiated a revolutionary task to develop a language for digital devices like television, set-up boxes, etc., but it was too advanced for the digital cable television industry at that time.
After some time they came to know that it suited for internet programming. So, they move forward to work more on it by giving (by James Gosling) it first name i.e. “Greentalk” and file extension was “.gt”. After that it was called as “Oak” after an oak tree that stood outside Gosling’s office. Later it came under the project called “Green Project” for further development and then finally renamed as “Java” form Java coffee. James Gosling designed Java with a style of C/C++ syntax that system and application developer would find it familiar and feel comfortable to work on it. Really they made the interesting and dynamic history in programming world.
Why Oak name?
The name “Oak” is a name of tree that was a symbol of strength. That is why, the Oak tree was chosen as national tree of many countries such as Germany, France, U.S.A, etc. That is why it was called as “Oak” after an oak tree that stood outside Gosling’s office. In 1995, Oak was renamed as “Java” because it was already a trade name of Oak technologies.
How Java & why name Chosen?
As the name Oak was already a trade name, the members suggested few new names for the language. The suggested names were “silk”, “jolt”, ”dynamic”, “revolutionary”, “DNA”, “cool”, “lively”, “Java”, etc. But they wanted something that can reflect the essence of technology. So, James Gosling chose “Java” as the top most choice along with “Silk”. Since, Java was so unique and fulfilling the thoughts, most of the team members preferred Java as final name.
Java is a name of an island of Indonesia where first coffee was produced and called as Java coffee. That is why the language got named as Java. The word Java has no meaning as it’s just a name not an acronym. In 1995, Time magazine considered it as “One of the ten best products of the year 1995” and published an article based on it.
Principles to be achieved
The Green team gave some opinion about the project that should have the following:
- It should be simple and gather tested fundamentals and features from the earlier language in it.
- It should have standards sets of libraries and APIs with basic and advanced features bundled in it.
- It should get rid of concepts requiring direct manipulation of hardware (here, memory) to make the language safe.
- It should be platform independent and may be written on every platform once i.e. “Write once Run anywhere” (WORA).
- It should be embeddable in web browsers.
- It should be able to manipulate network programming out of the box.
- It should have the ability for a single program to multi-task and do multiple things at a time.
The first public implementation was released as Java 1.0 by Sun Microsystem in 1995 with a promise of WORA (Write once, Run anywhere) providing no cost run-time on popular platforms. Major web browser soon incorporated the ability to run “Java applet” within the pages which makes Java so popular. Then Java 2 (initially J2SE 1.2 released in December 1998-1999) with new version had multiple configurations for different platforms. Then again J2EE with APIs for enterprise applications and J2ME with featured APIs for mobile applications were released.
In 2006, for marketing purpose, Sun renamed new J2 versions as Java EE, Java SE, and Java ME. On November 13 of 2006, Sun released much of its Java Virtual Machines (JVM) as “free and open sources software” (FOSS), under the term of GNU General Public Licence (GPL). The making of JVM core code was finished on 8th May 2007 and made available as free/open-source software.
Later Java language was acquired by Oracle corporation and it describe itself as the “” Steward of Java technology with a relentless commitment to fostering a community of participation and transparency”. This did not prevent Oracle from filling a lawsuit against Google shortly after that for using Java inside Android SDK (Software Development Kit). On 2nd April 2010, James Gosling resigned from Oracle. Currently Java software runs on everything from laptops to data centres, games consoles to scientific supercomputers.
The major release versions of Java are as following.
Note: Current stable version is Java SE 8.
- JDK alpha and beta (1995)
- JDK 1.0 (Initial Release – 21st January, 1996)
- JDK 1.1 (Initial Release – 19th February, 1997)
- J2SE 1.2 (Java 2 – 8th December, 1998)
- J2SE 3 (Kestrel – 8th May, 2000)
- J2SE 1.4 (Merlin – 6th February, 2002)
- J2SE 5.0 (Version 1.5.0) (Tiger – 30th September, 2004)
- Java SE 6 (Version 1.6.0) (Mustang – 11th December , 2006)
- Java SE 7 (Version 1.7.0) (Dolphin – 28th July, 2011)
- Java SE 8 (Version 1.8.0) (18th March, 2014)
Three Editions of Java
As we know that, in 2006, Sun renamed new J2 versions as Java SE, Java EE and Java ME respectively for marketing purpose. So let’s take a look on each of the three editions on by one.
Java Standard Edition (Java SE)
Java SE or Standard Edition of Java is a platform for development and deployment of portable code desktop, client-server applications and applets which run in web browser. It uses object oriented programming languages and it is a part of Java software platform family.
Java SE contains varieties of general purpose APIs such as Java APIs for the Java class library, Java language specification, Java virtual machine specification, etc. One of the most well-known implementations of Java SE is Oracle Corporation’s JDK (Java Development Kit).
Java Enterprise Edition (Java EE)
Java EE or Enterprise Edition of Java is a platform that provides an API and runtime environment for developing and running enterprise software, network and web services, and other large-scale, reliable, multi-tiered, secure network applications and that integrate with legacy technologies.
“Java EE extends Java platform, Java standard Edition (Java SE) by providing an API for object-relational mapping, distributed, multi-tiered architectures and web-services.”
Java EE platform incorporates a design based largely on modular component running on an application server which handles transactions, security, scalability, concurrency and management it is deploying in order to enable developers to concentrate more on the business logic of the components rather than on infrastructure and integration tasks.
Some of its versions are as following:
- Java EE 5 (11th May, 2006)
- Java EE 6 (10th December, 2010)
- Java EE 7 (28th May, 2013)
- Java EE 8 (Expected first half of 2017)
Java Micro Edition (Java ME)
Java ME or Micro Edition of Java is a platform designed for embedded systems such as mobile devices, set-top boxes, industrial automatic controls, etc. The Java programs that are developed and run on mobile devices are known as “MIDlets” and that run on embedded devices are known as “Xlets”.
Java ME devices implements a profile which are the “mobile device information profile” aimed at mobile devices such as cell phones, and the “personal profile” aimed at consumer products and embedded devices like set-top boxes and PDAs.
Thank you for your patience 🙂