Feeds

Oracle's Java plan trapped in last century

Clouds leave Ellison behind

Choosing a cloud hosting partner with confidence

Oracle's roadmap for Javas 7 and 8 shows it recognizes the world is pulling away and leaving Java with last-century concepts and ideals. Java 7 is meant to set the foundation for a cloud-friendly platform, but the real cloud-ready features won't make an appearance until Java 8 in 2013 at the earliest.

While Larry and company can't be blamed for the years of stagnation suffered by both the platform and language under Sun Microsystems, the problem faced isn't that Java lacks the technology to work nicely in the cloud: the problem is, as ever, one of perception.

Java is either not "enterprise" enough for cloud computing – apparently lacking the required widgets – or it's too enterprisey and therefore not cool enough to join the likes of Ruby and Python.

It doesn't help that cloud computing itself is so nebulously defined. It can be any of utility computing, SaaS, PaaS, IaaS, pretty much anything released by Google, virtualized web hosting, online storage, thin clients, fat browsers communicating by AJAX, streaming sockets, web services, or moth farts.

Fuat Kircaali, founder and chairman of SYS-CON Events, Inc., said: "Cloud has become synonymous with 'computing' and 'software' in two short years, and (Cloud Expo) has become the new PC Expo, Comdex, and InternetWorld of our decade."

Larry Ellison, photo by Oracle Corporate Communications

Ellison: Attorneys and Java patent law suits, he has

One can understand luminaries and event organizers wanting to grab a slice of image pie, but comments like Kircaali's do sum up the problem. Cloud – like agile – can mean whatever you want it to mean, to prove whatever point you want to prove.

So if cloud itself is such a broad and meaningless term, does it even matter (beyond the necessity of marketing) that Oracle intends to make Java more cloud-friendly? It does, because many of the individual meanings do posit solutions to real problems. But with the Java Standard and Enterprise Edition roadmaps, Oracle appears to be focusing on problems that have already been solved, while pushing back on fundamental issues.

The tools and languages required for serious server-side computing needs – parallel processing, scalability, modularity and so forth – are already there. While Java's built-in support for multithreading is an improvement over, say, C++, it's still surprisingly broken and non-obvious.

For example, being able to change a variable in one thread and not have its changes be seen in another. However, people who prefer a more intuitive approach - namely immutable objects, Actors and messaging, which avoid the complexity inherent in any shared-memory concurrent system - can already turn to the uber-Java, Scala.

In so many ways, Scala is already "up there" and proving to be a popular, successful choice among developers looking for a non-kiddie, JVM/cloud-based solution.

Those looking for modularity in their cloud solution needn't wait for Project Jigsaw to shake its box; OSGi already provides a working model for app segregation, and works nicely with Java EE.

Oracle, and the Java EE vendors, would just prefer for these ready solutions to be something "new" under the Java EE umbrella.

Support for dynamically typed scripting languages (due in Java 7) will allow Java to kick around with the cool kids, and may entice the casual web coder who wants to augment his site with a bit of EC2 or App Engine hosted scripting. While this supposedly vital improvement is welcome, JRuby and Jython are already doing nicely without it.

The one feature that genuinely is vital for Java to succeed in the cloud has been pushed back yet again. Lambda functions (essentially closures) are now set to appear in Java 8 (yes, 8) - though I'll believe it when I see it.

For all of Oracle's thundering, the improvements listed in the roadmap speak not of a cloud-heady future, but instead of a minimal check sheet – the least they can get away with promising in order to justify shouting about clouds.

Compare this with the early, energetic days of Java when there was a JSR for every eclectic purpose, many of which failed like Wallet while some were a huge success such as Smartcard, but that wasn't the point – it was a breeding ground for innovation, an energy-filled community of future-facing, Microsoft-bashing optimists.

Unofficial Java scores on creativity

That energy seems somehow lacking in present-day "official" Java, and Oracle's roadmap does little to revitalize the platform. Where are the more vertical JSRs for solving cloud-specific problems?

How about a vertical API for resource sharing, state caching, cloud deployment and monitoring, Distributed Management Task Force (DMTF) open management interoperability, or minimizing the number of network calls or calculations a CPU-constrained app makes? Or cloudy authentication and authorization requirements?

New APIs that are geared around the shift in architectural thinking that Java cloud developers must adopt would be most welcome. And closures – to enable developers to write isolated functions that can be evenly distributed – should be the cornerstone of Oracle's cloud strategy, their top priority.

When you think about the number and variety of cloud-specific JSRs Oracle could be kickstarting, and compare this with the promised offerings in Javas 7 and 8, it's obvious that some more creative thinking, a re-injection of steroids, is needed.

Luckily, much of that is already being supplied, just not by Oracle or the JCP. There are Java-based cloud platforms and libraries aplenty: Google AppEngine (currently runs a restricted form of Java), Stax (based on Amazon EC2), vForce.com, Aptna Cloud, RightScale for Java, SpringSource, and so on.

Another development worth watching is VMware's effort also called CloudFoundry, currently in beta. This open-source hosted service will allow Spring-configured Java apps to run in a full-on PaaS environment. And even Microsoft's Azure supports Java and offers an Eclipse plug-in.

I don't think we can expect any leadership from Oracle (just court cases and alienation of the faithful); rather, as usual, count on a buzzing community to lead Java in the right direction. ®

Matt Stephens founded independent book publisher Fingerpress, and co-authored Design Driven Testing: Test Smarter, Not Harder.

Intelligent flash storage arrays

More from The Register

next story
Microsoft to bake Skype into IE, without plugins
Redmond thinks the Object Real-Time Communications API for WebRTC is ready to roll
Mozilla: Spidermonkey ATE Apple's JavaScriptCore, THRASHED Google V8
Moz man claims the win on rivals' own benchmarks
Microsoft promises Windows 10 will mean two-factor auth for all
Sneak peek at security features Redmond's baking into new OS
FTDI yanks chip-bricking driver from Windows Update, vows to fight on
Next driver to battle fake chips with 'non-invasive' methods
DEATH by PowerPoint: Microsoft warns of 0-day attack hidden in slides
Might put out patch in update, might chuck it out sooner
Ubuntu 14.10 tries pulling a Steve Ballmer on cloudy offerings
Oi, Windows, centOS and openSUSE – behave, we're all friends here
Apple's OS X Yosemite slurps UNSAVED docs into iCloud
Docs, email contacts... shhhlooop, up it goes
Was ist das? Eine neue Suse Linux Enterprise? Ausgezeichnet!
Version 12 first major-number Suse release since 2009
prev story

Whitepapers

Cloud and hybrid-cloud data protection for VMware
Learn how quick and easy it is to configure backups and perform restores for VMware environments.
Forging a new future with identity relationship management
Learn about ForgeRock's next generation IRM platform and how it is designed to empower CEOS's and enterprises to engage with consumers.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
How to simplify SSL certificate management
Simple steps to take control of SSL certificates across the enterprise, and recommendations centralizing certificate management throughout their lifecycle.