Oracle Code One 2018 : latest trends and recommended talks to watch

For the first year, Java One was renamed « Oracle Code One », and I was lucky enough to go there to give 3 talks and attend some sessions; here are my notes.

Oracle Code One 2018 trends

Well, unsurprisingly « cloud » (docker / kubernetes), Kotlin and Java 9 to 11 were the most talked about topics during the 4 days conference

The JVM in 2018 and Docker (hint : cgroups awareness is default and Jlink usage could get big)

At the end of an interesting talk about the JVM and its cgroups awareness, an Oracle engineer stood up and announced that, from JDK 1.8.0_u191 , the cgroups awareness flags were provided by default, just like in JDK 10 and 11 (behavior backported); that means your JDK 8 based Docker image will by default play nice with RAM and CPU limitations provided by cgroups

During his talk, Arun Gupta mentioned the usage of JLink to produce tailored JVM (just pick the required modules your application needs) in Docker images, and he referred to a talk by Bob Vandette and him they gave at DockerCon; unfortunately enough I missed Bob Vandette’s talk at Oracle Code One, but if you’re interested in using Jlink tailored JVM in your Docker Images, I would advise you to check it out on Youtube

Interesting tools and technologies I’ve learned about during Oracle Code One 2018

Cloud things :

Java stuff :

AdoptOpenJDK.net and OpenJ9

IBM folks were presenting a lot of OpenJ9 talks (their own OpenJDK build) available at adoptopenjdk.net  (where you can download many types of OpenJDK builds for different architectures and OSes) and on DockerHub as well– OpenJ9 was built with mobile in mind but should be a good match for cloud workloads since it’s focused on rapid startup time, small memory footprint, and it can also use a networked JIT server to further accelerate startup times

Istio and tracing with Jaeger / Zipkin

Many speakers were talking about Istio and how it enables inter process tracing and canary deployments, etc. (see this demo repo from Redhat)

It’s interesting to see how with just some « istiofi’ed » kubernetes manifest files you get such interesting features « for free »; next step would be to also put some tracing spans intra VM (some spring boot plugins : spring cloud sleuth and java-spring-cloud, seem to give that automatically)

Skaffold and Maven / Gradle Jib plugin

Not many people were talking about it nor using it in their demos; it’s still quite new, but features are coming in fast – you can check out the talk from their authors, or you can have a look at how we use jib and skaffold in the ehcache3 demo named « fullstack »

Oracle Code One 2018 recommended talks to watch

and of course talks by my colleague Henri Tremblay and me :