
Become a Better Java Developer!
Modern Java: new versions & features, performance, and JVM insights – tutorials and deep dives, clearly explained and directly applicable.


Advent of Code 2025 – Java Solutions
December 5, 2025Explore Advent of Code 2025 with clear Java 25 solutions focused on readability, SonarQube quality, and practical coding insights.
Java 26 Features (with Examples)
December 3, 2025All Java 26 features with code examples: HTTP/3, Lazy Constants, Ahead-of-Time caching with any GC, “final means final”, a faster G1 GC, and more...
Withers in Java: Derived Record Creation Expressions (Preview)
September 3, 2025Withers (Derived Record Creation Expressions) derive new Java records by specifying only the changed components — no boilerplate.
Java Modernization: How to Get Your Team and Management on Board
August 11, 2025How to get your team and management excited about Java modernization – with clear arguments, practical examples & quick wins for sustainable success.
Java 25 Features (with Examples)
June 5, 2025Java 25: Scoped Values, Compact Source Files, Flexible Constructor Bodies, Compact Object Headers, and more – clearly explained, with examples.
Initialization-on-Demand Holder Idiom in Java
May 8, 2025Learn how the Initialization-on-Demand Holder Idiom in Java enables thread-safe lazy initialization of static fields without synchronization overhead.
Double-Checked Locking in Java – Thread-Safe and Correct
May 8, 2025Learn how to implement Double-Checked Locking in Java the correct, thread-safe way – for lazy object initialization without full synchronization.
Lazy Constants in Java (Stable Values) – Safe and Lazy Initialization
April 9, 2025What are Lazy Constants (formerly Stable Values), and how do you use them? What are Lazy Lists and Lazy Maps? How do they work internally?
Compact Object Headers in Java (JEP 519)
April 7, 2025How Java reduces object headers from 96 to 64 bits (12 → 8 bytes) – without any loss of information. Compact Object Headers (JEP 519) explained.
Java 24 Features (with Examples)
December 4, 2024Java 24 explained – with code examples: Stream Gatherers, synchronized in virtual threads without pinning, AoT Class Loading, Compact Object Headers.Want Even More Knowledge?
My blog features many articles on Java, software architecture, and performance — from foundational concepts to advanced patterns.
If you want to go deeper, check out my trainings: hands-on, easy to understand, and directly applicable to your day-to-day project work. Instead of theory, I teach principles that help you write code that is better, more maintainable, and more performant in the long run.
Explore the Java Trainings