Expert Java 8

With this talk, I help you get the most out of lambdas, Streams, Optionals, and default methods, helping you master Java 8's core features

By now Java 8's features are well understood, but some practical details are still unclear. Did you ever wonder...

  • how to create a "lambda-enabled" API?
  • whether your methods should return or even accept Streams and how that might impact your design?
  • how to write readable Stream pipelines, especially when exceptions are involved?
  • about the details of and opinions on Optional?
  • how to use default methods to evolve interfaces without breaking client code?

This talk discusses these and other advanced topics of Java 8, so you can get the most out of its awesome features.


Here's the current version of the slides.

I also embedded them below. If they're focussed, you can navigate with arrow keys or swipes (they're two-dimensional, with chapters on the horizontal axis and chapter content layed out vertically). Use Page Up/Down for linearized order and ? for more shortcuts.


Here's a good recording of the talk. I hope you'll like it.

Always embed videos

(and give me a cookie to remember - privacy policy)

Watch on YouTube

Past Presentations

I gave this talk a few times before. See below for links to slides (as they were at that very event), videos, and other information.