Java 185
Java is the core topic across this site. These posts cover modern Java features, OpenJDK evolutions, performance tuning, tooling, and hands-on development lessons from real projects.

Foojay Podcast #99: Testing the Untestable, LLM Security for Java Developers with Tiberius
Unit testing assumes that the same input gives the same output. Large language models break that assumption on purpose, which leaves Java developers wiring LLMs into their …

Foojay Podcast #98: The End of JNI Pain, How WebAssembly Is Quietly Replacing Native Libraries in Java
JNI has been the standard answer for calling native code from Java for almost three decades. It also brings most of the headaches anyone who has wrestled with it remembers: brittle …

Lottie4J Meets LottieFiles: A Conversation with Naail Abdul Rahman
Lottie animations run on Android, iOS, and the web. Getting them working on the JVM is a different story. Lottie4J started as a question: can JavaFX render them without a WebView? …

Foojay Podcast #97: From Scripting Language to AI Powerhouse with BoxLang
If you write Java day to day, the AI tooling conversation often defaults to Python. BoxLang takes a different route. It runs on the JVM, treats AI as a first-class concern, and …

Foojay Podcast #96: Local AWS Development Without LocalStack: Meet Floci, the GraalVM-Powered Alternative
Running AWS services on your laptop usually means waiting for a heavy emulator to boot, watching memory fill up, and hoping the API behavior matches the real cloud. Floci takes a …

Is Your Java App Actually Secure, Or Does It Just Look That Way?
Your Java app passes the build, the tests are green, and the dashboard looks fine. But are the libraries underneath still maintained, or are they quietly collecting …

Foojay Podcast #94: More Than a Blog: How Foojay Connects, Sustains, and Evolves the Java Community
What keeps a developer community alive after six years, and what does it take to stay relevant while AI reshapes how we write code? For Foojay’s sixth anniversary, we …

JCast: Van Commodore 64 tot Java Champion: code begrijpelijk maken
Code only helps people when they can read it, run it, and understand what it does. That same idea applies to documentation, to teaching kids how to program, and to the way …

Links from the JCON talk 'Foreign Function & Memory (FFM) API on Raspberry Pi'
These are the links from the JCON talk in Cologne, Germany, on April 22, 2026: “The Wait is Over: Foreign Function & Memory (FFM) API brings modern Java to the Raspberry …

MelodyMatrix V1.0.0 Released: Shipping a JavaFX App with jDeploy, GitHub Actions, and Auto-Update
Some side projects take a while to get to a proper release. MelodyMatrix is one of those. The app has been downloadable for quite some time thanks to jDeploy , but there was no …

Foojay Podcast #93: Update Your JDK, Read More Code, and Talk to Your Users: Interviews From VoxxedDays Amsterdam
A hallway at a Java conference often teaches you more than the talks. People share what broke in production, which JDK version finally pushed them off Java 8, and what tools …

Lottie4J 1.2.0: dotLottie Support, Marker Playback, Cropping, and a Big Speed Boost
Version 1.2.0 of Lottie4J is out, and it’s again a big release! The headline feature is support for the .lottie container format, but that’s just the start. This …

Foojay Podcast #92: Java 26 Is Here: What's New, What's Gone, and Why It Matters in 2026
Java 26 lands on March 17 with ten JEPs, a mix of cleanups, performance work, and new language features. Teams running on older LTS releases face a familiar question. What changes …

Lottie4J 1.1.0: Better Rendering, Smarter Debugging, and an animated Lottie4J Logo!
Just one week after the first public release of Lottie4J , the open-source Java library for rendering Lottie animations in JavaFX, version 1.1.0 is already out. And it’s a …

Foojay Podcast #91: 25 Years of IntelliJ IDEA: The IDE That Grew Up With Java
IntelliJ IDEA launched in 2000 and grew into the daily workbench for millions of Java developers. Twenty-five years later, the IDE still drives how we refactor, debug, and now pair …

Introducing Lottie4J, a Java(FX) Library to Parse and Play Lottie Animation Files
I’m proud to present a new JavaFX library: Lottie4J, that brings Lottie animations to JavaFX applications. I first learned about Lottie many years ago when we were developing …

Pi4J Joins the Commonhaus Foundation: Securing the Future of Java on Single-Board Computers
Open source software is built on passion, time, and dedication. But passion alone doesn’t guarantee the long-term survival of a project. Maintainers move on, life changes, …

I Benchmarked Java on Single-Board Computers: Orange Pi 5 Ultra and Raspberry Pi 5 Lead the Pack
In my “Java on Single Board Computers” series, I already published several posts and videos in which I unpack the board, connect it for the first time, and try to …

Foojay Podcast #90: Highlights of the Java Features Between LTS 21 and 25
Wondering if the jump from Java 21 to Java 25 is worth the effort? Four years of releases stack up to a long list of changes, and picking the ones that actually affect your code is …

I Got Java 25 Running on the RISC-V BeagleBoard BeagleV-Fire
After my initial struggles with the BeagleV-Fire in a previous video , I succeeded in getting Java 25 running on RISC-V-powered BeagleV-Fire! Let me walk you through the journey …