Java - A Language Of The 90s
Article Index
Java - A Language Of The 90s
Java - The Language of Business

Despite its technical shortcomings Java did seem like a good corporate bet. You probably wouldn't be blamed for suggesting using Java. Partly this was because of the backing of Sun and partly because it was open source and hence future proof. Of course, Sun put a lot of effort into marketing it - which was strange for a hardware company.

The move to the server started with J2EE, the Enterprise Edition. This introduced the idea of an application server - a web server that lets you create the server side part of a client server app. Using technologies such as JavaServer Pages, Servlets and Enterprise JavaBeans, it was, and is, possible to build the server-side logic needed to deal with client requests. Java application servers - Tomcat, Jetty, JBoss, Geronimo, GlassFish and so on -were created to serve Java EE apps. 

Java was early to market with well-developed server-side facilities by 1999. At around the same time Microsoft only had classic ASP, which was similar to JSP. For a full response to J2EE, Microsoft had to wait for .NET ASP in 2002.

Eventually Java acquired the seal of approval of companies like IBM which got on the bandwagon not because Java was good or revolutionary, but because there wasn't anything better. Microsoft's C# didn't appear until 2002 and was proprietary. Microsoft's other language, Visual Basic, was good but had the image of being a toy language used by amateurs and it wasn't fully object-oriented. C++ was object-oriented, but had a reputation for being a difficult language suited to technical tasks. Interestingly, Python was around at the time, but it was a very minority language and it wasn't until 2000 that it started to gain support. Even today it is still regarded as something of an enthusiasts' language, being suitable for science and stats but not serious business software. So the choice for business use was Java or some even more unsuitable language.

But how unsuitable was and is Java?

Java had the advantage of seeing what had been wrong in C++. Its syntax and approach to data was very much simpler and regular. Everything was an object and there was no dropping down to lower-level approaches to get things done. The "everything is an object" philosophy may be simple and powerful, but Java didn't allow functions to be objects - it still doesn't. This makes passing functions difficult - you have to pass an object that has the function as a method.

Then there is the verbosity. You can't write concise code in Java there is a lot of duplication and boilerplate code. To see this you simply have to compare any Java code with the Kotlin equivalent. This is what makes Kotlin an attractive alternative.

All this said, Java is a language that you can learn to live with and be quite happy with. So much so that a long-time Java programmer often can't see that there might be a better way to do things. Even after 30 years Java still doesn't have a credible rival in the sphere of banking and finance and this is amazing after so long, In other spheres, Python has recently taken a portion of the Java empire, surpassing it as a general-purpose language and the language most widely used in education.

Since Java's launch many languages have been developed to run on the JVM - Clojure, Groovy, Scala, Kotlin and more  - but none has displaced Java from its position.

Oracle's Impact

In 2010 Oracle, a company that has a reputation for making money and doing so in an aggressive fashion, took charge of Java thanks to its acquisition of Sun Microsystems. This led to fears that Java would be compromised in some way so as to generate an income for Oracle. To an extent this worry was proven justified. There are now two versions of Java  - the free  OpenJDK which can be used without a commercial licence for any purpose and Oracle JDK which can be used for testing and development without a commercial licence, but needs a paid-for licence if you use it in production.

Android and Java

Perhaps the biggest consequence of Oracle controlling Java was its effect on Android. The Android project adopted Java as its main programming language for native apps and this should have been one of the biggest boosts to the language's popularity and ensured its relevance in the mobile phone-oriented world. However, this was clouded by the protracted legal dispute in which Oracle sued Google for copyright infringement over the use of Java APIs in Android. After more than a decade of litigation, culminating in a U.S. Supreme Court decision in April 2021, the Court ultimately ruled 6-2 in favor of Google, finding that Google's use of the Java APIs constituted fair use.

While Google finally won, the prolonged uncertainty about the outcome had led Google to adopt Kotlin, the JVM language pioneered by JetBrains from 2010 and open-sourced in 2012, as the preferred language for Android. 

Rise of the Open JDK

While Oracle held 75% of the JDK distribution market in 2020, this had dropped to 42% by 2023 and to as low and 21% the following year. One major reason for this decline were changes Oracle made to its Java SE (Standard Edition) licensing model particularly the shift to a "per-employee" model in 2023, which many businesses found significantly more expensive. At the same time there has been a strong and growing preference for OpenJDK distributions, which are open-source and free to use. Commercial support for Open JDK builds is provided by vendors including Azul, Amazon (Corretto) and Eclipse Adoptium (Temurin).

Another beneficial effect of the OpenJDK has been to increase the frequency of new releases. Whereas prior to the Open JDK new versions would only come out when a large set of features were complete. This led to unpredictable and often multi-year gaps between major releases (e.g., Java 6 to 7 took 5 years, Java 7 to 8 took 3 years) but since Java 9 in 2017 there has been a six-month release cycle thanks to the open-source community. When OpenJDK produces a new version every six months, Oracle follows suit with its own branded and commercially supported JDK releases.

Related Articles

Java Reaches 20th Anniversary

Where's Java Going In 2025? 

The I Programmer Java 2023 Recap

 

Banner


Birth of the Intel 4004 - the First Microprocessor

The Intel processor has been the standard processor architecture for decades. It is tempting to think that all this was planned, but the true story is very different.



Alan Sugar - Amstrad and the CPC

In the UK Alan Sugar's Amstrad was the first company to look at computing with an eye to producing something cheap and cheerful and in doing so revolutionised the computer marketplace. It is now 40 ye [ ... ]


Other Articles

 



Last Updated ( Sunday, 25 May 2025 )