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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year 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 | 1 year ago

Unique Identifiers Based on Timestamps in Distributed Applications

Generate a highly efficient approach to generating an 8-byte lightweight identifier that is unique across many hosts, based on some predetermined partitioning by host identifier. The post Unique Identifiers Based on Timestamps in Distributed Applications appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Java on Visual Studio Code – May 2023

Tons of new features covering performance improvement, user experience as well as Spring Boot integration. The post Java on Visual Studio Code – May 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

GitLab Pages Preview

How to preview GitLab Pages and share the preview's URL with teammates in a couple of steps. The post GitLab Pages Preview appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Breaking the Code: How Chris Newland is Changing the Game in JVM Performance!

In this enlightening interview, JVM performance specialist Chris Newland shares his journey in the Java universe. The post Breaking the Code: How Chris Newland is Changing the Game in JVM Performance! appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Operator Overloading in Java

Although Java doesn't natively support operator overloading, we'll discover how Manifold can extend Java with that functionality. The post Operator Overloading in Java appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Preventing Cross-Site Scripting (XSS) in Java applications with Snyk Code

By taking a proactive approach to XSS prevention and using the right resources and tools, developers can help ensure the security and integrity of their Java web applications. The post Preventing Cross-Site Scripting (XSS) in Java applications with Snyk Code appeared first on foo … | Continue reading


@foojay.io | 1 year ago

Upgrade a Java 8 Project to 11 or Higher

Keeping a project on Java 8 will eventually lead to running it on a non-maintained runtime. Aim for the stars and go for Java 17! The post Upgrade a Java 8 Project to 11 or Higher appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Neo4j’s Online Conference Is Coming In October… And You’re Invited!

Join the biggest graph community gathering dedicated to learning how to integrate graph technologies into ML and dev projects. The post Neo4j’s Online Conference Is Coming In October… And You’re Invited! appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

2023 Community Survey

Friends of OpenJDK Community Survey. Kickoff and instructions for a community driven data gathering exercise. The post 2023 Community Survey appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #24: BeJUG, BruJUG and how Devoxx was born as JavaPolis

The Foojay Java User Group World Tour has already brought us all over the world. In this episode, the host decided to stay at home in Belgium! The post Foojay Podcast #24: BeJUG, BruJUG and how Devoxx was born as JavaPolis appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Class Loader Hierarchies

Understanding class loader hierarchies is essential when developing instrumenting Java agents. So I wrote an article about it! The post Class Loader Hierarchies appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Java String Templates Today

Today, we will take a look at another exciting feature of the Manifold project: string templates. The post Java String Templates Today appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

FP in Kotlin: Defining a Pipe Operator

There's no support for the pipe operator |> in Kotlin, so we have to come up with a custom and clean implementation for this function. The post FP in Kotlin: Defining a Pipe Operator appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Java is Very Fast, If You Don’t Create Many Objects

The cost of object creation can be far higher than the cost of cleaning them up if they are very short lived. The post Java is Very Fast, If You Don’t Create Many Objects appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Resilience in Coding: Miro Wengner on Thriving in the Software Industry

In this insightful discussion, we sit down with Miro Wengner, an accomplished software engineer with a deep-rooted affinity for Java. Miro shares his professional journey, highlights the significant challenges in the field, and reflects on the key moments that shaped ... The post … | Continue reading


@foojay.io | 1 year ago

JavaFX Links of May 2023

Again a busy month in JavaFX-world! Here is a nice list with links for your reading and clicking pleasure! The post JavaFX Links of May 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Boosting Similarity Search with Real-time Stream Processing

Combining the strengths and advantages of vector databases and real-time stream processing provides a unique developer experience and an efficient way of processing data in real-time at scale. The post Boosting Similarity Search with Real-time Stream Processing appeared first on … | Continue reading


@foojay.io | 1 year ago

Managing Data Residency: The Demo

In this article, implement Data Residency within a simple architecture, thanks to Apache APISIX and Apache ShardingSphere. The post Managing Data Residency: The Demo appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Revolutionize JSON Parsing in Java with Manifold

Parsing JSON in Java (and other formats) can be as easy as in JS. It can do much more while keeping the type-safety and deep IDE integration. The post Revolutionize JSON Parsing in Java with Manifold appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Your First Vaadin Spring Application in 2023

Create new Vaadin Java web application projects using start.spring.io. Configure the dependencies and choose your Maven or Gradle. The post Your First Vaadin Spring Application in 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

JavaFinder: Keeping Track of Java Inventories

Do you ever wonder how many Java distributions you have installed on your machine? The post JavaFinder: Keeping Track of Java Inventories appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

“Transitioning to Java”: My First Book!

I like to describe this book as a beginner's book for experts. Anyone who needs to get up to speed quickly using Java is my primary audience. The post “Transitioning to Java”: My First Book! appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Java Threads Reimagined: A Reflection on JConf Toronto 2023 and the Dawn of a New Era of Concurrency

Experience the intersection of expertise, innovation, and camaraderie at JConf Toronto 2023, a unique platform. The post Java Threads Reimagined: A Reflection on JConf Toronto 2023 and the Dawn of a New Era of Concurrency appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay Developer Certification: Measure Skills!

Learn the why and how of a group of enthusiastic people implementing a new sort of developer certification that objectively measures dev skills on Foojay. The post Foojay Developer Certification: Measure Skills! appeared first on foojay. | Continue reading


@foojay.io | 1 year ago