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


Java Stream Gatherers – Write Your Own Stream Operations!
December 6, 2023What are Stream Gatherers in Java? Learn how to use the five built-in gatherers and how to write your own custom intermediate stream operations.
Flexible Constructor Bodies in Java 25: Executing Code Before super()
December 5, 2023Flexible Constructor Bodies: Since Java 25, you can run code before super(...) and this(...) in constructors. This article shows you how.
String Templates in Java
December 5, 2023String templates were withdrawn after two previews (Java 21/22): how they worked, why the design was pulled, and what the alternatives are.
Unnamed Variables and Patterns in Java
December 4, 2023With the underscore (_), you can mark variables and patterns in Java that you don’t need – making your code more concise. Learn what to watch out for.
Hexagonal Architecture With Quarkus [Tutorial]
October 30, 2023Hexagonal Architecture Tutorial, Part 4: We migrate the demo application to Quarkus with CDI and Panache – without changing the application core.
Ports and Adapters Java Tutorial: Adding a JPA Database Adapter
October 4, 2023In part three of our hexagonal architecture series, we add a JPA adapter for MySQL to the application – without changing a single line in the core.
Hexagonal Architecture in Java – A Hands-On Implementation Tutorial
July 4, 2023Step-by-step tutorial: how to implement a working application based on hexagonal architecture – with Java, Maven, and ArchUnit.
Structured Concurrency in Java with StructuredTaskScope
June 14, 2023Structured Concurrency makes code more readable and robust. Learn how StructuredTaskScope and policies work — and how to write your own.
Java 21 Features (with Examples)
June 8, 2023All Java 21 features: Virtual Threads, Sequenced Collections, Record Patterns, Pattern Matching for switch, Scoped Values, Structured Concurrency ...
How to Change Java Versions in Windows (updated for Java 28)
March 21, 2023How to install multiple Java versions on Windows in parallel? How to change Java versions on the command line? (Up to JDK 28)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