Joshua Bloch
   HOME

TheInfoList



OR:

Joshua J. Bloch (born August 28, 1961) is an American
software engineer Software engineering is a branch of both computer science and engineering focused on designing, developing, testing, and maintaining software applications. It involves applying engineering principles and computer programming expertise to develop ...
and a technology author. He led the design and implementation of numerous
Java platform Java is a set of computer software and specifications that provides a software platform for developing application software and deploying it in a cross-platform computing environment. Java is used in a wide variety of computing platforms fr ...
features, including the Java Collections Framework, the package, and the mechanism."About the Author"
''Effective Java Programming Language Guide''
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 Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
from
Columbia University Columbia University in the City of New York, commonly referred to as Columbia University, is a Private university, private Ivy League research university in New York City. Established in 1754 as King's College on the grounds of Trinity Churc ...
's School of Engineering and Applied Science and a Ph.D. in computer science from
Carnegie Mellon University Carnegie Mellon University (CMU) is a private research university in Pittsburgh, Pennsylvania, United States. The institution was established in 1900 by Andrew Carnegie as the Carnegie Technical Schools. In 1912, it became the Carnegie Institu ...
. His 1990 thesis was titled ''A Practical Approach to Replication of Abstract Data Objects'' and was nominated for the ACM Distinguished Doctoral Dissertation Award. Bloch has worked as a Senior Systems Designer at
Transarc Transarc Corporation was a private Pittsburgh-based software company founded in 1989 by Jeffrey Eppinger, Michael L. Kazar, Alfred Spector, and Dean Thompson of Carnegie Mellon University. Transarc commercialized the Andrew File System (AFS), ...
, and later as a Distinguished Engineer at
Sun Microsystems Sun Microsystems, Inc., often known as Sun for short, was an American technology company that existed from 1982 to 2010 which developed and sold computers, computer components, software, and information technology services. Sun contributed sig ...
. In June 2004, he left Sun and became Chief Java Architect at
Google Google LLC (, ) is an American multinational corporation and technology company focusing on online advertising, search engine technology, cloud computing, computer software, quantum computing, e-commerce, consumer electronics, and artificial ...
. On August 3, 2012, Bloch announced that he would be leaving Google. In December 2004, ''Java Developer's Journal'' included Bloch in its list of the "Top 40 Software People in the World". 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 Douglas S. Lea is a professor of computer science and (as of 2025) head of the computer science department at State University of New York at Oswego, where he specializes in concurrent programming and the design of concurrent data structures. He ...
) 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 listed as Professor of practice of the Software and Societal Systems Department at
Carnegie Mellon University Carnegie Mellon University (CMU) is a private research university in Pittsburgh, Pennsylvania, United States. The institution was established in 1900 by Andrew Carnegie as the Carnegie Technical Schools. In 1912, it became the Carnegie Institu ...
.


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 Douglas S. Lea is a professor of computer science and (as of 2025) head of the computer science department at State University of New York at Oswego, where he specializes in concurrent programming and the design of concurrent data structures. He ...
) *


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
{{DEFAULTSORT:Bloch, Joshua 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