Firefox Profiler Beyond the Web

Ever wanted to profile your application directly from your IDE? Here comes the Java JFR Profiler plugin, an open-source plugin for IntelliJ! The post Firefox Profiler Beyond the Web appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Why Core-to-Core Latency Matters

An initial goal of Java was to “write once, run anywhere”, but does that mean we should not be sympathetic to the hardware? The post Why Core-to-Core Latency Matters appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How to Run a Java Application with CRaC in a Docker Container

CRaC is an OpenJDK project developed by Azul to solve the problem of "slow" startup times of the JVM in a microservice environment. The post How to Run a Java Application with CRaC in a Docker Container appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Real-time Stream Processing with Hazelcast and StreamNative

Learn how to stream data from Apache Pulsar into Hazelcast, where you learn how to process data in real time. The post Real-time Stream Processing with Hazelcast and StreamNative appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

More Foojay.io FOSDEM Speaker Predictions for 2023

Following from the first part in this series, here is the next, from speakers who will be in the Foojay room at FOSDEM, Sunday, 5 February. The post More Foojay.io FOSDEM Speaker Predictions for 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Journeys in Java, Level 7: Externalize Microservice Configuration

Learn how to set up a service that hosts the Spring Cloud Config server and wire our Neo4j microservice as the config client service. The post Journeys in Java, Level 7: Externalize Microservice Configuration appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

JavaFX Links of January 2023

2023 has taken of with a flying start! Here is a summary of the Links Of The Week that were published in January on jfx-central.com. The post JavaFX Links of January 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Quest for REST

SOAP's biggest flaw was its complexity and its focus on big companies, but it at least provided a shared set of standard specifications. The post Quest for REST appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How Java Litters Beyond the Heap: Part 3, Solid-State Drives

Explore how solid-state drives (SSDs), the default storage medium for on-disk data, use garbage collection. The post How Java Litters Beyond the Heap: Part 3, Solid-State Drives appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

AsyncGetStackTrace: A better Stack Trace API for the JVM

An introduction into GetStackTrace, AsyncGetCallTrace, and the history and specification of AsyncGetStackTrace. The post AsyncGetStackTrace: A better Stack Trace API for the JVM appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Modular Monolithic in Practice

In this article, you learn about the Modular Monolithic architecture and how you can create it using the Spring Framework and Gradle. The post Modular Monolithic in Practice appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

“The More You Say, the Less People Remember…

…The Fewer the Words, the Greater the Profit.” And more wisdom and insight from Peter Lawrey, covering a range of development approaches. The post “The More You Say, the Less People Remember… appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Java Bytecode Simplified: Journey to the Wonderland (Part 3)

Java bytecode can be updated and controlled for many reasons, such as adding new features, instrumenting code for performance monitoring. The post Java Bytecode Simplified: Journey to the Wonderland (Part 3) appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Vaadin, OAuth2, and Keycloak

Security matters! Learn how to configure Vaadin and Spring Security to use OAuth2 with Keycloak on Foojay.io Today! The post Vaadin, OAuth2, and Keycloak appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #12: State and Future of the IDEs

In this podcast,  we are talking to some of the key people working on different IDEs, Integrated Development Environments. The post Foojay Podcast #12: State and Future of the IDEs appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay.io FOSDEM Speaker Predictions for 2023

FOSDEM is around the corner and a group of great speakers is lined up to talk about the OpenJDK -- see what they predict for 2023! The post Foojay.io FOSDEM Speaker Predictions for 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Friends of OpenJDK Schedule at FOSDEM 2023

On from good times in 2022 and 2021, we have a really great schedule with inspiring speakers for FOSDEM in Brussels, on Sunday, February 5! The post Friends of OpenJDK Schedule at FOSDEM 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How Does Kafka Perform When You Need Low Latency?

Kafka benchmarks aim to discuss low latency characteristics of Kafka. Instead, they appear to be configured for throughput rather than low latency. The post How Does Kafka Perform When You Need Low Latency? appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How to Release a Java Module with JReleaser to Maven Central with GitHub Actions

Learn from scratch about how to get started releasing a Java module with JReleaser to Maven Central with Github Actions. The post How to Release a Java Module with JReleaser to Maven Central with GitHub Actions appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

JTest: Roll Out Your Own JUnit-Like Testing Framework

In this interactive tutorial and educational project, you'll learn about JUnit internals and the usage of Java annotations and reflection. The post JTest: Roll Out Your Own JUnit-Like Testing Framework appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #11: Looking Back to 2022 and Predictions for 2023

In this Foojay Podcast episode, we talk about Ted Neward's predictions, and an analogy between Twitter and Java! The post Foojay Podcast #11: Looking Back to 2022 and Predictions for 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Debugging Streams and Collections

I will run a book giveaway promotion on the Code Ranch on January 17th. Be sure to be there and let your friends know. It would be great to answer your questions about debugging. I'm very excited by this and ... The post Debugging Streams and Collections appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

The Massive Hidden Power of Breakpoints

It's been a big week. I'm currently reviewing the final draft of my upcoming debugging book. This is always a sobering, and exciting moment. A moment in which all of a sudden all the months of work become "real". I ... The post The Massive Hidden Power of Breakpoints appeared fir … | Continue reading


@foojay.io | 1 year ago

Writing a Profiler from Scratch: The Profiling Loop

How do profilers like async-profiler work? How to write your own? This is the second part, covering wall-clock profiling. The post Writing a Profiler from Scratch: The Profiling Loop appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Unsafe Deserialization Vulnerability in SnakeYaml (CVE-2022-1471)

org.yaml:snakeyaml package is widely used in the Java ecosystem, in part because it is packaged by default in the spring-boot-starter. The post Unsafe Deserialization Vulnerability in SnakeYaml (CVE-2022-1471) appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Why Your Choice of Java Virtual Machine (JVM) Matters More Than Ever

Learn why when you use hyper-optimized Java runtimes instead of vanilla OpenJDK you do less tuning and debugging! The post Why Your Choice of Java Virtual Machine (JVM) Matters More Than Ever appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How to Reduce Cloud Cost by 99% for EDA Kafka Applications

About 400x more instances can be run on the same hardware with Chronicle Queue for specific latency-sensitive EDA applications. The post How to Reduce Cloud Cost by 99% for EDA Kafka Applications appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Why Many Developers Don’t Write or Give Talks and How to Overcome Challenges

Learn why developers may not write or give talks and how sharing knowledge and experiences can improve communication skills, and much more! The post Why Many Developers Don’t Write or Give Talks and How to Overcome Challenges appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

JTest - Roll out your own JUnit-like testing framework This an interactive tutorial as well as an educational project that helps with your understanding of: (oversimplified) internals of JUnit usage of Java annotation and reflection You are given minimum starter ... The post appe … | Continue reading


@foojay.io | 1 year ago

Managing Dependencies in IntelliJ IDEA

Learn the different ways in which we can view our project's dependencies in IntelliJ IDEA, and the different focus for each view. The post Managing Dependencies in IntelliJ IDEA appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

2022 in Retrospective

Years when one changes jobs are always challenging but very interesting; 2022 was no different. What are your insights into last/this year? The post 2022 in Retrospective appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

New Section Added to Foojay.io: Java Quick Start

Foojay.io aims to be the starting point for “all-things OpenJDK". The idea struck me that this site needs complete beginner materials, too! The post New Section Added to Foojay.io: Java Quick Start appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Spring Boot – Annotation Reference – 01/b

In part #2 of my article series on Spring Boot Annotations, we focus on the REST and Spring Stereotype Annotations. The post Spring Boot – Annotation Reference – 01/b appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

What’s New in Jakarta REST 3.1 in Jakarta EE 10?

The latest version of Jakarta REST is 3.1, which shipped with Jakarta EE 10. This version comes with two great new noteworthy features! The post What’s New in Jakarta REST 3.1 in Jakarta EE 10? appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Building JavaFX with Gradle

I decided to create two Gradle build scripts that apply to modular and non-modular Java projects. Take a look -- what do you think? The post Building JavaFX with Gradle appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How to Leverage Method Chaining to Add Smart Message Routing

Learn how to use method chaining to add routing information to serialised data structures in a lightweight fashion! The post How to Leverage Method Chaining to Add Smart Message Routing appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #10: JUG World Tour: Dubai JUG

in this episode, we talk to the organizers of the Dubai JUG that started in May of 2022. Find out how the JUG started and where it's going! The post Foojay Podcast #10: JUG World Tour: Dubai JUG appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

A Short Primer on Java Debugging Internals

How does debugging work under the hood? This article explains the basics of JDI and JDWP and gives the JDWP packets for an example program. The post A Short Primer on Java Debugging Internals appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Why Picnic Picked Java

Finding the right tech stack is a context-dependent journey. There's no right or wrong, just a lot of different angles to explore! The post Why Picnic Picked Java appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Spring Modulith: Have We Reached Modularity Maturity?

Spring Modulith is the successor of Oliver Drotbohm's Moduliths project (with a trailing S). It uses both ArchUnit and jMolecules. The post Spring Modulith: Have We Reached Modularity Maturity? appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Java on Visual Studio Code Update – December 2022

Hi everyone, we are near the end of year. Looking back on 2022, there are a few highlights that we wanted to share with you all! The post Java on Visual Studio Code Update – December 2022 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

JavaFX Links of December

If anyone needs a reminder Java and JavaFX are "alive and kicking", you can not only check out jfx-central.com, but also the list below. The post JavaFX Links of December appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Debugging Program Control Flow

Control flow is much more than step over. You can "jump" to arbitrary code offsets while debugging to reproduce elaborate states and behaviors! The post Debugging Program Control Flow appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

A Faster Way to Build React + Spring Boot Apps Using Hilla 1.3

Hilla 1.3 offers an improved way to build React and Spring Boot apps, by enabling end-to-end type-safety and 45 UI components. The post A Faster Way to Build React + Spring Boot Apps Using Hilla 1.3 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Spring Boot – Annotation Reference – 01/a

Spring Boot Annotation Guide, providing an easy reference for daily development and provides code samples. The post Spring Boot – Annotation Reference – 01/a appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Writing a Profiler from Scratch: Introduction

How do profilers like async-profiler work? How to write your own? This series tries to write a tiny sampling-based profiler from scratch! The post Writing a Profiler from Scratch: Introduction appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Challenges when Developing a GUI for FIX

In this article, we explore the challenges in developing a Graphical User Interface (GUI) for Financial Information Exchange (FIX) data. The post Challenges when Developing a GUI for FIX appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How Java Litters Beyond the Heap: Part 2, Distributed Databases

Let’s create a simple Java application with YugabyteDB distributed database to see if garbage is generated in response to application requests. The post How Java Litters Beyond the Heap: Part 2, Distributed Databases appeared first on foojay. | Continue reading


@foojay.io | 1 year ago