Java 197
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 #62: Better Coding with AI: Friend or Enemy?
AI tools promise faster code and smarter suggestions, but how far can we trust them inside a real Java project? In this Foojay Podcast #62, we sat down with Grace Jansen, Sean Li, …
How Organizations Became Stuck on Outdated Java Versions
My recent blog post “Why Java 8 is a Ticking Time Bomb Hiding Within Your Organization” triggered quit some reactions… I went a step further and asked on social …
FLOSS Weekly Episode 809: Pi4J – Stable And Boring On The Raspberry Pi
Java on a Raspberry Pi sounds like an odd pairing to some developers, but it opens the door to a huge ecosystem for anyone who already knows the language. Pi4J wraps the low-level …
Foojay Podcast #60: Proud Of Belgium – Devoxx, JobRunr, Timefold, OpenJDK Mobile, OpenJFX, Thymeleaf, and htmx
Belgium is a small country, but the Java community here punches far above its weight. During Devoxx in Antwerp we grabbed the microphone and walked around to meet the makers behind …
Java Challengers: Java Rockstar Career #4 - Java on Raspberry Pi, Start with Open Source with Java with Frank Delporte
Wondering how a Java developer moves from writing business code to tinkering with hardware and contributing to open source? That path is shorter than most people think, and it …
Why Java 8 is a Ticking Time Bomb Hiding Within Your Organization
When I spoke to developers at Devoxx in Belgium in October, I was surprised to learn how many of them are maintaining systems that are still running on Java 8 (released in 2014). …

Foojay Podcast #59: DevRel Explained and How to Become a Conference Speaker
Wondering what a Developer Relations job actually involves, or how to get on stage at a conference for the first time? We brought together a panel who lives this every week to …

Foojay Podcast #58: How Java Developers Can Secure Their Code
Three years after Log4Shell shook the Java world, the same class of problems keeps showing up in production code. Outdated dependencies, SQL injection, deserialization bugs, and …
Deep dive into bits, bytes, shorts, ints, longs, signed, and unsigned with Java
On the Pi4J discussion list, someone recently asked what the best and easiest way is in Java to convert a byte value. In Java, there is no distinction between signed and unsigned …

Foojay Podcast #57: Welcome to OpenJDK (Java) 23
Every six months, a new Java release lands, and the question is always the same. What actually changes for the code we write today, and what is worth waiting for? OpenJDK 23 brings …
How we almost missed a plane in Kazakhstan, but OpenJDK could have saved us...
In August, our family vacation brought us to Kazakhstan. An important trip, as it is the birth country of our (now) 14y son. It was over 13 years that we had been there and we …
First experiments with Raspberry Pi Compute Module 4
I’m one of those people with boxes full of devices, waiting to be used in experiments… And from time to time, I dive into those boxes to fill in the gaps in between …
Foojay Podcast #56: Vectors in Java Code, Databases, and LLMs
Vectors sit at the heart of modern AI, yet most Java developers rarely touch them directly. This episode digs into what a vector really is, how databases store them, and why large …
Foojay Podcast #55: Embedded Java, Part 2
Java started its life on small devices like set-top boxes, and it keeps finding its way back to the edge. Modern processors run the same Java runtime on a tiny board and on a cloud …
Foojay Podcast #54: Music and MIDI with Java and Kotlin
MIDI turns 40 and still glues every studio together, yet most Java developers never touch the javax.sound package that ships in the JDK. This conversation digs into what that …
Links of the BeJUG Presentation: Lessons Learned from #JavaOnRaspberryPi
These are all the links of my presentation at BeJUG in Waregem, Monday, July 24, 2024.
Foojay Podcast #53: JCON Report, Part 5 – CQRS, JOOQ, GraphQL, API, Vaadin, OpenRewrite, ErrorProne, Gateways, Proxies
Evolving an API without breaking clients stays one of the hardest jobs in backend work. This fifth and final JCON recap walks through how speakers tackle that problem and many …
Foojay Podcast #52: JCON Report, Part 4 – Garbage Collectors, Intelligence Cloud, Test Containers and Flaky Tests, ToxiProxy, Structured Concurrency, Virtual Threads
Garbage collectors, virtual threads, and flaky tests sit at the heart of many Java teams’ daily headaches. At JCON we caught up with speakers who had fresh, hands-on takes on …
Foojay Podcast #51: JCON Report, Part 3 – Persistence, Evolving your Career, Jakarta EE, GlassFish, Messaging via Telegram
A persistence layer choice can quietly steer a career for years. The speakers at JCON show how open source, Jakarta EE, and a few weekend experiments turn that choice into real …
Foojay Podcast #50: JCON Report, Part 2 - Maven, Software Security, Code Quality
A broken build pipeline or a sneaky transitive dependency can derail a Java project for days. The talks at JCON kept coming back to the same question. How do we keep our code …