Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Coding art: the four steps to creative programming with the processing language
Zhang Y., Funk M., Apress, New York, NY, 2021. 296 pp. Type: Book (978-1-484262-63-4)
Date Reviewed: Feb 17 2022

Coding art--the title rightly raises eyebrows. Is it about the programming of art, or is it about the art of programming? The latter has been immortalized by Donald Knuth through his famous The art of computer programming series. This book, however, is mostly about using a programming approach to create art. Of course, this also raises a lot of questions as to what connection programming can have with making art. The book provides decent answers to this question.

Processing is a programming language for visual media. The basic structure is that of a typical programming language, like Java or Python. An interpreted language, it comes with a canvas to see the results of the code. The book is based on this language, exploring the various provisions of Processing that address the requirements of visual arts. The six-chapter Part 1 provides a fair feel for the language and what it can do. And in Part 2, readers are taken through a real art problem. Part 3 gives some general suggestions and guidelines for the creating art this way. A short conclusion and epilogue end the book.

Chapter 1 starts with a general introduction, explaining the philosophy behind the book and the proposed four-step approach. Part 1, “Creative Coding,” starts with chapter 2. Readers will encounter the basic primitives of the language and explore color, drawing primitives, canvas, texture, animation, and mouse-based interaction primitives. One gets a feel of what one can do. Chapter 3, “Composition and Structure,” extends the ideas to build more complex structures. More language primitives, classes, control constructs like loops, code structuring to improve understanding and management, layers, and so on are introduced here. Chapter 4, “Refinement and Depth,” gets to the finer aspects of art using randomness, noise, and smoothing. Richer interactivity modes using a keyboard and mouse are also introduced. Performance issues are also brought to the forefront--a major concern when you go for higher resolution and complex visuals. Moving the art into production is the focus of chapter 5; different ways to package the final output, testing, code stability, and so on are the landmarks here. These chapters also captures the four-step model proposed in the book for doing art. This ends Part 1, covering almost 60 percent of the book.

Part 2, as mentioned above, is a walkthrough of how to make rich art. Chapter 6 discusses inspiration, and chapter 7 discusses the application of chapters 2 to 5 in getting art completed. Part 3 is split into three chapters. Chapter 8 is about dealing with Processing (errors, help, and so on). Chapter 9 encourages going deeper into processing--the treatment in the book is quite limited in depth and details. More general advice comes in chapter 10, for example, how ideation goes with such a technology and a layered model for building up the art.

The book includes snippets demarcated in the flow to highlight some important points, provide some anecdotes, pose some questions, and so on. Printed in larger than usual font, the book is very readable. Language-wise also there will be little difficulty in following the discussion. Full program code is given for almost all that is discussed in the book; one can just type it into Processing and see what it does. Lots of advice for novice explorers is scattered throughout the book. Using today’s affordances, a QR code link to the actual code on the portal could make the experience better--to feel the result of the code live.

As I come from a computer science background and understand programming in some depth, I am a little concerned about the fast pace of introducing various programming constructs. Very important constructs like classes, loops, and other such constructs are introduced in less than a paragraph. This could lead to the formation of faulty concepts in the learner, and some frustration as one moves into more active exploration.

Both the Processing language and the book are recommended even if you are not an artist. It is interesting to see how fascinating artwork could be created by writing a program, including the many nuances along the way.

More reviews about this item: Amazon

Reviewer:  M Sasikumar Review #: CR147409
Bookmark and Share
  Featured Reviewer  
Specialized Application Languages (D.3.2 ... )
Fine Arts (J.5 ... )
Graphics Utilities (I.3.4 )
Reference (A.2 )
Would you recommend this review?
Other reviews under "Specialized Application Languages": Date
An experimental study of people creating spreadsheets
Brown P., Gould J. ACM Transactions on Information Systems 5(3): 258-272, 1987. Type: Article
Jul 1 1988
Types and persistence in database programming languages
Atkinson M., Buneman O. ACM Computing Surveys 19(2): 105-170, 1987. Type: Article
Apr 1 1989
Programming languages for distributed computing systems
Bal H., Steiner J., Tanenbaum A. ACM Computing Surveys 21(3): 261-322, 1989. Type: Article
Aug 1 1990

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy