Core Java
-

C# 13 & .NET 9 vs Java 25: The Feature Gap Has Closed — Now What?
For decades, Java and C# traded punches on language features. In 2026, however, that fight looks a lot more like…
Read More » -

Java Time API: Converting Between Date and Instant
Working with dates and times is a common requirement in applications, especially when dealing with distributed systems, APIs, or databases.…
Read More » -

Java’s Memory Model Is Not What You Think: The Gap Between the JMM Spec and the JIT’s Actual Guarantees
The Java Memory Model is formally specified. The JIT implements a superset of that spec in ways the spec permits…
Read More » -

Structured Concurrency and the Death of CompletableFuture Hell
What Java 21–26’s concurrency model actually changes at the architecture level. Not a feature tour — a genuine examination of…
Read More » -

Kotlin 2.x vs Java 21+The Language Choice for New JVM Projects
The K2 compiler shipped. Multiplatform went stable. Java landed records, pattern matching, and virtual threads. The gap genuinely narrowed —…
Read More » -

Sealed Classes and Exhaustive Pattern Matching: How They Change API Design, Not Just Syntax
Both features have been stable since Java 17 and 21. Most articles show the syntax. Almost none explain how they…
Read More » -

Java Module System in 2026: Still Ignored, Still Relevant
JPMS shipped with Java 9 in 2017. Nearly a decade later, enterprise adoption remains stubbornly low. This is not a…
Read More » -

The Object Allocation Tax: Why Your Java Service Is 40% GC and How the JIT’s Escape Analysis Both Helps and Misleads You
A ground-level look at how HotSpot C2 decides between scalar replacement and heap allocation, the everyday patterns that silently defeat…
Read More » -

OpenRewrite: The Automated Migration Tool That’s Quietly Changing How Teams Upgrade Java
It started at Netflix, migrated the Jakarta EE TCK, and is now the dominant automation tool for Java modernization according…
Read More »
