The Java programming language may be turning 20 years old, but it manages to stay young by taking on the day’s biggest computing challenges—including the Internet of Things. And by staying young, Java will help companies of all sizes adapt to a quickly shifting economic environment.
One important shift of great importance to businesses—and their developers—is the Internet of Things. The Java ME platform is a smaller version of the well-established Java language that’s already in use in billions of embedded devices, from television set-top boxes to printers. Now that same proven Java ME platform can be applied to Internet of Things applications. For example, a company could put a bit of processing power on a sensor out on the edge of a network, so that only the important data—“the pump has stopped”—gets shipped back for analysis or action.
Since enterprise IT pros know how to use Java, they can now use those same skills to write Internet of Things apps. “With all of this, it really makes Java ME a perfect platform for developing IoT applications,” said Robert Clark, senior director of product development for IoT and Java during the JavaOne Conference, a 10,000-person event which kicked off Sunday and runs concurrently with the 60,000-person Oracle OpenWorld customer conference this week.
This hefty user community learned of new developments in the programming language that highlight not only Oracle’s ongoing investment in Java, but its ability to continue evolving and remaining as relevant as ever.
One of those is “modules,” a feature that Java development teams are working on for Java 9, the next version of Java. Java 9 is still in development, and JavaOne is a critical way for Oracle to get feedback on potential upcoming features. Modules seek to address two problems, said Mark Reinhold, chief architect of the Java Platform Group.
One, modules make it easier to use only a small piece of the Java development kit, so it can be used on small devices. That’s important for the small devices used in IoT, and also in cloud computing uses. Modules also help developers make sure they don’t have conflicts and gaps in their Java code.
Reinhold admitted modules aren’t sexy—if Java 8’s new features felt like a jet pack, Java 9’s modules are more like a seat belt, Reinhold said. Modules let developers stay safe while they do more things faster. But to keep up with trends like the Internet of Things and digital business, companies desperately need their software teams to move faster, so tools like modules could be vital.
And modules aren’t a minor advancement; Java teams have been working on the modules project since 2008. “It’s an example of a long term investment … that moves the platform forward in a thoughtful way, that preserves everyone’s existing investments while making people more productive,” Reinhold said.
A second highlight from the JavaOne keynote came from Intel, which announced that Intel’s IoT developer kit now supports Java. By combining Java ME’s smaller footprint with Intel’s developer kit, it will be easier for companies to include the power of Intel chips on small, edge devices. “The kits give developers a clear path from prototype to commercialization,” said Michael Greene, vice president in Intel’s Software and Service Group.
Companies are in the third wave of IoT today, Greene said. The first was embedded systems such as ATMs and cash registers, and the second was the connected systems of cloud computing. The third wave, which we’re entering now, is the evolution of “smart” systems, Greene said, which allow companies to harness the data from connected devices and apply analytics in new ways, so that they can respond to changing business and operating conditions automatically.
Developers can continue relying upon Java to help power real-time decision-making and help move their organizations forward in an increasingly digital economy.