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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Quickly learn how easy it is to create data-centric web applications with the combination of Vaadin and jOOQ! | Continue reading
Hilla enables type-safe communication between SpringBoot backends and TS frontend. Integrated tooling and components help you build apps fast! | Continue reading
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
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
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
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
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
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
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
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
It is more beneficial to use sealed and value class instead of enumerations in Kotlin; let’s find out why. | Continue reading
New OSS approach for debugging live applications - right from inside your IDE or terminal window, and without stopping the live application. | Continue reading
The DurationAPI is coming out of its experimental stage and offers a nice DSL to easily work with time durations. | Continue reading
foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading
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
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
Jakarta Concurrency is a small, but fundamental, specification in the Jakarta EE umbrella. As project lead, I provide more information on it. | Continue reading
In this article, I want to go over three challenges we face when debugging modern applications: polyglot, unreproducible, data pollution. | Continue reading
Hi everyone, welcome to the February update of Visual Studio Code Java and this time we have a special edition for education! | Continue reading
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
JBang is a great way to create your first program to control electronic components connected to the Raspberry Pi's GPIO pins. | Continue reading
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
Why Apache Pulsar and its support for streaming data is the right choice for multi-datacenter, geo-distributed deployments. | Continue reading
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
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
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
Let’s learn java stream API with a few practical examples. | Continue reading
foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading