CERN: Where Java technology and particle accelerators collide
As a guest on not one but two of the opening keynotes the first day of JavaOne 2016, CERN software engineer Ben Wolff took the stage to talk about how Java reaches into the very heart of matter itself as part of the Large Hadron Collider’s central control system. The system features more than 100,000 devices and 2 million endpoints—and Java is the platform trusted to keep the world’s largest machine in business as researchers explore the tiniest building blocks of matter.
Not surprisingly, Wolff spoke about the importance of technology in this quest to understand particle physics. “To fulfill its mission, CERN relies heavily on IT and computing. We use Java in many different areas. This strategic decision was made in the mid-nineties with the first version of the JDK. Most of the higher levels of the accelerator control system are running on Java.”
Java supports the business side of science
It’s important to have a stable and trusted system because most of the scientists and engineers who come to CERN aren’t there to work on software. According to Ben, “We have a high personnel turnover rate. We have all these very smart people coming to CERN, and it’s our job to allow them to concentrate on research by keeping the administrative overhead low.”
In addition to serving as the foundation for the software in the control center, Java is used for CERN’s extensive ERP system, fully electronic document workflow, and business intelligence data warehouse. With a one billion dollar budget to be spent on research, these practical aspects of the organization’s IT infrastructure help them spend money efficiently.
Making sure CERN is up to speed
According to Ben, the process for keeping CERN’s Java components up to date is fairly streamlined. The accelerator control system alone has 10 million lines of code, 1500 Java artifacts, and 300 UI applications. This means the institute can’t afford to have an unnecessarily complicated maintenance program—and they definitely can’t afford to fall behind. In fact, CERN is committed to taking advantage of the latest improvements Java has to offer. Each year, the center does a technical shut down for a couple of weeks for upgrades.
The institute is looking forward to the updates coming for Java9 and JavaEE as well. For Ben, the addition of Jigsaw is an event to be celebrated. “At CERN, we are working with a very large system with many internal and public APIs. Managing dependencies and interdependencies is a challenge.” He hopes the increased modularity in Java9 will simplify this process. Since the institute also collaborates with more than 600 universities and institutes all over the world, the proposed JavaEE platform APIs for standards like OAuth and OpenID will also come in very handy for federated identity management.
Other updates to Java Enterprise Edition proposed by Anil Gaur, Group VP of Engineering at Oracle, also met with Wolff’s approval. “CERN is operating its own on-premise cloud and provides support for Docker images. Having the platform support this type of packaging will add a lot of flexibility to the application development teams.” Whatever CERN discovers next, whether it’s a new particle, an alternate dimension or the hiding place of dark matter, Java will be there to help make it happen.