I often speak about genetic data sharing and software development in Java. My talks are typically highly interactive, live-coding sessions featuring very few slides. Some of the topics I've covered recently in talks include a case study of a global search engine for genetic data, a series of interactive explorations of features in new releases of Java, reactive programming, best practices for writing clean code, and typing. I also coach (typically full-day) workshops on software development.
Attendees have voted my talks Exploring what's new in Java in 2018 and Clean code with Java 9 in the Top 10 talks at Devoxx and GeeCON, respectively. I've also been voted a top speaker at JavaOne and an Oracle Code One Star based on my Exploring Java 9 with REPL session.
My recent speaking engagements:
Event | Location | Date | Session title | Materials |
---|---|---|---|---|
J4K | online | Oct 2020 | Exploring reactive programming in Java | video, slides |
J4K | online | Oct 2020 | Exploring the latest and greatest from Java 14 | video, slides |
ConFoo | Montreal, QC, Canada | Feb 2020 | Local variable type inference - will it compile? () | slides, code |
ConFoo | Montreal, QC, Canada | Feb 2020 | Exploring the last year of Java () | slides, code |
Devoxx | Kiev, Ukraine | Nov 2019 | Local variable type inference - will it compile? () | video, slides, code |
Devoxx | Kiev, Ukraine | Nov 2019 | Exploring reactive programming in Java | slides, code |
Java Dev Day | Guadalajara, Jalisco, Mexico | Sep 2019 | The good, the bad and the ugly of Java API design | slides, code |
Java Dev Day | Guadalajara, Jalisco, Mexico | Sep 2019 | Exploring reactive programming in Java | slides, code |
Toronto Java User Group | Toronto, ON, Canada | June 2019 | Pub Quiz: Local Variable Type Inference () | video, code |
Voxxed Days | Minsk, Belarus | May 2019 | The good, the bad, and the ugly of Java API design () | video, slides, code |
Voxxed Days | Minsk, Belarus | May 2019 | Writing clean code with modern Java | video, slides |
ConFoo | Montreal, QC, Canada | Mar 2019 | Exploring reactive programming in Java | slides, code |
ConFoo | Montreal, QC, Canada | Mar 2019 | Writing clean code with modern Java | slides, code |
DevNexus | Atlanta, GA, USA | Mar 2019 | Exploring what's new in Java 10 and 11 (and 12) | video, slides, code |
Codemotion | Milan, Italy | Nov 2018 | Exploring what's new in Java 10 and 11 | video, slides, code |
Devoxx | Kiev, Ukraine | Nov 2018 | Exploring what's new in Java in 2018 () | slides, code |
Voxxed Days | Thessaloniki, Greece | Nov 2018 | Reactive programming with Java in 2018 | video, slides, code |
Devoxx | Antwerp, Belgium | Nov 2018 | Exploring reactive programming in Java () | video, slides, code, interview |
DevFest | Toulouse, France | Nov 2018 | Exploring reactive programming in Java | video, slides, code |
Voxxed Days | Bristol, UK | Oct 2018 | Writing clean code with Java in 2018 | slides, code |
Voxxed Days | Bristol, UK | Oct 2018 | Exploring reactive programming in Java | slides, code |
GeeCON | Prague, Czech Republic | Oct 2018 | Pushing boundaries of types with modern Java () | video, slides, code |
Strange Loop | St. Louis, MO, USA | Sep 2018 | How we've made a global search engine for genetic data () | video, slides |
Velocity | San Jose, CA, USA | Jun 2018 | How we built a global search engine for genetic data | video, slides |
Voxxed Days | Athens, Greece | Jun 2018 | Writing clean code with Java 9+ | video, slides, code |
GeeCON | Krakow, Poland | May 2018 | Clean code with Java 9 (, ) | video, slides, code, blog |
DevTO | Toronto, ON, Canada | May 2018 | Building a global search engine for genetic data | video, slides, blog |
Java With The Best | online | Apr 2018 | Exploring Java 9 with REPL | slides, code, blog |
Index | San Francisco, CA, USA | Feb 2018 | How we built a global search engine for genetic data | video, slides, blog |
Index | San Francisco, CA, USA | Feb 2018 | Exploring Java 9 with REPL | video, slides, code, blog |
Singapore Java User Group | Singapore | Jan 2018 | Java 9, Episode 2 | video, slides, code, blog |
Toronto Java User Group | Toronto, ON, Canada | Oct 2017 | Exploring Java 9 APIs with JShell | video, slides, code, blog |
Full Stack Toronto | Toronto, ON, Canada | Oct 2017 | Effective Prototyping with Java 9 | slides, code, blog |
JavaOne | San Francisco, CA, USA | Oct 2017 | Exploring Java 9 with REPL (, ) | video, slides, code, blog |
Devoxx | San Jose, CA, USA | Apr 2017 | REPL: Java developer's new friend | video, slides, code, blog |
Full-day or multi-day workshops:
Event | Location | Date | Session title | Materials |
---|---|---|---|---|
Voxxed Days | Cluj-Napoca, Romania | Oct 2019 | Master class in modern Java () | slides |
Voxxed Days | Minsk, Belarus | May 2019 | Master class in modern Java | slides |
Voxxed Days | Thessaloniki, Greece | Nov 2018 | Master class in Java in 2018 () | slides |
Voxxed Days | Athens, Greece | Jun 2018 | Deep Dive in Java 9+ | slides |
More videos are available on my LinkedIn profile, more slides on SlideShare.