Learning Processing

A Beginner's Guide to Programming Images, Animation, and Interaction


  • Daniel Shiffman, Tisch School of the Arts, New York University, New York, NY, USA
  • Daniel Shiffman, Tisch School of the Arts, New York University, New York, NY, USA

The free, open-source Processing programming language environment was created at MIT for people who want to develop images, animation, and sound. Based on the ubiquitous Java, it provides an alternative to daunting languages and expensive proprietary software. This book gives graphic designers, artists and illustrators of all stripes a jump start to working with processing by providing detailed information on the basic principles of programming with the language, followed by careful, step-by-step explanations of select advanced techniques.The author teaches computer graphics at NYU's Tisch School of the Arts, and his book has been developed with a supportive learning experience at its core. From algorithms and data mining to rendering and debugging, it teaches object-oriented programming from the ground up within the fascinating context of interactive visual media.Previously announced as "Pixels, Patterns, and Processing"
View full description


Graphic designers and visual artists without programming background who want to learn programming. Students in college and graduate courses in interactive media or visual computing.


Book information

  • Published: August 2008
  • ISBN: 978-0-12-373602-4

Table of Contents

Lesson 1: The Beginning
Chapter 1: Pixels
Chapter 2: Processing
Chapter 3: Interaction
Lesson 2: Everything You Need to Know
Chapter 4: Variables
Chapter 5: Conditionals
Chapter 6: Loops
Lesson 3: Organization
Chapter 7: Functions
Chapter 8: Objects
Lesson 4: More of the Same
Chapter 9: Arrays
Lesson 5: Putting It all Together
Chapter 10: Algorithms
Chapter 11: Debugging
Chapter 12: Libraries
Lesson 6: The World Revolves Around You
Chapter 13: Mathematics
Chapter 14: Translation and Rotation (in 3D!)
Lesson 7: Pixels Under Microscope
Chapter 15: Images
Chapter 16: Video
Lesson 8: The Outside World
Chapter 17: Text
Chapter 18: Data Input
Chapter 19: Data Streams
Lesson 9: Making Noise
Chapter 20: Sound
Chapter 21: Exporting
Lesson 10: Beyond Processing
Chapter 22: Advanced Object-Oriented Programming
Chapter 23: Java
Appendix: Common Errors