Java's popularity hinges on future developers, adaptability (original) (raw)
Java needs to focus on the youth, adapt to emerging tech and constantly evaluate its performance to remain popular among developers.
SAN FRANCISCO -- When Java applets were the only cross-platform choice to add dynamic content to a webpage, companies quickly adopted the technology. When Flash players and JavaScript engines emerged as better alternatives, Java's popularity began to wane.
But at the turn of the century, Java again caught its stride. It staked its claim to server-side development, and those who learned about Java applets switched their focus to servlets and JSPs. By the time the smartphone came along, programming on the server side was no longer fashionable.
Then Android came on the scene, and suddenly it was cool to write Java apps for your phone -- so long as you weren't an Apple user.
Java recovered from the doldrums of 2011 and 2012, when the C language outranked it on the TIOBE Programming Language Index.
Java's popularity has seen these rises and falls since its 1996 public debut. Currently, it can claim the crown as the most pervasive language used in software development, but that title is by no means a permanent one.
Adaptability to change
The obvious key to ongoing success for Java's popularity is to maintain its current user base, which means it must be able to adapt quickly to industry trends. The move to a six-month release cadence is a stark departure from when updates would take years to arrive. "We can now get features to developers more quickly and adjust course when warranted," said Georges Saab, VP of development for the Java Platform Group at Oracle.
Java's current strategy hinges on the ability to stay ahead of the game when new technologies arise. The Oracle Code One keynote opened with a lengthy discussion of quantum computing and its processing potential. In the unlikely event anyone ever invents a machine that can utilize more than 100 qubits, Java will be ready with a proven API that can run quantum-space optimized algorithms. "There are a bunch of quantum computing APIs," said Jessica Pointing, a quantum computing researcher at Stanford University, during her keynote. "Strange is a quantum computing API for Java."
Appeal to the youth
Another key aspect to maintain Java's popularity is to constantly expand the user base. Aimee Lucido, a former software engineer, has taken a "novel" approach to this task, with her young-adult book Emmy in the Key of Code, which manages to intertwine Java development with a young girl's coming of age. "Kids can read it for the story, but accidentally learn a little bit of Java at the same time," Lucido said.
Aimee Lucido's young-adult
novel is introducing young
readers to the Java language.
For those who are more into PlayStation than the library, another way to capture the imagination of the youth is to write video game software. One of the world's most popular video games, Minecraft, is written in Java. What better way is there to get kids into Java than to show them how to use the JDK to create cool mods for the game they love to play?
Surprisingly, a quick perusal of the Oracle Code One session catalog doesn't bring up any hits on Minecraft development, or any sessions on kids IDE's such as Greenfoot or JUDO. Perhaps modding Minecraft isn't at the forefront for the software professionals who made the trek to San Francisco for the conference.
Ongoing improvement
Of course, simply introducing Java to a new generation of developers won't help maintain its position atop the list of most popular programming languages. Not only does it need to adapt quickly to changes and be to users, Java must also perform well -- especially in this age of cloud-native development where stops and starts are a routine occurrence.
"Nobody agrees exactly on what performance is. For some people, it's startup time. For others, it's throughput or responsiveness. The list goes on," said Mikael Vidstedt, a director of software engineering at Oracle. "What that means is we have to sweat all of them and make sure they all perform really, really well," he said.
The Code One keynotes highlighted benchmarks that prove these objectives are taken seriously, and the recent Java 13 release shows improvements in all of these areas.
In software development, programming languages often come and go. Java's dominance in the market for over 20 years is an impressive feat. It's up to Oracle and the development community to see if that dominance will continue well into the future.