Books. We are very happy to announce
	the release of the first books written about Processing. We hope to see many more in the future!

Processing: A Programming Handbook for Visual Designers and Artists

Processing: A Programming Handbook
for Visual Designers and Artists

Casey Reas and Ben Fry (Foreword by John Maeda).
Published 24 August 2007, MIT Press. 736 pages. Hardcover.
Order from Amazon.com
Compare prices (isbn.nu)
Buy local (BookSense.com, US only)

Downloads:
Table of Contents and Index (PDF, 500 KB)
Sample Chapters with Contents and Index (PDF, 7.6 MB)
All code examples in the book (ZIP, 15 MB)

This book is an introduction to the ideas of computer programming within the context of the visual arts. It targets an audience of computer-savvy individuals who are interested in creating interactive and visual work through writing software but have little or no prior experience. It is the result of six years of software development and teaching experience. The ideas presented have been continually tested in the classrooms, computer labs, and basements of universities, art and design schools, and arts institutions.

The majority of the book is divided into tutorial units discussing specific elements of software and how they relate to the arts. These units introduce the syntax and concepts of software such as variables, functions, and object-oriented programming. They cover topics such as photography and drawing in relation to software. These units feature many short, prototypical example programs with related images and explanation. More advanced professional projects from diverse domains including animation, performance, and typography are discussed in interviews with their creators. The extension sections present concise introductions to further domains of exploration including computer vision, sound, and electronics.

Essays by Alexander R. Galloway, Golan Levin, R. Luke DuBois, Simon Greenwold, Francis Li, and Hernando Barragan

Interviews with Jared Tarbell, Martin Wattenberg, James Paterson, Erik van Blockland, Ed Burton, Josh On, Jeurg Lehni, Auriea Harvey and Michael Samyn, Mathew Cullen and Grady Hall, Bob Sabiston, Jennifer Steinkamp, Ruth Jarman and Joseph Gerhardt, Sue Costabile, Chris Csikszentmihalyi, Golan Levin and Zachary Lieberman, and Mark Hansen.

If you are an educator, you can request a desk/exam copy from the MIT Press website. It's also possible to request a PDF preview.

 

 

Visualizing Data Visualizing Data
Ben Fry.
Published December 2007, O'Reilly. 384 pages. Paperback.
Order from Amazon.com

The O'Reilly website says, "How you can take advantage of data that you might otherwise never use? With the help of a powerful new programming environment [Processing], this book helps you represent data accurately on the Web and elsewhere, complete with user interaction, animation, and more. You'll learn basic visualization principles, how to choose the right kind of display for your purposes, and how to provide interactive features to design entire interfaces around large, complex data sets."

Martin Wattenberg from the IBM Watson Research Center says, "This wonderfully detailed guide, by one of the masters of modern data graphics, tells you everything you need to know to code your own visualizations from scratch. Perhaps most valuable are the many examples where Fry demonstrates how to refine a bare-bones concept into a beautiful, effective finished piece. Read this book, and you'll never again be dependent on someone else's view of your data."

 

 

Processing: Creative Coding and Computational Art (Foundation) Processing: Creative Coding and Computational Art (Foundation)
Ira Greenberg (Foreword by Keith Peters).
Published 28 May 2007, Friends of Ed. 840 pages. Hardcover.
Order from Amazon.com

Sample chapters available from Friends of Ed.

"This book is written especially for artists, designers, and other creative professionals and students exploring code art, graphics programming, and computational aesthetics. The book provides a solid and comprehensive foundation in programming, including object-oriented principles, and introduces you to the easy-to-grasp Processing language, so no previous coding experience is necessary. The book then goes through using Processing to code lines, curves, shapes, and motion, continuing to the point where you'll have mastered Processing and can really start to unleash your creativity with realistic physics, interactivity, and 3D! In the final chapter, you'll even learn how to extend your Processing skills by working directly with the powerful Java programming language, the language Processing itself is built with." (Quote from the Friends of Ed website)

 

 

Learning Processing Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction
Daniel Shiffman.
Published August 2008, Morgan Kaufmann. 450 pages. Paperback.
Order from Amazon.com

Visit the Learn Processing website.

Dan Shiffman says: "This book tells a story. It's a story of liberation, of taking the first steps towards understanding the foundations of computing, writing your own code, and creating your own media without the bonds of existing software tools. This story is not reserved for computer scientists and engineers. This story is for you."

The publisher says: "This book teaches you the basic building blocks of programming needed to create cutting-edge graphics applications including interactive art, live video processing, and data visualization. A unique lab-style manual, the book gives graphic and web designers, artists, and illustrators of all stripes a jumpstart on working with the Processing programming environment by providing instruction on the basic principles of the language, followed by careful explanations of select advanced techniques."

 

 

Making Things Talk: Practical Methods for Connecting Physical Objects Making Things Talk: Practical Methods for Connecting Physical Objects
Tom Igoe.
Published 28 September 2007, O'Reilly. 428 pages. Paperback.
Order from Amazon.com
Order from O'Reilly

This book focuses on networking electronic devices with Arduino and Wiring, but includes many examples that use Processing for graphics. The O'Reilly website says, "Through a series of simple projects, this book teaches you how to get your creations to communicate with one another by forming networks of smart devices that carry on conversations with you and your environment. Whether you need to plug some sensors in your home to the Internet or create a device that can interact wirelessly with other creations, Making Things Talk explains exactly what you need... With a little electronic know-how, a couple of inexpensive microcontroller kits and some network modules to make them communicate using Ethernet, ZigBee, and Bluetooth, you can get started on these projects right away"

 

 

Built with Processing Built with Processing
Published 28 March 2007, BNN. 232 pages. Softcover.

Note from Casey: "I received a copy of this book from the authors on a recent trip to Japan. It's a beautifully produced full-color book with sections introducing Processing, featuring work created with Processing (many are from the Exhibition section of the Processing website), and introducing programming through progressively complicated examples. The majority of the book is an introduction to programming. There are many good examples and the code is color-coded like in the Processing Environment. This book is less comprehensive than the Greenberg and Reas/Fry books, but it appears to be a good, brief introduction. The book is entirely in Japanese."

There's additional information on the publisher's website.

 

 

 

Processing is also discussed through examples and projects in the following books:

Physical Computing: Sensing and Controlling the Physical World with Computers. By Dan O'Sullivan and Tom Igoe. Examples using Processing for RS-232 communication and computer vision.

Aesthetic Computing. Edited by Paul Fishwick. Casey Reas and Ben Fry contributed a chapter entitled "Processing Code: Programming within the Context of Visual Art and Design."

Hacking Roomba: ExtremeTech. By Tod E. Kurt. Processing is introduced and used to design an application to control a Roomba (a robot vacuum cleaner).

Analog In, Digital Out. By Brendan Dawes. Numerous projects created with Processing are illustrated and discussed.