Java remains a critical technology that attracts intense interest and passion, as testified by the droves of developers gathered in San Francisco this week for JavaOne, the industry's major event dedicated to the language.
Of course, Java will persist despite all setbacks, but when it comes to career choices, little comfort can be found in the fact that somewhere on some server Java code will always be running. The questions center on the promise of the prospects and whether a language on the wane may be the best bet.
Following are reasons why Java should remain a premier software platform for years to come and why it might soon decline.
Strength: Java is a staple of enterprise computing
Nothing says long-lasting like being found everywhere, and that's Java's greatest asset. Its near ubiquity will keep it around for many years to come.
Anecdotal evidence suggests 90 percent of Fortune 500 companies use Java, IDC analyst Al Hilwa says.
RedMonk analyst Stephen O'Grady agrees. "I expect Java to be with us for a long time to come, much as its detractors might wish otherwise," he says. "It has substantial traction in enterprise applications, big data, mobile, and so on." Even if Java is not as popular as it once was, it remains "enormously popular," O'Grady says.
Scott Sellers, president and CEO of JVM technology vendor Azul Systems, sees nothing less than a seismic shift required to doom Java to irrelevance.
"Given the prevalence of Java and the 10 million [Java] programmers that exist today and its widespread use, something will have to come along that is significantly better to cause people to change," Sellers says, noting the wide variety of open source libraries and frameworks based on Java. "There's a huge amount of momentum behind it."
It's little wonder then why Java always is at or near the top in monthly programming language popularity indexes.
Strength: Java anchors Android apps development
The many Apple iPhone and iPad fans may not like this cold reality, but Google's Android mobile platform is the No. 1 mobile platform in the world. To build apps for Android, developers predominantly use their Java skills and the Dalvik VM.
Android captured nearly 62 percent of tablet sales worldwide last year, followed by Apple's iOS with a 36 percent share, according to Gartner. Android had nearly 82 percent of the smartphone market worldwide in the second quarter of this year based on sales, with iOS trailing with 11.7 percent, according to IDC.
Java skills find value everywhere Android goes -- TVs, refrigerators, you name it. With that kind of traction, it's hard to see demand for Java developers waning anytime soon.
Strength: Java continues to evolve
Java may be perceived as the programming language your grandparents cut their teeth on, but Java is only 19 years old, and it is by no means standing still. The platform continues to add new features, such as the inclusion of lambda capabilities in the standard edition of Java 8 earlier this year. Java 9, due in 2016, will feature modularity, JSON APIs, and much more.
"Java the language is a little behind the times, but with the addition of closures (lambdas) in Java 8, modularity and native function calls in Java 9, and hopefully features like co-routines and tail calls soon, I think it can hold its own versus other systems-level languages," says Charles Nutter, a key proponent of JRuby, which puts the Ruby language on the JVM. (JRuby is one of many new language options on the JVM, furthering the platform.)
Java EE (Enterprise Edition) 8 is also in the works and is expected to focus on supporting the latest Web standards, ease of development, and cloud support.
Strength: Java developers are in great demand
People with Java-related skills are a hot commodity in the job market. A recent search for "Java" on the Dice.com tech job website turned up more than 17,000 opportunities. A Dice.com report in May concluded that Java development was the most desired software-building skill by a wide margin.
"For a programming language that started to be commercialized about 20 years ago, its stranglehold on modern development is unshakable," Dice.com President Shravan Goli said then.
With employment a paramount concern to everyone, the abundance of Java jobs will keep the language and platform in vogue. Critics suggest that Java development has mostly gone offshore and Java developers earn less than other developers, but it's hard to see any lack of opportunity in the United States based on Dice.com's listings and data.
Challenge: Security issues have tainted Java's reputation
Security problems in Java have been an anchor around the neck of the platform in recent years, with Java in browsers a critical concern.
Vulnerabilities in Java were used to carry out attacks in 2013 against Microsoft, Apple, Facebook, and Twitter, among others. Oracle, to its credit, has tried to be diligent in issuing patches, including a notable Java update that covered 42 vulnerabilities.
But the security backlash against Java has been loud, with calls to get rid of Java, if only on the client. Oracle has argued that older versions of Java have been the principal culprits when it comes to security. But this is one downside of ubiquity: Older versions are likely to persist somewhere.
Sure, events on the security front have quieted down for Java lately, but the damage to its reputation is already done.
Challenge: The competition keeps getting stiffer
Other languages such as Python and PHP cemented their reputations in the years following Java's initial rise, and they still boast their share of devotees. Up-and-coming languages such as Google's Go and Apple's Swift also grab their share of the headlines, taking buzz away from Java.
"It is true that Java is not as popular on a relative basis as it once was, simply because it has far more competition today, but it is still enormously popular," O'Grady says.
Challenge: Android may be a double-edged sword for Java
Though Android leverages Java, it's a variation of Java, as InfoWorld's Martin Heller points out.
"Android Java is not exactly the same as server Java, especially when you look at the libraries," he says.
Litigation over Java's use on Android also could be a problem in the long term. Oracle initially lost its case but has succeeded on appeal.
"The biggest threat I see to Java at present is Oracle's pending litigation against Google," O'Grady says. "If Java is jeopardized on the Android platform, it could lead to a substantial perceived drop in developer relevance."
Challenge: Apple has proved Java can be banned without fallout
Although mechanisms exist for developers to build apps for iOS devices using Java, Java itself is not allowed on the iPhone or iPad. For its actions, Apple appears to have escaped any negative repercussions, given the wild, runaway popularity of its mobile platform, particularly in the United States.
Prominent iOS developer Christopher Allen thinks Apple got it right. "The original Java (from Sun/Oracle) just isn't really suited for mobile -- that is why Google forked it with Android. I would say that Apple benefited by avoiding Java and the JVM, thus not offering an unsatisfactory mobile experience," Allen says.
Java continues to be on the outside looking in when it comes to the trendiest mobile platform around. When crowds of people line up outside of their local Apple store to get the latest iPhone, they're obviously not upset about Apple's Java policy for these devices.