Java: Functional Programming f(x) – Part1

Dive into the world of functional programming in Java and through declarative programming we can able write a better and concise code. The post Java: Functional Programming f(x) – Part1 appeared first on foojay. | Continue reading


@foojay.io | 1 day ago

The High Availability Features of Microservices using Chronicle Services

Learn how Chronicle Services, a Java-based framework optimised for low-latency microservices, meets critical requirements by integrating HA, performance, and data persistence. The post The High Availability Features of Microservices using Chronicle Services appeared first on fooj … | Continue reading


@foojay.io | 1 day ago

Hello eBPF: Generating C Code (8)

This week we generate the C code for struct and map definitions automatically, using annotation processors to simplify writing programs. The post Hello eBPF: Generating C Code (8) appeared first on foojay. | Continue reading


@foojay.io | 2 days ago

Using my new Raspberry Pi to run an existing GitHub Action

Recently, I mentioned how I refactored the script that kept my GitHub profile up-to-date. Since Geecon Prague, I'm also a happy owner of a Raspberry Pi. The post Using my new Raspberry Pi to run an existing GitHub Action appeared first on foojay. | Continue reading


@foojay.io | 3 days ago

Debug Without Breakpoints

Learn how to use IntelliJ IDEA's Pause – a lesser known feature that will help you diagnose UI freezes, deadlocks, livelocks, and more The post Debug Without Breakpoints appeared first on foojay. | Continue reading


@foojay.io | 4 days ago

Debugging Using JMX Revisited

Learn how to leverage JMX and Spring Boot for advanced debugging and management, enabling efficient monitoring and control of Java applications. The post Debugging Using JMX Revisited appeared first on foojay. | Continue reading


@foojay.io | 8 days ago

Smarter Logging in Spring Boot with AOP

Smart logging with AOP in Spring boot with our smart Logging, leveraging AOP for detailed, configurable logging. Ideal for cleaner code. The post Smarter Logging in Spring Boot with AOP appeared first on foojay. | Continue reading


@foojay.io | 11 days ago

Getting Started with bld

bld is an up-and-coming build tool for the Java ecosystem. This article guides you through getting set up to use it in your own projects. The post Getting Started with bld appeared first on foojay. | Continue reading


@foojay.io | 11 days ago

Foojay Podcast #47: Artificial Intelligence and Machine Learning with Java

The way we search for information and develop software has changed a lot since then as the use of Artificial Intelligence suddenly became a lot easier. What can we expect in the near future, and how can we program AI ourselves with Java? Let's find out… The post Foojay Podcast #4 … | Continue reading


@foojay.io | 11 days ago

Free Foojay.io Tickets for JCON EUROPE, Cologne!

Get your free tickets for Foojay.io collaborators of all shapes and sizes, whoever you are reading this, you are welcome to join in for free via the link in this article! The post Free Foojay.io Tickets for JCON EUROPE, Cologne! appeared first on foojay. | Continue reading


@foojay.io | 12 days ago

JUG Munich hosts the JCP Executive Committee meeting to 25th anniversary of JCP

This year, the first meeting of the JCP Executive Committee will take place in Munich with the support of MicroDoc. The post JUG Munich hosts the JCP Executive Committee meeting to 25th anniversary of JCP appeared first on foojay. | Continue reading


@foojay.io | 12 days ago

Hello eBPF: Auto Layouting Structs (7)

Let's look into the eBPF memory layout and alignment of structs transferred between the kernel and user-land. The post Hello eBPF: Auto Layouting Structs (7) appeared first on foojay. | Continue reading


@foojay.io | 12 days ago

Ensuring the right usage of Java 21 new features

How to ensure the right usage of the new version of Java 21, and improve performance and clarity in our code base. The post Ensuring the right usage of Java 21 new features appeared first on foojay. | Continue reading


@foojay.io | 12 days ago

Calling Gemma with Ollama, TestContainers, and LangChain4j

Lately, for my Generative AI powered Java apps, I've used the Gemini multimodal large language model from Google. But there's also Gemma, its little sister model. The post Calling Gemma with Ollama, TestContainers, and LangChain4j appeared first on foojay. | Continue reading


@foojay.io | 14 days ago

Effective cloud-native Java app development with Open Liberty in IntelliJ IDEA

How to use Liberty Tools for IntelliJ IDEA to enable rapid, easy, and efficient development of cloud-native Java applications with Liberty. The post Effective cloud-native Java app development with Open Liberty in IntelliJ IDEA appeared first on foojay. | Continue reading


@foojay.io | 14 days ago

Search in Documentation with a JavaFX Chat LangChain4j Application

Let's use an existing documentation set as the data for a ChatGPT-like application, created with JavaFX and LangChain4J. The post Search in Documentation with a JavaFX Chat LangChain4j Application appeared first on foojay. | Continue reading


@foojay.io | 16 days ago

12 Text Tools For Developers

Text data and text manipulation of it is also part of a developer job. Let's see a few free text tools to simplify your job. The post 12 Text Tools For Developers appeared first on foojay. | Continue reading


@foojay.io | 17 days ago

Java on Raspberry Pi 5 with Pi4J

Alexander Liggesmeyer contributed a new plugin to Pi4J: GpioDPlugin. As a Pi4J-user, he wanted to run his applications on the Raspberry Pi 5. The post Java on Raspberry Pi 5 with Pi4J appeared first on foojay. | Continue reading


@foojay.io | 20 days ago

Debugging Streams with Peek

Learn how to debug Java streams effectively using the peek() method with practical examples and tips for optimizing your code. The post Debugging Streams with Peek appeared first on foojay. | Continue reading


@foojay.io | 21 days ago

How to Detect Cache Misses Using Observability

In this article, we'll examine cache misses and, in general, learn about the caching concept and how to implement it in Spring Boot. The post How to Detect Cache Misses Using Observability appeared first on foojay. | Continue reading


@foojay.io | 22 days ago

Changes Included in Release 24.02 of Azul Zing Builds of OpenJDK

In addition to many improvements and fixes, the new Stable Azul Zing Build of OpenJDK includes the new Long Term Support (LTS) version, OpenJDK 21. The post Changes Included in Release 24.02 of Azul Zing Builds of OpenJDK appeared first on foojay. | Continue reading


@foojay.io | 23 days ago

Records for Cleaner and More Expressive Parameterized Tests in JUnit 5

Let's examine how to leverage Java records for parameterized tests through a concrete example – testing an expression evaluator. The post Records for Cleaner and More Expressive Parameterized Tests in JUnit 5 appeared first on foojay. | Continue reading


@foojay.io | 23 days ago

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... The post Improving upon my OpenTelemetry Tracing demo appeared first on foojay. | Continue reading


@foojay.io | 24 days ago

Foojay Podcast #46: JUG Switzerland

In this episode, Frank and the Foojay Podcast leave the European Union and step over the border of Switzerland, the country where the Red Cross was started, and many international institutions have their headquarters. The post Foojay Podcast #46: JUG Switzerland appeared first on … | Continue reading


@foojay.io | 24 days ago

JavaFX Links of March 2024

Here is the overview of the JavaFX LinksOfTheMonth of March 2024, published on jfx-central.com during this month. The post JavaFX Links of March 2024 appeared first on foojay. | Continue reading


@foojay.io | 26 days ago

Aspect-Oriented Programming (AOP) Made Easy With Java

The AspectJ framework streamlines AOP adoption in Java. AOP improves modularity which leads to code that is easier to understand and maintain. The post Aspect-Oriented Programming (AOP) Made Easy With Java appeared first on foojay. | Continue reading


@foojay.io | 29 days ago

Tips for reading code

As developers, we read code more than we write it. When reading code inside the IDE, IntelliJ IDEA helps us to read and understand code by providing helpful features. The post Tips for reading code appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

To Brussels, Canada and Back

I went traveling again, read more on my travels to FOSDEM, Canada and Zurich in February/early March in this travel report. The post To Brussels, Canada and Back appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Apache APISIX North America Tour

Today, I'd like to write about my North America "Tour" across several conferences and user groups. The post Apache APISIX North America Tour appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Spring: Internals of RestClient

Experience the ease and efficiency of Spring Framework RestClient. Simplify your RESTful API integration and unlock the full potential of your applications. The post Spring: Internals of RestClient appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

FEPCOS-J (4) Easy programming of a multithreaded TCP/IP server in Java

FEPCOS-J prototypically implements a Java language extension that allows the realization of a multithreaded TCP/IP server in Java without thread or network programming. The post FEPCOS-J (4) Easy programming of a multithreaded TCP/IP server in Java appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

The “Spring Way” of Doing Things: 9 Ways to Improve Your Spring Boot Skills

How to make sure you're unlocking the full potential of Spring Boot. 9 ways to improve your Spring Boot Skills. The post The “Spring Way” of Doing Things: 9 Ways to Improve Your Spring Boot Skills appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Localize applications with AI

Ever wondered if AI can localize an entire project? Let’s take a canonical open-source application and walk through the process end-to-end. The post Localize applications with AI appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Hello eBPF: Ring buffers in libbpf (6)

This week I'll implement ring buffer support in my eBPF library and explain how ring buffers are used in eBPF. The post Hello eBPF: Ring buffers in libbpf (6) appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Java 22 Is Here, And It’s Ready To Rock

Java 22 is here, and it's ready to rock! Boasting a set of 12 JEPs, it finalizes features like 'unnamed variables and patterns' and previews new ones like 'statements before super(...)' and 'stream gatherers' . The post Java 22 Is Here, And It’s Ready To Rock appeared first on fo … | Continue reading


@foojay.io | 1 month ago

Java 22: What’s New?

As soon as Java 22 is out, it'll be time to walk through all the functionalities that this version bring to us as developers. The post Java 22: What’s New? appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Foojay Podcast #45: Welcome to Java 22

Last September, we got Java 21, a Long Term Support (LTS) version with eight new big features and seven incubator or preview features. Does Java 22 also bring that much innovation, or is it "just" a bug-fix release? The post Foojay Podcast #45: Welcome to Java 22 appeared first o … | Continue reading


@foojay.io | 1 month ago

Foojay Podcast #45: Welcome to Java 22

Last September, we got Java 21, a Long Term Support (LTS) version with eight new big features and seven incubator or preview features. Does Java 22 also bring that much innovation, or is it "just" a bug-fix release? The post Foojay Podcast #45: Welcome to Java 22 appeared first o … | Continue reading


@foojay.io | 1 month ago

How Oracle Separates Java Pricing from Value

Oracle deserves props for continuing to develop Java as an open-source platform, but its pricing model and licensing continues to drive users away. The post How Oracle Separates Java Pricing from Value appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Increase readability and reduce complexity with Java’s Pattern Matching

Increase readability, reduce cognitive complexity, and avoid bugs that are hard to spot with Java's Pattern Matching. The post Increase readability and reduce complexity with Java’s Pattern Matching appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Running JavaFX applications on the Windows Subsystem for Linux and more

Learn about the flexibility of running your JavaFX applications in a Linux environment on a Windows host system without any issues, which can be a big plus, depending on your use cases. The post Running JavaFX applications on the Windows Subsystem for Linux and more appeared firs … | Continue reading


@foojay.io | 1 month ago

Foojay.io Mini Conference at Uber, Amsterdam

Uber Tech is partnering with Java User Group Amsterdam to host their first mini conference with Foojay.io. The post Foojay.io Mini Conference at Uber, Amsterdam appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Secure your API with these 16 Practices with Apache APISIX – part 2

In this two-post series, I've addressed most of 16 different practices to secure APIs with Apache APISIX. The post Secure your API with these 16 Practices with Apache APISIX – part 2 appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Secure your API with these 16 Practices with Apache APISIX – part 1

See how to configure Apache APISIX to secure your APIs against 7 of the 16 rules in the "16 practices to secure your API" list. The post Secure your API with these 16 Practices with Apache APISIX – part 1 appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

TornadoInsight: Harness the Power of TornadoVM from IntelliJ IDEA

TornadoInsight is an open-source IntelliJ IDEA plugin for enhancing the developer experience when working with TornadoVM. The post TornadoInsight: Harness the Power of TornadoVM from IntelliJ IDEA appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Payara Cloud Hackathon is Open for Sign-ups!

We're excited to announce that the 2nd edition of Payara Hackathon is now open for sign ups! The post Payara Cloud Hackathon is Open for Sign-ups! appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Hello eBPF: First steps with libbpf (5)

Learn why using libbcc is not the best idea and start working with the newer libbpf. The post Hello eBPF: First steps with libbpf (5) appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Microservices Design Principles for Well-Crafted Architecture

Dive into the Microservices Design Principles with our in-depth guide to creating modular, scalable, and resilient software systems. learn The post Microservices Design Principles for Well-Crafted Architecture appeared first on foojay. | Continue reading


@foojay.io | 1 month ago