Eric Lynch, CIO & Copy Writer, Belnick Inc dba Bizchair.com
Java has ridden a roller coaster in the corporate enterprise, marked by incredible highs and devastating lows. The versatile programming language that dominated the early household appliance market burst into the corporate enterprise in 1995 to much fanfare. IT leaders found Java’s gambit intriguing—a programming language capable of running on any chip it found itself on, might well bring a greater return on IT investment than the dominant programming paradigms of the day: C, C++, and Microsoft Visual Basic. But despite Java’s dramatic rise to popularity, the tables eventually turned, and in 2010, Oracle acquired Sun Microsystems and the Java specification for only 5 percent of its value a decade earlier.
"Unlike before, Java now has the backing of Oracle, a technology giant who can give it the staying power Sun never could"
Many analysts blame Java’s decline on inherent complexities of the language itself, lack of effective integrated development tools, and a dizzying array of community development frameworks. But a postmortem of Sun’s flagship programming language reveals far more factors at work than just the technological. No company could have predicted—much less controlled—the IT business drivers that displaced Java from its once-dominant position. Although new market factors are converging to bring Java back to prominence, veteran IT leaders still ponder what went so badly for Java that they seldom hear about it anymore.
Market Forces That Drove Java Down
Need for Greater Scalability
Client server programming dominated the 1990s. Java’s Swing classes gave developers flexible components that produced a rich, professional look and feel. But the business soon found it needed to scale up quickly to meet unpredictable service demands, then scale down to conserve resources and control costs. When the client server paradigm couldn’t meet the business’ scalability requirements, developers started converting their thick-client applications to web apps, pushing compiled Java to the server-side. Unfortunately, Sun’s Java 2 Enterprise Edition (J2EE) packages were so heavy and complex, that many business stakeholders dropped Java altogether in favor of technologies that could deliver a shorter time-to-market.
The Dot Com Bubble
In the mid-1990s, investors and venture capital firms poured money almost mindlessly into any dot-com company that had a business plan, regardless of how sustainable it was (or wasn’t). Intoxicated with cash, e-commerce retailers invested millions into high-end web server hardware and expensive Java programming talent. But the hordes of traffic analysts predicted never came. And by the early 2000s, the growth-over-profits mentality gave way, exposing the e-wannabes’ business plans as unsustainable vapor. Because Java developers were often the most expensive salaries in the enterprise, they were the first to go when mass layoffs hit.
The Internet of Things: The Second Coming of Java
The past two decades have been eventful for Java, even if they weren’t always pleasant. But even though uncontrollable forces displaced it from the business applications realm, some market forces are aligning to create new needs Java can perfectly fill. The Internet of Things (IoT) and its network of M2M communication will connect objects we interact with every day to back-end business processes. This will require a programming platform capable of handling things like identification, service-oriented architecture, network detection, and sensor-fed signal processing in a micro-universe—all Java strong suits.
A robust Java IoT can integrate civic and industrial systems over the new HTTP/2 protocol. Low-energy sensors can leverage Java bytecode to provide machines with contextual data they need to make split-second decisions and implement them seamlessly. And with Oracle’s enhancements to make embedded Java even more compact and powerful, Java can now compete more seriously with C and C++ in the embedded computing space.
In the mid-1990s, web-based Java algorithms were activated by a live human sitting some kind of smart terminal. Java’s “second coming” in the IoT will not be subject to this limitation. Sensor-enabled devices will communicate with each other on an as-needed basis, running machine triggered conditional logic to improve efficiency, profitability, and quality of life. This means more data, more logic, more jobs for Java developers.
The IOT Brings Java’s History Full Circle
Java got its start decades ago as the programming platform for embedded systems in household items such as microwave ovens and washing machines. Now, market forces are setting the stage for Java’s triumphant return in the IoT, bringing the mighty programming language full circle back to its embedded roots. Like before, Java will change the way we live and work. Unlike before, Java now has the backing of Oracle, a technology giant who can give it the staying power Sun never could.
Even though Sun Microsystems is no longer around, the Java Programming language and platform have changed software development forever. If the Internet of things continues to gain the momentum as it has thus far, history stands a better than average chance of repeating itself.