Joshua Bloch and Mr. javac