Frank Delporte

Frank Delporte

Java Champion - Author of 'Getting started with Java on the Raspberry Pi' - Senior Technical Writer at Azul

Zonnebeke, Belgium


Frank Delporte is a Java Champion working at azul.com, blogger on webtechie.be and foojay.io, author of "Getting started with Java on the Raspberry Pi" (webtechie.be/books), and contributor to pi4j.com. Frank blogs about his experiments with Java, sometimes combined with electronic components, on the Raspberry Pi.


Area of Expertise

  • Information & Communications Technology


  • Java
  • JavaFX
  • Raspberry Pi
  • Java & JVM
  • Core Java / Java SE
  • Java and Server-side
  • Enterprise Java
  • Java language
  • Java Security
  • Java in the cloud
  • Java user Group Leader
  • Java Performance
  • Mobile with Java
  • JUG

Building Smart Devices using Java on the RaspberryPi - An intro to Pi4J.

A Raspberry Pi is a full Linux PC with a small form factor and a low price of between 6 and 95€. And of course, you can run Java on it. The same kind of JVM applications you know, love, and use on heavy machines can also be used on the Raspberry Pi. "Write once, run everywhere"? Ah yes, that's the promise of Java! But this small board has some additional possibilities you will not find on that fancy server you are running somewhere in the cloud.

Do you need a touch-screen device to interact with your home automation or a machine? JavaFX, the new Raspberry Pi Zero 2 W (15€), and a touchscreen are the perfect and affordable combo to provide the perfect solution. Yes, with its low price but high specifications, Raspberry Pi is opening whole new worlds.

And on top of that, all Raspberry Pis have those 40 magical pins to connect an unlimited choice of electronic components. Measuring temperatures and distances, toggling LEDs and relays, controlling the content on a LED matrix or LCD display, playing the Star Wars tune on a buzzer,... the only limit is your imagination! In this talk, we'll take a look at the current state of Pi4J (www.pi4j.com) and dive into the code of a few of these example use-cases. Let's experiment with Java on a CrowPi - a Raspberry Pi-based laptop - to read values from sensors and control other electronic components, and show the values on a JavaFX dashboard.

Java is not only the server language running on heavy machines! You can do amazing stuff with it on a 15€ computer and gain new knowledge at the same time, like controlling electronic components and different communication protocols.

Unlocking the Potential of Bits and Bytes: Reducing Data Footprint for Cost and Eco-Efficiency

In the age of unlimited storage space, we forget to consider the financial and ecological costs. Transmitting and storing data in XML, JSON, or (if you want to hurt people) YAML makes data human-readable, which is great for debugging and testing but is a very inefficient, heavy, and expensive way of handling data. There is a lot we can learn from projects where electronic components are involved. The protocols used in the communication with displays, sensors, and LED strips are all based on the magic ones and zeros.

Many years ago, I switched jobs from web development to a company building electronic devices for the rail industry. Suddenly I needed to understand the power of the smallest data unit we can use in software: bits. Yes, pure ones and zeros! We all know that #FF0000 will make the text red on a web page. But I never realized that the hex value #CB would mean that a train has two toilets, of which the first one is broken, and the second is wheel-chair friendly and occupied. All that info is presented with "1100 1011" in one byte!

In this presentation, we will dive deep into the bits of our computer and experiment together. Let's find out why our alarm clock wakes us up at 06:15 with #007D066D and reveal the meaning behind #3C42A581A599423C, a smiley face. With the use of Spring, Vaadin, and Pi4J on a Raspberry Pi - and some help of the "conference-wifi-gods" - we'll all together discover the magic behind bits and bytes. As a result, we may help our FinOps and EcoOps colleagues to make a positive impact.

As developers, we often overlook the financial and ecological consequences of generating, transferring, and storing massive amounts of data. Let's discover the power of the smallest unit of data: bits!

What I Learned About OpenJDK as a Docs Writer

As a teenager, a Commodore 64 and DIY solder kits ignited my passion for computers and electronics. But for some obscure reason, I chose an unexpected path by attending film school. I graduated when video and television moved from analog to digital, and the first connected computers began shaping the foundation of the internet we know today. My journey eventually led me to web and software development, where I discovered Java nearly 15 years ago. Since then, Java has been my primary programming language.

In the summer of 2022, my life took an exciting turn when I joined Azul as a technical writer. Suddenly, I found myself surrounded by people who had been working on Java since the early start and even contributed to some of the core libraries. A whole new world opened for me! I learned more about the OpenJDK project's internals than I ever imagined when I was using Java as a developer...

How many Garbage Collectors do you know in Java? Did you know your Java program needs a warm-up time? Are you familiar with the various stages of the JIT compiler? The ongoing debate between JIT and AOT compilation? And how tools like CRaC, ReadyNow, and Falcon can help you to run your code faster?

Let me take you on a journey through OpenJDK-land, and what I learned about how Java starts an application, compiles the code, and needs time to reach its maximum performance. This expedition will also give you an insight into how the OpenJDK project is organized and what information you can find in its sources.

Brace yourself for some exciting findings because, as it turns out, experimenting with Java on the Raspberry Pi also taught me new things about optimizing Java application performance!

Looking at Music, an experiment with Kotlin, JavaFX, MIDI, and Virtual Threads

When a nerdy dad and music-playing son join forces and start experimenting with music and code, some nice things can happen. Did you ever present your music piece in a business dashboard with charts? Did you know that the FXGL game library can be used to generate a piano with fireworks? Let's look at music with the MelodyMatrix application (https://melodymatrix.rocks/) and guide you through the process of how a small experiment turned into a full-blown project.

This talk is not just about code but also features a live piano performance by a 14-year-old musician-coder. Let's have a battle between humans and machines! Who is the best piano player? The musician or a few thousand Virtual Threads? And how far can we push the app's performance to send ByteArrays to an LED strip to react to the music?

Topics in this talk: Java, Kotlin, JavaFX, Gradle, FXGL, MIDI, Vaadin, GitHub Actions, JDeploy,…

When a nerdy dad and music-playing son join forces and start experimenting with music and code, MIDI, JavaFX, Kotlin, and Virtual Threads result in a presentation with visual effects and live music...

Frank Delporte

Java Champion - Author of 'Getting started with Java on the Raspberry Pi' - Senior Technical Writer at Azul

Zonnebeke, Belgium


Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top