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 by the feedback I’m getting for the course and new videos. I also launched a free new Java course for …

Read More »

Writing a Profiler from Scratch: The Profiling Loop

This is the second post in the series, building a profiler from scratch using AsyncGetCallTrace. Today, we’re covering wall-clock profiling and how to collect the obtain stack traces. If you’re unfamiliar with AsyncGetCallTrace, please check out my previous article in the series here. Our goal today is to essentially write the primary loop of a profiler and do the following …

Read More »

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

SnakeYaml is a well-known YAML 1.1 parser and emitter for Java. Recently, a vulnerability — CVE-2022-1471 — was reported for this package. This vulnerability can lead to arbitrary code execution. The org.yaml:snakeyaml package is widely used in the Java ecosystem, in part because it is packaged by default with Spring Boot in the spring-boot-starter. In this article, we look into the security vulnerability affecting this …

Read More »

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

In my recent interview with Software Daily, I discussed that there are many companies looking for better customer experience, faster execution, and lower infrastructure costs… and that they have discovered a better use of Java to help them with just that. The interview describes that when you use hyper-optimized Java runtimes instead of vanilla OpenJDK – you do less tuning …

Read More »

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

While the Cloud offers great convenience and flexibility, the operational cost for applications deployed in it can sometimes be significant. In this article, we show a way to substantially reduce operating costs in latency-sensitive Event-Driven Architecture (EDA) Java applications by migrating from Kafka to Chronicle Queue open-source, which is a more resource-efficient and lower-latency queue implementation. What is EDA? An …

Read More »

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

I asked on Twitter and LinkedIn why many developers don’t write or give talks, and I was amused by the response I received. This article is about that. The problems: It turns out, developers do not write blogs or give presentations for a variety of reasons. Some developers may believe they lack interesting experiences or information to share or that …

Read More »

Post Title

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 code (~20 loc), and will have to develop a simple yet self-contained framework that can be used to write real-world …

Read More »

Managing Dependencies in IntelliJ IDEA

In this tutorial, following on from viewing dependencies, we’re going to take a look at managing dependencies in IntelliJ IDEA. We’ll look at different ways to add dependencies to your project, and how to add, upgrade and remove dependencies using Package Search. Add dependencies There are several ways to add new dependencies to your project. From the build file using …

Read More »

New Section Added to Foojay.io: Java Quick Start

Foojay.io aims to be the starting point for “all-things OpenJDK,” but during one of my morning walks the idea struck me that this site really needs complete beginner materials, too. As we want to spread the love for OpenJDK, i.e., Java, Kotlin, and other OpenJDK languages, the JVM, and all related technologies, we were missing an important audience: someone who …

Read More »

Spring Boot – Annotation Reference – 01/b

In the second part of my article series on Spring Boot Annotations, we focus on REST and Spring Stereotype Annotations. In continuation of part 01/a of this article, let’s continue our Spring Boot Annotations journey. What percentage (depth and extent) of Spring Boot Annotations do you think you really know? This includes annotations in all their glory and the power …

Read More »