- Practices of an Agile Developer: Working in the Real World (Pragmatic Programmers)
- Groovy Recipes: Greasing the Wheels of Java
- Functional Programming in Java: Harnessing the Power of Java 8 Lambda Expressions
- Programming Groovy: Dynamic Productivity for the Java Developer
- Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine