Search in Documentation with a JavaFX Chat LangChain4j Application

At the Fosdem conference in Brussels on February 3rd, I gave a presentation about using an existing documentation set as the data for a ChatGPT-like application, created with JavaFX and LangChain4J. The video and links of that presentation are available here, and this post is a more detailed explanation of that application. What is LangChain4j The goal of LangChain4j is …

Read More »

12 Text Tools For Developers

As developer, you would think we would spend all our time in an IDE doing development. The reality is a bit different. We may need to analyze logs, test our web services, generate test data, do security tests, analyze data in the database, and so on. Text processing os also part of a developer job. Let’s see a few free …

Read More »

Java on Raspberry Pi 5 with Pi4J

In October 2023, Raspberry Pi announced version 5 of its affordable single-board computer with 4GB (60$) or 8GB (80$) of memory. Soon after the first boards were delivered, it turned out the Pi4J library wasn’t compatible with this new board. Pi4J is a library to create Java applications for the Raspberry Pi that can interact with electronic components through the …

Read More »

Debugging Streams with Peek

Table of Contents Understanding Java Streams A Simple Stream Example What is the peek() Method? Debugging with peek() Uncovering Common Bugs with peek() Filtering Issues Large Data Sets Addressing Side Effects Limitations and Pitfalls Potential for Misuse in Production Code Performance Overhead Side Effects and Functional Purity The Right Tool for the Job Navigating the Pitfalls Final Thoughts I blogged …

Read More »

How to Detect Cache Misses Using Observability

All of us know about caching in system design and software architecture, It is applicable everywhere in the computer industry, even in hardware. Caching is a quick and shortcut solution to improve performance, of course, we need to be careful of using the cache, misusing the cache can directly affect the system’s consistency. In this article, we will learn about …

Read More »

Changes Included in Release 24.02 of Azul Zing Builds of OpenJDK

Azul Platform Prime is a Java platform with a modern, TCK-compliant JVM, Azul Zing, based on OpenJDK. Zing provides low, consistent response latency of your Java workloads, higher total throughput and carrying capacity, faster warm-up, and infrastructure savings, achieved thanks to the C4 pauseless garbage collector, Falcon JIT compiler and other technologies created by Azul. Zing Builds are available in …

Read More »

Records for Cleaner and More Expressive Parameterized Tests in JUnit 5

Introduction:  Parameterized testing in JUnit 5 is a potent technique for executing the same test logic with various inputs. While you can use a variety of data structures, such as custom classes, arrays, or collections, Java records offer a compelling advantage in readability, type safety, and expressiveness. Let’s examine how to leverage Java records for parameterized tests through a concrete …

Read More »

Improving upon my OpenTelemetry Tracing demo

Last year, I wrote a post on Open Telemetry Tracing to understand more about the subject. I also created a demo around it, which featured the following components: The Apache APISIX API Gateway A Kotlin/Spring Boot service A Python/Flask service And a Rust/Axum service I’ve recently improved the demo to deepen my understanding and want to share my learning. Using …

Read More »

Foojay Podcast #46: JUG Switzerland

In this podcast, once a month, we discuss the history of a Java User Group and the people behind it. In this episode, I’m leaving the European Union and stepping over the border of Switzerland, the country where the Red Cross was started, and many international institutions have their headquarters. Let’s find out if there is also a big Java …

Read More »

JavaFX Links of March 2024

Here is the overview of the JavaFX LinksOfTheMonth of March 2024, published on jfx-central.com during this month. Components, Libraries, Tools Pedro Duque Vieira integrated this pull request in FXThemes: “True Dark Mode is now also available on Mac. All thanks to Carl Dea. Not new, but siedlerchr pointed us on EasyBind: “Leverages lambdas to reduce boilerplate when creating custom bindings, …

Read More »