Increasing Event Streaming with Kafka and Azul

In this article you will learn how to switch between two different Java runtime environments to run an Apache Kafka instance. The post Increasing Event Streaming with Kafka and Azul appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

Debugging Java Equals & Hashcode Performance in Production

Hashcode and equals are at the crux of many hard to nail down Java performance issues. Here's how to track these in production! The post Debugging Java Equals & Hashcode Performance in Production appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

APISIX: An API Gateway the Apache Way

Starting with Apache APISIX as your API Gateway is easy as pie. Use Docker, with the APISIX and etcd images, and off you go. The post APISIX: An API Gateway the Apache Way appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

Blink a LED on Raspberry Pi with Vaadin

Thanks to Vaadin, you can get a fully running application with a few clicks. And Adding GPIO-interaction is easy with the Pi4J library. The post Blink a LED on Raspberry Pi with Vaadin appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

5 Things You Probably Didn’t Know About Java Concurrency

Even while threads are helpful, they are dreadful to many developers. Here are five essential threading concepts for Java developers! The post 5 Things You Probably Didn’t Know About Java Concurrency appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

Java Security: Log4J, the SecurityManager, and Funding

A demonstration of log4j exploits, which defenses people tried, and which worked. A look at open source funding models, subscriptions, and bug bounty programs to see why it's sometimes hard to donate. The post Java Security: Log4J, the SecurityManager, and Funding appeared first … | Continue reading


@foojay.io | 2 years ago

Debugging Race Conditions in Production

Debugging race conditions is hard, unfortunately production environments are especially problematic for these kinds of problems! The post Debugging Race Conditions in Production appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

What’s New and Exciting in Java 18?

Time runs forward without compromise! The six month release period is over and, similar to people expecting spring and nice weather, the Java community is excited about the next OpenJDK release, this time holding the number 18. Yes, Java 18 ... The post What’s New and Exciting in … | Continue reading


@foojay.io | 2 years ago

Error Handling in Java and Across Different Languages

In this post, I'd like to describe how a couple of popular languages cope with errors. Get started here for an overview of errors everywhere! The post Error Handling in Java and Across Different Languages appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

All about Generics: Part 1

Introduction of Generics Generics are meant to be used to parameterize types. A piece of code can be written generically enough so that we can fit a variety of types in it.  Being a strongly type-safe language, java requires to ... The post All about Generics: Part 1 appeared fir … | Continue reading


@foojay.io | 2 years ago

Reaper 3.0 for Apache Cassandra is available

The K8ssandra team is pleased to announce the release of Reaper 3.1. Let’s dive into the features and improvements that 3.0 recently introduced (along with some notable removals) and how the newest update to 3.1 builds on that. JDK11 support Starting with 3.1.0, ... The post Reap … | Continue reading


@foojay.io | 2 years ago

Security Warning: Your Java Attack Surface Just Got Bigger

Learn about common threats, vulnerabilities, and misconfiguration including the recently disclosed issues in Log4j. The post Security Warning: Your Java Attack Surface Just Got Bigger appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

The Basics Of Breakpoints You Might Not Know

In episodes 4 and 5 of “140 Second Ducklings”, I got deeper into the more advanced underpinnings of breakpoints. There’s still a lot more to learn to move forward, but even at this stage it’s surprising how many things are ... The post The Basics Of Breakpoints You Might Not Know … | Continue reading


@foojay.io | 2 years ago

Interview with Tom Granot – Developer Observability, KoolKits and Reliability

In preparation for the upcoming Developer Observability Masterclass we’re hosting at Lightrun with Thoughtworks and RedMonk, I sat down for a brief interview with Tom Granot - the Director of Developer Relations at Lightrun. Tom will MC the event as ... The post Interview with To … | Continue reading


@foojay.io | 2 years ago

Visualization of the Message Flow between Business Functions with Vaadin and Neo4j

Analyzing and visualizing message flows between business functions was the goal of my current project. Learn about where Vaadin and Neo4J fit in! The post Visualization of the Message Flow between Business Functions with Vaadin and Neo4j appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

7 Reasons Why, After 26 Years, Java Still Makes Sense!

After many discussions with Java developers, combined with my personal experiences with the Java community and platform, here are the key reasons why Java developers love Java after all these years! The post 7 Reasons Why, After 26 Years, Java Still Makes Sense! appeared first on … | Continue reading


@foojay.io | 2 years ago

Lessons learned from previous projects

An exciting part of software development is what was unanimously considered good practice at one point in time can be more ambiguous years later. Or even plain wrong. However, you generally need to do it multiple times over time to ... The post Lessons learned from previous proje … | Continue reading


@foojay.io | 2 years ago

JDKMon 17.0.23 Released

JDKMon is a little tool written in JavaFX that tries to detect all OpenJDK distros installed while keeping track of updates for them. The post JDKMon 17.0.23 Released appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

Have you upgraded to Cassandra 4.0?

If you’re a current Cassandra user, upgrading to the latest releases can be fairly simple and requires no downtime. The post Have you upgraded to Cassandra 4.0? appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

Detecting, Investigating and Verifying Fixes for Security Incidents and Zero Day Issues Using Lightrun

Learn about major milestones in app security: finding the issue, evaluating a breach, proving it, and validating the fix! The post Detecting, Investigating and Verifying Fixes for Security Incidents and Zero Day Issues Using Lightrun appeared first on foojay. | Continue reading


@foojay.io | 2 years ago

Vaadin and jOOQ: Match Made in Heaven

Quickly learn how easy it is to create data-centric web applications with the combination of Vaadin and jOOQ! | Continue reading


@foojay.io | 2 years ago

Hilla 1.0: A new Frontend Framework for SpringBoot

Hilla enables type-safe communication between SpringBoot backends and TS frontend. Integrated tooling and components help you build apps fast! | Continue reading


@foojay.io | 2 years ago

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

Today I will make an attempt to appreciate how unique the JVM is. So, let’s begin the journey to how Java works! | Continue reading


@foojay.io | 2 years ago

Alternatives to DTO

I used to believe (and still do) that DTOs should be a thing of the past. Yet, it seems their usage is still widespread. | Continue reading


@foojay.io | 2 years ago

Journeys in Java, Level 3: Building an Empire of Microservices

Let’s continue our journey to learn microservice. Today we will learn to use a full-fledged MongoDB database running in a Docker container. | Continue reading


@foojay.io | 2 years ago

The Serverless Database You Really Want

This article argues how Apache Cassandra is the Serverless database that is open and free as in freedom in the modern cloud era. | Continue reading


@foojay.io | 2 years ago

Why Pulsar Beats Kafka for a Scalable, Distributed Data Architecture

This article argues why Apache Pulser is better than Apache Kafka when it comes to using cloud and microservices and how it fits the open-source mindset. | Continue reading


@foojay.io | 2 years ago

Debugging Tutorial: Java Return Value, IntelliJ Jump to Line and more

Posted two new videos in the "140 Second Duckling" series. They cover some basic and some little-known features of debuggers. Such as Marking | Continue reading


@foojay.io | 2 years ago

Java Thread Programming (Part 14)

What happens if the child-task creates more tasks and the parent-task waits for the child-tasks to finish in TheadPool in java. | Continue reading


@foojay.io | 2 years ago

Kover : Code Coverage plugin for Kotlin

Kover is a code coverage tool for Kotlin. It's still in incubator phase but I took it for a spin and it is already very useful as part of local or CI workflows! In this article I go through the setup and some of my favourite goodies of the tool. | Continue reading


@foojay.io | 2 years ago

Avoiding Stringly-typed in Kotlin

It is more beneficial to use sealed and value class instead of enumerations in Kotlin; let’s find out why. | Continue reading


@foojay.io | 2 years ago

Introducing KoolKits: OSS Debugging Toolkits for Kubernetes

New OSS approach for debugging live applications - right from inside your IDE or terminal window, and without stopping the live application. | Continue reading


@foojay.io | 2 years ago

Measuring Time and Duration in Kotlin

The DurationAPI is coming out of its experimental stage and offers a nice DSL to easily work with time durations. | Continue reading


@foojay.io | 2 years ago

Save hours on your setup of K8ssandra with the new config builder

foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading


@foojay.io | 2 years ago

Project Panama for Newbies (Part 4)

imagine C code capable of performing a computation and after its completion the C code will notify Java code to perform updates to JavaFX UI. | Continue reading


@foojay.io | 2 years ago

Use git bisect to Pinpoint a Bug

I had read about git bisect a few times and figured that this time, I would use that tool to find an annoying bug. | Continue reading


@foojay.io | 2 years ago

Jakarta Concurrency: Present and Future

Jakarta Concurrency is a small, but fundamental, specification in the Jakarta EE umbrella. As project lead, I provide more information on it. | Continue reading


@foojay.io | 2 years ago

Enter the Cloud Native Dojo: Blackbelt-Level Debugging

In this article, I want to go over three challenges we face when debugging modern applications: polyglot, unreproducible, data pollution. | Continue reading


@foojay.io | 2 years ago

Java on Visual Studio Code Update: February 2022

Hi everyone, welcome to the February update of Visual Studio Code Java and this time we have a special edition for education! | Continue reading


@foojay.io | 2 years ago

Hand Ground Coffee: Command Line Tools for Java

I prefer the command line for my daily work, using the combination of git, sed, grep, bash commands etc. makes recurring tasks easier. | Continue reading


@foojay.io | 2 years ago

Controlling Electronics with JBang on the Raspberry Pi

JBang is a great way to create your first program to control electronic components connected to the Raspberry Pi's GPIO pins. | Continue reading


@foojay.io | 2 years ago

7 Ways to Improve Your Code Reading Skills

As more and more companies go Agile, being able to read other's code is more important than ever. Read on for some tips on how to improve this skill. | Continue reading


@foojay.io | 2 years ago

The Critical Role Streaming Plays in a Data Stack

Why Apache Pulsar and its support for streaming data is the right choice for multi-datacenter, geo-distributed deployments. | Continue reading


@foojay.io | 2 years ago

System Logger

Almost all Java developers are familiar with logging frameworks like Log4j, but not the System.Logger that has been available since java 9. | Continue reading


@foojay.io | 2 years ago

Foojay at FOSDEM 2022 on YouTube

Last weekend, FOSDEM 2022 was held, with the friends of OpenJDK putting together an awesome program on the tools and editors around OpenJDK. | Continue reading


@foojay.io | 2 years ago

Journeys in Java, Level 2: Building an Empire of Microservices

Let's dive into the world of microservices find out the complexities, best practices, and troubles. I will share all my learnings, as well! | Continue reading


@foojay.io | 2 years ago

Playing practically with Stream API

Let’s learn java stream API with a few practical examples. | Continue reading


@foojay.io | 2 years ago

Cassandra Database Migration to Kubernetes with Zero Downtime

foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading


@foojay.io | 2 years ago