He has designed major enhancements to the Java APIs and language, specifically for the Java Collections API and the java.math package. Most recently, he led the expert groups that defined Java's assert and preferences facilities. In his 2001 book, Effective Java Programming Language Guide (Addison Wesley), Josh distilled his wisdom into 57 concrete guidelines for designing and implementing Java programs: http://java.sun.com/docs/books/ef