Joshua J. Bloch (born August 28, 1961) is an American software engineer and a technology author, formerly employed at Sun Microsystems and Google. He led the design and implementation of numerous Java platform features, including the Java Collections Framework, the package, and the mechanism. He is the author of the programming guide Effective Java (2001), which won the 2001 Jolt Award, and is a co-author of two other Java books, Java Puzzlers (2005) and Java Concurrency In Practice (2006).

Bloch holds a B.S. in computer science from Columbia University's School of Engineering and Applied Science and a Ph.D. in computer science from Carnegie Mellon University. His 1990 thesis was titled A Practical Approach to Replication of Abstract Data Objects and was nominated for the ACM Distinguished Doctoral Dissertation Award.

Joshua Bloch

Bloch has worked as a Senior Systems Designer at Transarc, and later as a Distinguished Engineer at Sun Microsystems. In June 2004, he left Sun and became Chief Java Architect at Google. On August 3, 2012, Bloch announced that he would be leaving Google.

Joshua Bloch

In December 2004, Java Developer's Journal included Bloch in its list of the "Top 40 Software People in the World".

Joshua Bloch

Bloch has proposed the extension of the Java programming language with two features: Concise Instance Creation Expressions (CICE) (coproposed with Bob Lee and Doug Lea) and Automatic Resource Management (ARM) blocks. The combination of CICE and ARM formed one of the three early proposals for adding support for closures to Java. ARM blocks were added to the language in JDK7.

Bloch is currently an affiliated faculty member of the Software and Societal Systems Department at Carnegie Mellon University, where he holds the title "Adjunct Professor of the Practice".

Bibliography

Effective Java: Programming Language Guide, , 2001; second edition: , 2008; third edition: , 2017 Java Puzzlers: Traps, Pitfalls, and Corner Cases, , 2005 (co-authored with Neal Gafter) Java Concurrency in Practice, , 2006 (co-authored with Brian Goetz, Tim Peierls, Joseph Bowbeer, David Holmes, and Doug Lea)

References

External links

Janice J. Heiss, More Effective Java With Google's Joshua Bloch October, 2008

Josh Bloch, How to design a good API and why it matters, Google Tech Talk, 2007

1961 births

Living people

Columbia School of Engineering and Applied Science alumni

Columbia University alumni

Carnegie Mellon University alumni

American computer programmers

American software engineers

Sun Microsystems people

American technology writers