Jeff Friesen is a freelance teacher and software developer with an emphasis on Java. In addition to authoring Java I/O, NIO, and NIO.2 (Apress), Java Threads and the Concurrency Utilities (Apress), and the first edition of this book, Jeff has written numerous articles on Java and other technologies (such as Android) for JavaWorld, informIT, Java.net, SitePoint, and other web sites. Jeff can be contacted via his web site at JavaJeff.ca or via LinkedIn (JavaJeff).