Starting Apache Kafka – Java Producer & Consumer (Windows 10)

Learn how to configure Kafka topics and create a Java-based Kafka Consumer and Producer, withApache Kafka v3.4 on Windows 10. The post Starting Apache Kafka – Java Producer & Consumer (Windows 10) appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Book Review: “OpenJDK Migration for Dummies”

Not just a technical manual, Simon Ritter's new book is a companion on a journey through the complexities of OpenJDK migration. The post Book Review: “OpenJDK Migration for Dummies” appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Reading the temperature, humidity, and pressure from a BME280 Sensor with Java, Pi4J, I2C, SPI, and JBang

In this tutorial, I want to show you how you can read the temperature, humidity, and pressure from a BME280 Sensor. The post Reading the temperature, humidity, and pressure from a BME280 Sensor with Java, Pi4J, I2C, SPI, and JBang appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Preparing for JDK 21: A Comprehensive Overview of Key Features and Enhancements

As we inch to the release of JDK 21 in September (next month!), get familiar with the features and improvements this version will bring! The post Preparing for JDK 21: A Comprehensive Overview of Key Features and Enhancements appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

The Inner Workings of Safepoints

Have you ever wondered how safepoints are implemented in the OpenJDK? Follow me down the rabbit hole into the inner workings of the JVM. The post The Inner Workings of Safepoints appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Book Review: “Designing APIs with Swagger and OpenAPI”

This review is about Designing APIs with Swagger and OpenAPI by Joshua S. Ponelat and Lukas L. Rosenstock from Manning. The post Book Review: “Designing APIs with Swagger and OpenAPI” appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Book Announcement: “OpenJDK Migration Guide for Dummies”

Learn how to migrate to OpenJDK and get tips on how to select the right Java partner to assist with your migration and provide ongoing support, security updates, application tuning, cost reductions, and expertise. The post Book Announcement: “OpenJDK Migration Guide for Dummies” … | Continue reading


@foojay.io | 9 months ago

Java on Visual Studio Code – July 2023

In this article, we are going to provide you an exciting update about our improved decompiler functionality. Additionally, we are going to do a deep-dive into our code completion. The post Java on Visual Studio Code – July 2023 appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Starting Apache Kafka on Windows 10 (Kafka v3.4)

This is part one of a two part articles series on Running Apache Kafka Server, Configuring Kafka Topics, and Creating a Kafka Consumer, as also a Kafka Producer. The post Starting Apache Kafka on Windows 10 (Kafka v3.4) appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

JavaFX Links of July 2023

Changes to the JavaFX core, new and enhanced applications, games, component libraries, tools, podcasts, videos, tutorials, and books! The post JavaFX Links of July 2023 appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Evaluating Apache APISIX vs. Spring Cloud Gateway

In this article, I'd like to share my understanding of Spring Cloud Gateway and how it compares to Apache APISIX. The post Evaluating Apache APISIX vs. Spring Cloud Gateway appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

The IKEA Effect

On placing a (sometimes disproportionately) higher value on things that you've either made yourself, or to which you’ve contributed towards making. The post The IKEA Effect appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

When Speed Matters: Real-time Stream Processing with Hazelcast and Redpanda

Let's explore the powerful combination of Hazelcast and Redpanda to build high-performance, scalable, and fault-tolerant applications that react to real-time data. The post When Speed Matters: Real-time Stream Processing with Hazelcast and Redpanda appeared first on foojay. | Continue reading


@foojay.io | 9 months ago

Busting Myths, Building Futures: A Conversation with Cay Horstmann on Java and Machine Learning

In our ongoing series of interviews with the movers and shakers of the software world, we bring you a conversation with Cay Horstmann, a towering figure in the Java community and a respected academic and entrepreneur. Known for his prolific ... The post Busting Myths, Building Fu … | Continue reading


@foojay.io | 9 months ago

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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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 | 10 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