Java EE is another story
Java EE was already stagnant. Do you know what's new in the latest release? Neither do I, and I don't care. Remember WebLogic? Remember what Sun ended up calling its app server that was based on GlassFish? Neither do I. Meanwhile Red Hat is busy building its future with OpenShift, with JBoss as a smaller part. EMC and its VMware and Pivotal subdivisions are talking about Cloud Foundry, but they're busy selling Hadoop bolted on to Greenplum.
In other words, Java EE is playing catch-up with the industry. Java EE is hobbled by a Java Community Process that has outlived its usefulness because Oracle is terrible at pretending it cares what people think. The JCP was a political thing that convinced vendors (especially IBM) to stay on the Java ship. The most important innovation to Java's core in the past several years was Android, and Oracle sued Google over it. The rest of the innovations all happened in open source, yet Oracle alienated Apache. What's the point of the JCP?
But there's more to Java EE's ecosystem, by which we used to mean Spring. Well, Rod Johnson went to go work for Typesafe and VMware spun Spring into the new Pivotal weed farm (because cloud, data warehousing, Hadoop, and Spring obviously all belong in one incoherent company). That's not Oracle's fault directly, but it speaks to the opportunity in the Java EE ecosystem. It isn't a key part of anyone's business strategy, unless they're running an offshoring outfit.
What is driving Java?
Inertia is driving Java. If you want a multiplatform runtime, the JVM is the main game in town. There is so much stuff in Java and an install base so extensive that, from a business standpoint, you'd be an idiot to ignore it.
That inertia is part of the reason Hadoop was written in Java (mostly) instead of other languages. Over the past year I've been talking to .Net shops that are deploying their first Linux and first Java runtime all because of Hadoop.
How to recover?
Some of this is the maturity cycle. As Microsoft learned, you can't do anything new without ticking off the faithful. Oracle has a project to finally "fix" Java and address a bug I filed with Sun years ago making List<int>
work properly. Too little, too late, and in any case, that isn't a big idea. A big idea in the business sense is "get customers to ___, making it possible for them to ___, which lets us sell them ___" (market creation, disruption, productization), but then doesn't sound like a Pinky and the Brain joke.
The big ideas are cloud, NoSQL, and big data. These are the technologies that make new things possible and old things cheaper. How do you give Java EE (or maybe CE or DE) a great edge here? How do you make it so that there is a big reason to come to Oracle's table?
Prediction
I don't think Oracle knows how to create markets. It knows how to destroy them and create a product out of them, but it somehow failed to do that with Java. I think Java will have a long, long tail, but the days are numbered for it being anything more than a runtime and a language with a huge install base. I don't see Oracle stepping up to the plate to offer the kind of leadership that is needed. It just isn't who Oracle is.
Instead, Oracle will sue some more people, do some more shortsighted and self-defeating things, then quietly fade into runtime maintainer before IBM, Red Hat, et al. pick up the slack independently. That's started to happen anyhow.
This article, "Oracle hasn't killed Java -- but there's still time," was originally published at InfoWorld.com. Keep up on the latest news in application development and read more of Andrew Oliver's Strategic Developer blog at InfoWorld.com. For the latest business technology news, follow InfoWorld.com on Twitter.