Getting Started With Apache Camel On Jakarta EE 10

Apache Camel is a Java library that allows for effortless integration of disparate systems using uniformed, readable and maintainable constructs. The post Getting Started With Apache Camel On Jakarta EE 10 appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Building for Failure: Best Practices for Easy Production Debugging

Applications fail, that's inevitable. Testing, QA, CI and defensive programming can make this a rare occurrence, but can't eliminate failure. The post Building for Failure: Best Practices for Easy Production Debugging appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Build Rot: The Hidden Technical Debt in Maven and Gradle Builds

Explore the impact of Build Rot on build speed and test times, offering strategies for enhanced observability and Developer Productivity Engineering to optimize build processes. The post Build Rot: The Hidden Technical Debt in Maven and Gradle Builds appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

SnakeYaml 2.0: Solving the unsafe deserialization vulnerability

In December of last year, we reported CVE-2022-1471 to you. This unsafe deserialization problem could easily lead to arbitrary code execution. The post SnakeYaml 2.0: Solving the unsafe deserialization vulnerability appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

How We Developed the Eclipse OpenJ9 CRIU Support for Fast Java Startup

Java startup is a hot topic. Learn how we made Eclipse OpenJ9 start in milliseconds in the Cloud. The post How We Developed the Eclipse OpenJ9 CRIU Support for Fast Java Startup appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Contributing to Open Source Software: Creating a Pull Request

Let's take a look at contributing to Open Source Software, specifically how to create an open source pull request (PR). The post Contributing to Open Source Software: Creating a Pull Request appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

JDK Safari: How To Find Hidden Tools in the JDK

One of my hobbies is regularly searching the JDK for new Java classes with executable main methods. The post JDK Safari: How To Find Hidden Tools in the JDK appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Dive into the OpenJDK: Top 10 Reads on Foojay.io

Foojay.io is a community platform dedicated to the needs of developers who use the OpenJDK and related technologies. The post Dive into the OpenJDK: Top 10 Reads on Foojay.io appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Effective Coding with Java Observability

What are examples of things that observability can tell you, right now, about your code and how can it help you improve it? We’ll look at concrete code examples to find out! The post Effective Coding with Java Observability appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

GraphQL, JavaScript, Preprocessor, SQL and more in Manifold

In the final installment of the Manifold series we discuss the final integrations, review the benefits, and discuss using it in a project. The post GraphQL, JavaScript, Preprocessor, SQL and more in Manifold appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Reactive Database Access on the JVM

Let's browse through the surface of the main three reactive database access: Spring Data R2DBC, Hibernate, and jOOQ! The post Reactive Database Access on the JVM appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

I could write a blog post, or …

Go out, visit the world, have friends, and read my blog post on flame-graph construction mid-next week. The post I could write a blog post, or … appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

How to Share Your Work With a Video or Podcast

Learn about the experiences of creating podcasts, but also more generally, how you can share your work in a video with a small (or bigger) budget. The post How to Share Your Work With a Video or Podcast appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Reactive Programming Made Easy

This article discusses essential features and tools in IntelliJ IDEA for Reactor developers. These include live templates, a dedicated debug mode, and a couple of inspections. We’ve got all of the project Reactor adepts and enthusiasts out there covered! Whether ... The post Reac … | Continue reading


@foojay.io | 9 months ago

Journeys in Java, Level 10: Service Discovery with Eureka

Eureka is a service discovery project that helps services interact with one another without hardwiring in instance-specific or environment-dependent details. The post Journeys in Java, Level 10: Service Discovery with Eureka appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Enterprise Java Application Development With Jakarta EE and Vaadin

Get an overview of the Vaadin framework and learn how to use it to build modern web applications on the Jakarta EE Platform in pure Java. The post Enterprise Java Application Development With Jakarta EE and Vaadin appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Charting the Course of Java: An Insightful Conversation with Java Champion, Sebastian Daschner

In this insightful interview, renowned Java Champion, Oracle Developer Champion, and JavaOne Rockstar, Sebastian Daschner, share his journey in the field of Java enterprise software development. With a vast array of experience from being a self-employed consultant, trainer, and a … | Continue reading


@foojay.io | 9 months ago

Dissection of Joeffice: Open Source Office Suite in Java

Let's explore libraries and framework used to write an office suite in Java. The post Dissection of Joeffice: Open Source Office Suite in Java appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Java on Visual Studio Code – June 2023

Hi everyone, welcome to the our June update for Visual Studio Code for Java! The post Java on Visual Studio Code – June 2023 appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Sticky sessions with Apache APISIX – the demo

Learn how to setup sticky sessions with Apache APISIX and replication involving the Spring ecosystem and Hazelcast. The post Sticky sessions with Apache APISIX – the demo appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Sticky sessions with Apache APISIX

Learn about sticky sessions, and that you should always use session replication with sticky sessions, and how to implement sticky sessions on Apache APISIX. The post Sticky sessions with Apache APISIX appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

The Evolution of Java: Challenging Stereotypes and Embracing Modernity

Dive into the modern evolution of Java, challenging stereotypes and showcasing its transformative features. Discover how Java is becoming more versatile, expressive, and future-ready than ever before. The post The Evolution of Java: Challenging Stereotypes and Embracing Modernity … | Continue reading


@foojay.io | 10 months ago

Understanding Security Vulnerabilities: A First Step in Preventing Attacks

When I was a teenager, our local telephone company introduced a new service - the premium phone calls (AKA 1-900 numbers). The fun part was that we discovered a workaround to these charges by dialing the sequential local numbers which ... The post Understanding Security Vulnerabi … | Continue reading


@foojay.io | 10 months ago

Billions of Messages Per Minute Over TCP/IP

Chronicle Wire has had new features added to permit communication with other components across a TCP/IP network. The post Billions of Messages Per Minute Over TCP/IP appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Exploring the Depths of Java: A Comprehensive Conversation with Jakob Jenkov, Part-II

Welcome back to the second installment of our in-depth conversation with Jakob Jenkov, a leading figure in the world of Java. If you joined us for Part I, you'll recall the insightful discussions around the evolving landscape of Java and ... The post Exploring the Depths of Java: … | Continue reading


@foojay.io | 10 months ago

Running a CRaC Java application on Raspberry Pi

Did you know that CRaC on embedded / Raspberry Pi is definitely possible and dramatically improves startup time? The post Running a CRaC Java application on Raspberry Pi appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

A Dissection of Java JDBC to PostgreSQL Connections, Part 2: Batching

Batching for PostgreSQL JDBC is a property of the extended protocol. It uniquely allows you to send multiple statements in a single request. The post A Dissection of Java JDBC to PostgreSQL Connections, Part 2: Batching appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Seven Reasons You Should Not Ignore Flaky Tests

Flaky tests might seem like a minor annoyance, but in fact they are a major blocker to developer productivity. Here's seven reasons why. The post Seven Reasons You Should Not Ignore Flaky Tests appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Foojay Status Report: July 2023

Great big overview of Foojay.io, plus its subprojects and related insights and statistics, as well as upcoming plans. The post Foojay Status Report: July 2023 appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Working on An Unfamiliar Codebase

If you want to understand a codebase better, you need more than just to read its code; you need to draw diagrams. The post Working on An Unfamiliar Codebase appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

JavaFX Links of June 2023

Again a lot has been shared this month in the jfx-central.com #LinksOfTheWeek! And that website itself is "under heavy construction" as version 2 is getting a completely new design and several improvements. Your help is wanted! See the last section ... The post JavaFX Links of Ju … | Continue reading


@foojay.io | 10 months ago

The Curious Case of Different Runtimes

Strange runtime behavior when presenting different training data to the JIT. We show how we diagnosed and condense down to a few test cases. The post The Curious Case of Different Runtimes appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Exploring the Depths of Java: A Comprehensive Conversation with Jakob Jenkov, Part-I

Welcome to the first part of our deep dive with Jakob Jenkov, a seasoned software developer and AWS solution architect, whose love for coding began with a Commodore 128 in the late '80s. Over the past decades, Jenkov has navigated ... The post Exploring the Depths of Java: A Comp … | Continue reading


@foojay.io | 10 months ago

How to Optimise CPU Performance Through Isolation and System Tuning

The standard solutions for controlling CPU isolation for low-latency applications under Linux are isolcpus and cgroups/csets. However, they each have their downsides and can be awkward to use. The post How to Optimise CPU Performance Through Isolation and System Tuning appeared f … | Continue reading


@foojay.io | 10 months ago

Time Machine: A Look-Back at Java Sessions from NODES 2022

As we prepare for NODES 2023, let's pull out the time machine and review the Java sessions from NODES 2022. The post Time Machine: A Look-Back at Java Sessions from NODES 2022 appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

How to Upgrade to Jakarta EE 10 and GlassFish 7: It’s Much Easier Than You Think!

We’ll explain everything you need to know before upgrading to Jakarta EE 10 and guide you to complete the upgrade successfully and in almost no time. The post How to Upgrade to Jakarta EE 10 and GlassFish 7: It’s Much Easier Than You Think! appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Debugging OpenJDK Tests in VSCode (Without Losing Your Mind)

jtreg is the test harness used by the JDK test framework. Attaching a debugger like gdb is possible but rather cumbersome, especially if you want to bring this into a launch.json to enable debugging in VSCode. But worry no more: My new vsreg utility will do this for you. The post … | Continue reading


@foojay.io | 10 months ago

Foojay Podcast 26: The Future of Source Control and CI/CD

We have seen evolutions from CVS to Subversion to Git. Is this the endpoint? Did we find the holy grail? What evolutions are waiting for us? The post Foojay Podcast 26: The Future of Source Control and CI/CD appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Why I prefer trunk-based development

Trisha summarizes the advantages of trunk-based development (as opposed to branch-based development) in this article. The post Why I prefer trunk-based development appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Introducing the Foojay.io Calendar API

We are excited to share that Foojay is growing and offering additional resources to bring the Java community together on a global scale. The post Introducing the Foojay.io Calendar API appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Building Custom Solutions vs. Buy-and-Build Software

Sometimes time spent reinventing the wheel results in a revolutionary new rolling device. But sometimes it just amounts to time spent reinventing the wheel. The post Building Custom Solutions vs. Buy-and-Build Software appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Exploring Java 21’s Intriguing Additions: Unveiling New Features (Part 1)

Learn about a few notable features that stand out in the upcoming Java 21, in an overview of their functionalities and potential use cases. The post Exploring Java 21’s Intriguing Additions: Unveiling New Features (Part 1) appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Manifold vs. Lombok: Enhancing Java with Property Support

Two decades ago we worked on properties in Java. Lombok filled in that gap. Manifold aims to solve this same problem. Is it ready? The post Manifold vs. Lombok: Enhancing Java with Property Support appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Foojay Podcast #25: Game Development with Java, JavaFX, and FXGL

Let's learn from experts why Java and JavaFX should be on your game-development-language-list! The post Foojay Podcast #25: Game Development with Java, JavaFX, and FXGL appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Report of My Small Tour d’Europe

I spoke in two weeks in 3 countries, 4 cities and 5 different venues. This is my report on the trip. Check it out! The post Report of My Small Tour d’Europe appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

The Anatomy of a JVM

Find out how the JVM handles many tasks that you, as a developer, don't want and need to take care of compared to other languages. The post The Anatomy of a JVM appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Vaadin 24.1: Bringing You More Than Minor Improvements!

While Vaadin 24.0 was about upgrading the technology baseline and compatibility, this version brings you new features! The post Vaadin 24.1: Bringing You More Than Minor Improvements! appeared first on foojay. | Continue reading


@foojay.io | 10 months ago

Exploring Java Records In A Jakarta EE Context

This article explores the adoption of Java Records in a Jakarta EE application as a data transfer and projection object. The post Exploring Java Records In A Jakarta EE Context appeared first on foojay. | Continue reading


@foojay.io | 10 months ago