Trisha Gee | Devoxx

Trisha Gee
Trisha Gee Twitter

From JetBrains

Trisha has developed Java applications for a range of industries, including finance, manufacturing and non-profit, for companies of all sizes. She has expertise in Java high performance systems, is passionate about enabling developer productivity, and dabbles with Open Source development. Trisha blogs regularly on subjects that she thinks developers and other humans should care about, she’s a leader of the Sevilla Java User Group, a key member of the London Java Community, a MongoDB Master and a Java Champion. She believes we shouldn't all have to make the same mistakes again and again, so now she works for JetBrains where she can tell developers about all the cool stuff she's learnt so far.


java Java Language

Real World Java 9


The feature we always hear about whenever Java 9 is in the news is Jigsaw, modularity for Java. But modularity just doesn't scratch the same developer itch that Java 8's lambdas and streams did, and as developers we're left with a vague sensation that version 9 might just not be that interesting.

In fact, Java 9 actually has a lot of great additions and changes which will make Java just that bit nicer to work with. These features can't be lumped under a nice umbrella term like Java 8's lambdas and streams, but the Java 9 changes are scattered throughout the APIs and language features that we regularly use.

In this presentation Trisha will show, via live coding:

  • How we can use the new Flow API to utilise Reactive Programming
  • How the improvements to the Streams API make it easier to control real-time streaming data
  • How the Collections convenience methods simplify code

Along the way we'll bump into other Java 9 features that make our lives easier, including some of the additions to interfaces and how deprecation has changed. As the application in built in real time, we’ll see that once you start using Java 9, you can't go back to Before.

method_archi Methodology & Culture

Don't just Embrace Change, Create Change

BOF (Birds of a Feather)

We know technology can change the world. We've seen it from the Industrial Revolution to the impact of social media on elections. The question is: can we do better? Can we help people enact the sorts of changes they really want to see? Can we bring people together, encourage empathy, help bridge divides to build better societies?

This Birds of a Feather session is an opportunity to come together to decide actions that we, developers, can take to promote the sort of change we want to see in the world.

Speaker Q&A

Who should attend your session?

It's aimed at people who use Java every day in their day jobs. You don't need any previous experience with Java 9, nor do you need to be particularly up-to-date with your Java knowledge.

What are the 'next steps' for an attendee to take after attending your session?

Download the early access release of Java 9 and have a play. Get to know the little features that are there, so you can impress your colleagues!

Who is your favourite fictional British character?

Probably Crowley from Good Omens. I mean, he's not technically British himself, being a demon and everything, but he was created by two Brits and would probably consider himself British, at least for the time being.

What is the most underrated feature of Java 9?

Pretty much everything that isn't Jigsaw or the REPL! Personally I've found private methods on interfaces really useful, because I've been using static methods on interfaces to represent re-usable functions, and if they have re-usable parts I want them tucked away in a private method.

Why is Java 9 important?

Like Java 7, it brings lots of small but nice improvements to the developer experience. Of course, Jigsaw (the big Java 9 feature) has caused some... divided opinions in the community. But you don't need to modularise your codebase to take advantage of some of the nice helpful features of Java 9. Java 9 has features that make your job as a developer a bit easier, including the Collections factory methods and the new methods on the Streams API.