Processing:
A Programming Handbook for Visual Designers
by Casey
Reas and Ben Fry
The MIT Press, Cambridge, Massachusetts,
USA, 2007
736 pp., illus. 36 col. Trade, $43 USD
ISBN: 0-262-18262-1.
Reviewed by Rob Harle (Australia)
harle@dodo.com.au
Why did we have to wait so long for this
marvellous gem? It is, indeed, rare to
find a technical book of such clarity
and insight and especially so in books
concerning computer programming. Ive
grappled with many programming books over
the years in an effort to teach myself
programming and none come close to Processing:
A Programming Handbook for Visual Designers
and Artists. Casey Reas and Ben Fry
are to be congratulated on two counts.
Firstly, for writing this 710 page comprehensive
book, and secondly for producing the associated
open-source programming language software,
also called Processing, which is a companion
to the book so to speak.
The reader is directed on page nine to
go to the Processing web site (www.processing.org/download)
to download the software. After so many
frustrating attempts in the past to download
so-called, free software, I approached
the web with intrepidation and cynicism.
I thought at this stage, doesnt
matter how good the book is, if the software
is hard to obtain and install it will
be pretty much useless. My fears were
completely unfounded. Within 15 minutes
I had downloaded the 32 megabyte package
for Windows (it is available for Mac and
Linux as well), and installed it effortlessly.
After a further 10 minutes I had my first
program, as per instructions in the book,
up and running.
The Processing language was written specifically
for visual artists and designers whether
they be interested in producing still
images, animation or interactivity using
their own programming efforts, rather
than relying on commercially available
software applications. For those artists
who use computers in their work and like
to have control at a fundamental level
this book will be a revelation and worth
every cent it costs. I was stunned at
how few lines of code are required to
produce complex images, one such example
is a colour wheel. The software comes
loaded with numerous examples of what
can be achieved with Processing using
existing modules of code.
Processing was created in the spirit of
the open-source software movement, which
not only results in free programs but
also encourages social networking and
users to play and experiment. For the
few who do not know what open-source is
(you must have been holidaying on Mars
for the past 10 years) do a search on
the net and be prepared to be amazed.
Artists need to be mindful not to forsake
their final artistic creations in the
wake of becoming absorbed or obsessed
in writing code. This can quite easily
happen in the arduous and lengthy task
of learning the more complex languages
such as C++. Processing gets results fast,
seems to be naturally intuitive and due
to Reas and Frys brilliance, easy
to learn.
As the back cover states, "Tutorial units
make up the bulk of the book and introduce
the syntax and concepts of software (including
variables, functions, and object-oriented
programming)". "More advanced professional
projects from such domains as animation,
performance, and typography are discussed
in interviews with their creators". For
artists interested in creating programs
that run devices in an artistic installation
there is an introductory section on electronics
(Extension 8, pp. 633- 659) which provides
enough basic knowledge to get you started
in microcontrollers, basic robotics and
sensors to control motion, sound and lighting.
This section includes examples of code
and types of controllers to purchase.
There are chapters specifically on mobile
software applications, networking, creating
3D applications, printing and of great
importance to my own work, high-resolution
file exporting.
This book is so well thought out and referenced
it is quite astonishing. For example,
there is a general Index and a
Code Index. Numerous Appendices cover
such basic, though important topics as,
code comparisons, reserved code words
and programming languages. There is even
a table of contents, then a Contents by
Category and further, an Extended Contents
section. These sections enable the reader
to quickly find exactly what they are
looking for without ploughing through
the whole book sequentially. Processing
has numerous illustrations both black
& white and colour. The smaller images
accompany examples of code-text to illustrate
what the code produces on the screen,
larger images are examples of actual art
produced using more extensive modules
of code by a variety of artists.
I cannot recommend this book highly enough,
all I wish is that it was written 10 years
ago. Im sure, like me, many artists
who have wanted to experiment with computer
control and programming for artistic projects
have been frustrated to the limit by poorly
written, obscurely referenced and inappropriate
programming books and languages. This
book remedies all this and is even very
reasonably priced. All I can say to Casey
Reas and Ben Fry is Thank you.