Computing Reviews

Processing :a programming handbook for visual designers and artists (2nd ed.)
Reas C., Fry B., The MIT Press,Cambridge, MA,2014. 720 pp.Type:Book
Date Reviewed: 07/16/15

As a computer science (CS) instructor, one of the teaching practices that most irks me is the teaching of programming languages via lectures using PowerPoint or PDF overheads. Even without moving completely to the practice of “flipped teaching,” I have always felt there should be a better way of making the teaching of programming more exciting, particularly when teaching an audience that does not (yet) profess a strong interest in programming. I have tried using both Python and OCaml interactively in lectures, with I believe a good deal of success. The interactive nature of simply firing up the interpreter and developing code in front of the audience’s eyes makes for a lively teaching session. Unfortunately, it is more difficult to do this with the traditional imperative/object-oriented languages. Having to start with the magical incantations of public, float, abstract, and so on takes some of the spontaneity away. The choice of first examples also becomes important: beyond printing “Hello, World!” most Java and C tutorials move to numerical calculations, which may not be of interest to all potential programmers.

I was therefore very impressed when I first saw Processing in action in a session introducing programming to teenagers. The instructor, a visual artist, could very quickly write a few lines of code, which directly generated interesting abstract art, and in the process students were introduced to a textual programming language that they could use with an intuitive interface. The basic ideas of programming, including variables, assignments, and loops, were introduced, and before long the teenage students were creating very nice sketches and hacking their programs. This seems to me like an excellent approach, and I have since then been wishing to learn more about the Processing environment.

In fact, Processing is very easy to get started with: downloading the system is straightforward, and the executable has a drop-down menu from which a large set of examples can be downloaded, examined, and modified. However, having a book such as this one certainly helps develop proficiency with the language and its many advanced features. The emphasis in this book is very much on visualizations--starting with drawing lines and circles, moving on to 3D shapes and responding to mouse events, and then to the use of the random number generator and recursion to make them more interesting and aesthetically pleasing. This is followed by more advanced topics--animation, simulation, and image processing--where the code is quite convoluted but also where the power of the platform shines through.

As implied by the subtitle, this book is particularly geared to designers and artists, and this shows itself in the emphasis on creating a sketchpad and drawing on it.

One of the main strengths of this book is the inclusion of four sets of interviews by artists and designers, showcasing their digital artifacts and explaining their use of a variety of software tools and programming languages. These have been very interesting to me, as a computer scientist, and are likely to be very useful for artists and designers who may be trying to bridge the gap between learning the nitty-gritty of programming and actually producing something unique and exciting.

This book is quite ambitious in its attempt to introduce the basic use of the Processing language and environment, and also to help readers understand the higher levels of the use of software tools in digital art. In my opinion, it has succeeded in doing this. The book is very readable, practical in the way it encourages experimentation concurrently to reading it, and challenging in how it juxtaposes the artistic output with the software methodology that could be used in the creative process.

More reviews about this item: Amazon

Reviewer:  Sara Kalvala Review #: CR143618 (1509-0746)

Reproduction in whole or in part without permission is prohibited.   Copyright 2024 ComputingReviews.com™
Terms of Use
| Privacy Policy