Nicolai (aka nipafx) is a Java enthusiast focused on language features, core APIs, and runtime evolution with a passion for learning and sharing. He does that mostly at conferences and in his biweekly Inside Java Newscast, but also occasionally in live streams, articles, and books - more on all that on nipafx.dev. He's a Java Developer Advocate at Oracle and otherwise best known for his haircut.
Java 21 was an explosive release, but 22 and 23 are no slouches either:
- from unnamed patterns to module imports
- from the foreign-function and memory API to stream gatherers and the class-file API
- from a simpler main to launching multi-source-file programs
- from Markdown in JavaDoc to improved garbage collection
There are plenty of features in the language, API, and runtime to discuss - whether new, improved, or finalized. So let's go over them!
So you learned about all these new Java features but want to see how they come together? Then let's write a GitHub Crawler and let's throw in everything Java (23) has to offer:
- virtual threads and structured concurrency
- pattern matching and data-oriented programming
- type inference, records, and sealed types
- text blocks
and template strings - a modern HTTP client and improved collections
- modules and OS-specific binaries
The end result will look very different from just a few years ago, let alone 10. This is not your parents' Java!
Searching for speaker images...