Quarkus, the Java stack back from the future
Java is dead, they say, Java is fat and slow, they also say. Join me for a 100% live coding session where I will prove them that they are completely wrong. The JVM ecosystem has never been so innovative than today and Quarkus is one of those new Java stacks that will blow your mind. Starting your app in 0.018 seconds with a memory print of 30Mb is now a reality and at the same time Quarkus brings Developer Experience to the next level : Live reload, continuous testing and way more that will be demonstrated during this live coding session.
Zero-downtime deployment on Kubernetes with Hazelcast
Kubernetes allows a lot. After discovering its features, it’s easy to think it can magically transform your application deployment process into a painless no-event. For Hello World applications, that is the case. Unfortunately, not many of us do deploy such applications day-to-day because we need to handle state. Though it would be much easier to have stateless apps, and despite our best efforts in this direction, state is found in (at least) two places: sessions and databases.
You need to think about keeping the state while stopping and starting application nodes. In this talk, I’ll demo how to update a Spring Boot app deployed on a Kubernetes cluster with a non-trivial database schema change with the help of Hazelcast, while keeping the service up during the entire update process.
Disco API - JDK’s distributions as a service
At Azul, we have spent some time creating a little API that should help you to discover builds of OpenJDK from different distributions in a general way.
In this session, we will give you a short introduction on what the Disco API is and how it can help you find the JDK/JRE of your choice.
At the moment the following distributions are supported: AdoptOpenJDK, Corretto, Dragonwell, GraalVM CE, Liberica, Liberica Native, Mandrel, OJDKBuild, OpenLogic, Oracle, Oracle OpenJDK, SAP Machine, Trava and Zulu.
Java and JavaFX on (desktop/mobile/embedded) clients, an overview
Java started as a programming language for smart clients. It became incredibly successful as a language and environment for server-side and later for cloud-native development. However, Java is still very powerful and applicable in the client space.
In this session, we will give a status update of the evolutions for Java on the Client. A key-framework in this is JavaFX, which is developed in the OpenJFX project, under the OpenJDK umbrella. Using JavaFX, developers can easily create cross-platform applications with a nice, modern user interface. Those applications can be deployed on all kinds of desktop systems, but also on mobile and embedded devices. By using Java and JavaFX for client development, developers benefit from the key benefits of Java, including security, stability, maturity and the large ecosystem.
In this session, we also pay attention to GraalVM, and especially to the AOT compiler that is part of the project. This AOT compiler is used by Gluon Substrate to create native executables or packages based on 100% Java code. There are some major benefits in this, e.g. fast startup time and smaller memory consumption.
After attending this session, you will understand why it is exciting to be a Java developer today, and leverage your skills in client areas like desktop, mobile and embedded.
Beyond Jakarta EE 9.1
Jakarta EE 9 lowers the barriers of entry, eases migration, and lays a foundation for future innovation. Jakarta EE 9.1 takes this even further by offering Java SE 11 support.
In this session, I will go through what Jakarta EE 9.1 brings to the table and how this release lowers the barriers of entry, eases migration, and lays the foundation for a platform for future innovation. We will also look ahead to what future releases may bring. The session includes a demo including converting from the javax. to jakarta. namespace as well as looking at available implementations.