Book review: Processing A Programming Handbook for Visual Designers and Artists

This is a book review of a book for artists. The review is being written by someone that is not much of an artist. You need to keep this in mind when reading this review.

I am an engineer and experienced programming, perhaps the complete opposite of the target audience of this group. Although Processing is designed by and for artists it has a lot to offer others as well. The reason I was looking at Processing is it’s relationship to the Arduino programming language, but I’ve since taken a likening to this as a programming language in it’s own right. It’s an easy language to learn and it’s easy to create a graphical (GUI) application without needing to learn the intricacies of window managers etc. (*); it’s good for designing novel GUI programs which are not constrained by conventional button design and it’s portable (based on Java) allowing you to create either applications or applets for any operating system.

As the language is designed for artists, so are the books that explain how to program in processing. This book has some really good reviews (from artists) and that’s why I chose this book.

The book starts programming from a very basic level. Anyone with any past experience of programming will find this a bit tedious. In most beginner books you can just skip the early chapters, but that’s not quite so easy with Processing as the programming is quite different to creating GUIs in other languages.

As the book progresses the book covers some of the more complex parts of the language including object oriented programming and some complex graphics programming. It also includes programming for mobile phones – another example where Processing could be an advantage over some other programming languages.

The book maintains the artist theme throughout, with explanations of how this is applied to creating art and with case studies looking at artists that have used programming for art. This makes a welcome change at first, but I found myself skipping many of the case studies as I went through the book. [did I mention already – I am not an artist]

Something that is good is the time given to the explanations of drawing vector graphics. I’m sure that when I was at college I knew more about triganometry, but I couldn’t think off-hand how to find a point on the circumfrance of a circle (needed to draw a X in the middle of a circle), this will clearly explained in the book along with a lot of other 2D drawing aspects.

The final chapter in the book covers programming the Arduino (#). Built on the previous content this is quite useful and includes code for the PC and the Arduino including communicating between the two.

I am quite happy with the book although it did feel a bit slow at times. As I said at the beginning I am not an artist; if I was I’m sure I would have liked this book more. The book which covered everything needed to get me started with Processing and programming the Arduino with excellant explanations of drawing shapes and 2D graphics. I would have rather seen more programming and less case studies, but otherwise I am very happy with the book. A worthwhile investment for anyone interested in the Processing programming language, particularly those new to programming.


(*) – admittedly this also means it doesn’t have the benefits of a GUI Window Manager either, but that’s another story
(#) – About the Ardiuino