Joshua Bloch Interview
For instance: In the preface to the new edition of Effective Java , you described moving to Google in 2004 and wrote: “I’ve also had the pleasure of using the Java platform to develop libraries for use within Google. … For example, I found myself wanting to provide an alternative FileChannel implementation for the Google File System, but I couldn’t, because FileChannel is a concrete class rather than an interface.

