Generative Design: Visualize, Program, and Create with Processing
If you are wondering what generative design is, or curious about the potential impact it may have on your practice, grab this book and read the appendix first. Head straight to page 460 and read about the new methods and processes that generative design offers. With this information fresh in your mind, go back to the beginning and look through the sample projects, work with the sample programs and tutorials, and you will begin to see and understand the potential this method of design has to change the way you work. Generative Design is not simply a new tool allowing designers to draw and paint digitally, like a new version of Illustrator or Photoshop. It is a new method, a new design process, a new way of approaching a problem.
The computer’s triumphal march has simply virtualized existing tools, such as the paintbrush, scissors, or photo lab, and made these more efficient. Generative design is different from conventional methods; the design process is unique and fundamentally results in new possibilities.
Generative Design, written by Hartmut Bohnacker, Benedikt Gross, Julia Lauband edited by Claudius Lazzeroni, is broken down into three sections: Project Selections, Basic Principles, and Complex Methods. Each section is clearly marked and color coded for ease of use.
Project Selections is a collection of 35 works of generative design created by artists and designers from around the world. In addition to the brilliant images of code driven generative design, there are references in the descriptions of each project to examples of code in subsequent sections of the book that allow you to explore the creation of similar effects. The images are beautifully printed on glossy paper giving the examples a gallery-like feel.
The Basic Principles section contains introductory programs to get you started with generative design. These programs start with simple commands, such as generating color and shapes, and working with typography and images, that progress in complexity. This section is great for understanding the potential in developing a design process that includes generative design as a working method. The information here (and in Complex Methods) is printed on off-white uncoated paper and utilizes clear annotations and explanations of the code being used. If functions like a programming text book, but more beautiful and functional than any text book I have ever used.
Complex Methods is a collection of programs that combine the ideas and code introduced in Basic Principles to create complex systems and software applications. The tutorials provided here are more than just sample code or simple programs to play with. The reader is introduced to the potential generative design holds to create new systems and tools for the creation of design.
Reading this book is an incomplete experience without a computer, the Generative Design web site (which includes open forums, links to important resources, and videos of the programs in action), the example code downloaded, and the Processing application installed . Reading the text, exploring the code and seeing results on screen that match those printed in the book really is a lot of fun. The example code is exciting and solidifies the possibilities and potential of generative design. I already have a list of things I want to try out.
…The designer is now the creator of individualized tools, since each generative program is also a customized software tool. This allows the designer to explore new paths that would not have been available using existing software, leading to a wider range if visual design mediums.
The descriptions of how Processing works as a programming language do not go into the specifics of writing code, but highlight the most important fundamentals. If you want to learn every detail about programming in Processing you will need to find another source. I recommend Processing: A Programming Handbook for Visual Designers and Artists by Casey Reas and Ben Fry, the creators of Processing. I referenced this book a few times while working on the examples to find definitions of certain pieces of code that were not explained in Generative Design.
My only complaint is that of the 35 project selections, only 12 place generative design in the context of practical application. I would like to see more examples of how this type of design is being employed in practical applications to communicate ideas. The project selections that show examples of generative design used in the creation of logos, identities, typography, architecture, and information graphics are incredibly compelling. The formal experiments are beautiful to look at, but it is the practical applications that really display the possibilities of applying generative design to everyday practice.
This book provides so many ideas, different directions, and options for the presentation of the mountains of data that we generate and collect every day, that it is almost overwhelming to think about. Generative Design is a volume that is accessible, well written, easy to use, beautiful to look at, and guaranteed to jump start the mind of anyone who spends time (or would like to spend time) writing code to create art and design.
About the Reviewer
Jonathon Russell is a designer and educator at Central Michigan University. More of his writing can be found here.