Life Beyond Java 8

New versions of Java are coming out every 6 months now. What has changed, should we upgrade, and if so, how?

(Updated 7 Oct, 2021)


Wasn’t Java 8 a fantastic update to the language? Lambdas and streams were a huge change and have helped to improve Java developers’ productivity and introduce some functional ideas to the language. Then came Java 9... and although the module system is really interesting for certain types of applications, the lack of exciting language features and uncertainty around how painful it might be to migrate to Java 9 left many applications taking a wait-and-see approach, happy with Java 8.

But now Java has a new version every six months, and suddenly Java 15 is here. We’re all still on Java 8, wondering
whether we should move to a later version, which one to choose, and how painful it might be to upgrade.

In this session we’ll look at:

  • Why upgrade from Java 8, including language features from Java 9-15
  • What sorts of issues might we run into if we do choose to upgrade
  • How the support and license changes that came in with Java 11 might impact us.


There are a few versions of this. The most recent covers up to Java 16:

Other versions:

Related videos:



More Information

Updates, Licenses and Support

Where to get your JDK from

Migrating from Java 8


Java 17

Java 16

Java 15

Java 14

Java 13

Java 12

  • All JDK 12 JEPs - includes several related to Garbage Collection
  • Java 12 and IntelliJ IDEA - how IntelliJ IDEA can help you with the new switch expression syntax (available in IntelliJ IDEA 2019.1 and later)

Java 11

Java 10

Java 9

Java Future

Further into the future


Garbage Collectors

String Performance



  • Trisha Gee

    Trisha is a software engineer, Java Champion and author. Trisha has developed Java applications for finance, manufacturing and non-profit organisations, and she's a lead developer advocate at Gradle.