foojay

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 »

Domain-Deadline-Dog-Driven Development

On Twitter – sorry, X – and Mastodon I asked the following question: “In software development, “Domain-Driven Design” (#DDD) is one of the many great (?) ways to handle a project. But who has experienced other types of DDD in real life, like “Deadline-Driven Development” or “Disaster-Driven Development”, and wants to share her/his experience for a blog? Thanks!” This is …

Read More »

Not a Single Trace

The Limiting Factor Strength in Numbers Example Magical APIs Final Word Your team celebrates a success story where a trace identified a pesky latency issue in your application’s authentication service. A fix was swiftly implemented, and we all celebrated a quick win in the next team meeting. But the celebrations are short-lived. Just days later, user complaints surged about a …

Read More »