Elevating Java Development in Visual Studio Code: Experience the New Build Server for Gradle

Introducing Build Server for Gradle In recent years, Gradle has become one of the most popular Java build tools due to its flexibility in configuring build processes and its powerful extensibility. In Visual Studio Code, users can import Gradle projects into their workspace for development. However, there are some areas where support for Gradle projects is not entirely satisfactory, with …

Read More »

Patterns For The Design Of Microservices – Part 2

In the previous article, we discussed some of the design patterns employed in the creation of microservices. In this subsequent article, we will delve into the remaining patterns that are commonly utilized in the realm of microservices. Database Patterns 1. Data Management There are seven distinct patterns that further categorize the data management. Database per Service Shared Database Saga Pattern …

Read More »

Book review: “Persistence Best Practices for Java Applications”

In todays ever-evolving world, fast and efficient data management is becoming ever more important. With the explosion of digital data and diverse data sources, selecting the right database type, whether it’s traditional relational, NoSQL, or emerging options like NewSQL, has become pivotal. This also leads us to the next challenge for us, how do we integrate with this? Do we …

Read More »

JDWP, onthrow and a mysterious error

In my previous Java-related blog post called Level-up your Java Debugging Skills with on-demand Debugging, I showed you how to use the onthrow option of the JDWP agent to start the debugging session on the first throw of a specific exception. This gave us a mysterious error in JDB: And I asked if somebody had any ideas. No one had, …

Read More »

Navigating Behaviour with Events

Two Approaches There’s little doubt that modern software architectures lean towards asynchronous models for communication between distributed components (where “distributed” means components that are not part of the same process, be they on the same or on different physical machines). Synchronous models such as Remote Procedure Call (RPC) are now largely discredited [Waldo, Vinoski]; even asynchronous variants of these are …

Read More »

Java 21 – JEP 445 – Unnamed Classes and Instance Main Methods

Java 21, released on September 19th, 2023, brings many new features, 8 which are fully integrated and 7 which are incubator or preview. In this article, I want to highlight one of those preview features: Java Enhancement Proposal (JEP) 445: “Unnamed Classes and Instance Main Methods”. It’s a preview feature, meaning you need extra flags to use it. The goal …

Read More »

Payara Makes a Splash at Devoxx Belgium 2023

Devoxx Belgium 2023, the premier Java developer conference, held in Antwerp, Belgium is an event we eagerly anticipate. As representatives of Payara, a sponsor of the conference, we had the privilege of attending this year’s gathering, which took place at the iconic Kinepolis Antwerpen Cinema. The conference ran seamlessly, reflecting the organizers’ dedication to creating a productive environment for learning, …

Read More »

Resizing images on-the-fly

As a web architect, one of the many issues is asset management. And the most significant issue in assets is images. A naive approach would be to set an image and let the browser resize the image via CSS: img { height: 100%; width: 100%; object-fit: contain; } However, it means that you download the original image. It entails two …

Read More »

Start using Java 21 in your apps on Open Liberty 23.0.0.10

Java 21 is finally here! Java 21 is the first long-term support (LTS) release since Java 17 was released two years ago. It offers some new functionality and changes that you’ll want to check out for yourself. In particular, there’s the introduction of virtual threads. And you can try it all out now on Open Liberty 23.0.0.10. Open Liberty is …

Read More »

Book review: “Developing Apps with GPT-4 and ChatGPT”

Whether you’re pro or con the usage of AI, LLMs, and ChatGPT one cannot deny that there are a plethora of possibilities now available to us. Now, given the rapid shift in this field, a lot of us are left with a lot of queries such as: what are the differences between the models, how do I query them and …

Read More »