Some highlights of my life so far:

You can contact me by email at , Twitter and Linkedin.

Technical articles

Date Talk Conference Location
28th November 2014 Pragmatic Functional Refactoring with Java 8 Codemotion Milan, Italy
13th November 2014 Pragmatic Functional Refactoring with Java 8 DEVOXX Antwerp, Belgium
11th-12th November 2014 Java 8 training Luminis Apeldoorn, Netherlands
22nd October 2014 Java 8 workshop Geecon Prague, Czech Republic
29th September 2014 Lambda Q&A Expert Panel JavaOne California, USA
23rd September 2014 Pragmatic Functional Refactoring with Java 8 European Bioinformatics Institute Hixton, UK
17th September 2014 Pragmatic Functional Refactoring with Java 8 Webinar Esynergy solutions London, UK
16th September 2014 Java 8 meetup: Functional Programming and Streams API lab Cambridge Software Craftsmanship Cambridge, UK
2nd September 2014 Pragmatic Functional Refactoring with Java 8 VirtualJUG London, UK
28th August 2014 Pragmatic Functional Refactoring with Java 8 LJC London, UK
28th July 2014 Python 2 and 3 compatibility testing via optional run-time type checking PLE14 Uppsala, Sweden
21st May 2014 More concise and flexible code with Java 8 Webinar Esynergy solutions London, UK
13th May 2014 Java 8 workshop Geecon Krakov, Poland
22nd January 2014 Writing more concise and flexible code with Java 8 JDK.IO Aarhus, Denmark
21st January 2014 Writing more concise and flexible code with Java 8 JDK.IO Copenhagen, Denmark
20th January 2014 Java 8 workshop Javagruppen Copenhagen, Denmark
30th October 2013 Using Graphs for Source Code Analysis Neo4j UG London, UK
22nd October 2013 Java Oddities Skillsmatter London, UK
11th April 2013 Analyse statique de programmes Java avec Neo4j (fr) Graph Database France Paris, France
2nd February 2013 A Research Platform for Java and Other (Crazy?) Ideas FOSDEM Brussels, Belgium
21st January 2013 Java 8 Workshop Computer Laboratory, University of Cambridge Cambridge, UK
5th December 2012 Java 8 Workshop jDays Gothenburg, Sweden
4th December 2012 Hacking the Java Compiler For Fun and Profit jDays Gothenburg, Sweden
3rd December 2012 Investigating Programming Language Features jDays Gothenburg, Sweden
12th November 2012 Hacking the Java Compiler For Fun and Profit DEVOXX Antwerp, Belgium
21st October 2012 Programming Language Evolution via Source Code Query Languages PLATEAU'12 Arizona, USA
10th October 2012 A Platform for Studying Language Features in Java Oracle Wednesday Tech Talk Stockholm, Sweden
16th August 2012 Java Corpus Tools: How can we help evolve Java? Oracle Langtools Tech Talk California, USA
27th June 2012 An Empirical Look at Controversial Java Features JAZOON Zurich, Switzerland
8th June 2012 Exploring Variance in Object-Oriented Languages National University of Singapore Singapore
21st May 2012 Exploring Variance in Object-Oriented Languages Qualcomm Research Cambridge, UK
4th February 2012 Using the OpenJDK to investigate covariance in Java FOSDEM Brussels, Belgium
25th November 2011 Exploring First-Class Relations in Object-Oriented Languages LJC Open Conference London, UK

I wrote a book together with Mario Fusco and Alan Mycroft – Java 8 in Action: Lambdas, streams and functional-style programming.

Java 8 in Action is a clearly-written guide to Java 8 lambdas and functional programming in Java. It begins with a practical introduction to the structure and benefits of lambda expressions in real-world Java code. The book then introduces the Stream API and shows how it can make collections-related code radically easier to understand and maintain. Along the way, you'll discover new FP-oriented design patterns with Java 8 for code reuse, code readability, data manipulation, and concurrency. For developers also exploring other functional languages on the JVM, the book concludes with a survey of useful functional features in Scala.