Pub. Date:
Coding Art: The Four Steps to Creative Programming with the Processing Language

Coding Art: The Four Steps to Creative Programming with the Processing Language

by Yu Zhang, Mathias Funk

Paperback(1st ed.)

View All Available Formats & Editions
Choose Expedited Shipping at checkout for delivery by Monday, October 25


Finally, a book on creative programming, written directly for artists and designers! Rather than following a computer science curriculum, this book is aimed at creatives who are working in the intersection of design, art, and education.

In this book you'll learn to apply computation into the creative process by following a four-step process, and through this, land in the cross section of coding and art, with a focus on practical examples and relevant work structures. You'll follow a real-world use case of computation art and see how it relates back to the four key pillars, and addresses potential pitfalls and challenges in the creative process. All code examples are presented in a fully integrated Processing example library, making it easy for readers to get started.

This unique and finely balanced approach between skill acquisition and the creative process and development makes Coding Art a functional reference book for both creative programming and the creative process for professors and students alike.

What You’ll Learn

• Review ideas and approaches from creative programming to different professional domains

• Work with computational tools like the Processing language
• Understand the skills needed to move from static elements to animation to interaction
• Use interactivity as input to bring creative concepts closer to refinement and depth
• Simplify and extend the design of aesthetics, rhythms, and smoothness with data structures
• Leverage the diversity of art code on other platforms like the web or mobile applications
• Understand the end-to-end process of computation art through real world use cases
• Study best practices, common pitfalls, and challenges of the creative process

Who This Book Is For

Those looking to see what computation and data can do for their creative expression; learners who want to integrate computation and data into their practices in different perspectives; and those who already know how to program, seeking creativity and inspiration in the context of computation and data.

Related collections and offers

Product Details

ISBN-13: 9781484262634
Publisher: Apress
Publication date: 01/07/2021
Series: Design Thinking
Edition description: 1st ed.
Pages: 280
Product dimensions: 6.10(w) x 9.25(h) x (d)

About the Author

An artist by training, Yu Zhang finished her PhD in 2017 on the theory and artistic practice of interactive technologies for public, large-scale installations. She approaches visual art with mixed reality installations and projections, sensor-based interactives, and computational arts. She roots her artistic intent in the symbolism of Asian traditions and transforms the artistic unpacking of drama and cultural signifiers into experiences of interactivity and connectivity that ultimately bridge artistic expression and audience experience. She uses systems design toolkit, to realize a complex multifaceted experience playing with the spatiotemporal context of the audience's interaction with the installations when digital and physical converge. Starting from interactivity, she constructs layers of different connections between artist, artwork, audience, and the environment to express how far such connectivity can impact and reshape the structure and relations of objects, space, and time within a dynamic audience experience. Apart from her artistic research and practice, Yu’s teaching experiences cover over ten years and a board space including traditional classrooms and design-led project-based learning activities.

Mathias Funk is Associate Professor in the Future Everyday group in the Department of Industrial Design at the Eindhoven University of Technology (TU/e). He has a background in Computer Science and a PhD in Electrical Engineering (from Eindhoven University of Technology). His research interests include complex systems design, remote data collection, systems for musical expression, and design tools such as domain-specific languages and integrated development environments. In the past he has worked in research positions at ATR Japan, RWTH Aachen and he has been Visiting Researcher at Philips Consumer Lifestyle, The Netherlands. He is also the co-founder of UXsuite, a high-tech spin-off from Eindhoven University of Technology. He has years of experience in software architecture and design, engineering of distributed systems, and web technologies. Further areas of interest and practice are domain-specific languages and code generation, sound and video processing systems, and data and information visualization approaches. He has been involved extensively in the business side of innovation, the transfer of research to commercial products, and he loves to think about a design’s real world impact. As a teacher, he teaches various technology-oriented courses in the Industrial Design curriculum about designing with data and visualization approaches, systems design and technologies for connected products and systems. He is regularly invited to give international workshops on large-scale interactive systems, group music improvisation interfaces and expressive (musical) interaction. He has been an active musician for years, and is very interested in the intersection of music, art, and design in particular. Mathias Funk is a senior member of the ACM.

Table of Contents


Part I: Creative Coding
In the first main part of this book, we present a four-step working process when code is involved in art practice.

Chapter 1: Idea to Visuals
In this chapter we show how creatives can translate their ideas into simple visual elements, and then work with these elements creatively, by animating them in motions and interaction. In this part, we move quickly from shaping up visual elements in static to animate and scale them in variants and complexity. We also make the comparatively large step to interaction as input for animating visual elements already in this first step. This allows creatives to directly experience the power and expressivity of a computational creative tool like Processing. We don’t hold back in this first step, because we see interaction (and ultimately data) as the important differentiator and driver behind the power of computational in creative practice. Even the raw understanding of interaction in code can help creatives ideate with minimal computation at an early stage of a project.

Chapter 2: Composition and Structure
In this chapter, we align the structure of code and the visual structure to reinforce the initial momentum with transparent concepts in code. In this step, we list different code examples that are related to repetition and variation. These are all features related to the creation and manipulation of a Gestalt, introduced as the “many things as one” concept in the book. The reader learns about the shift from an individual element in repetition to many things in layers and alignment. While we introduce fewer new elements from Processing, we maintain the momentum for the reader in showing how they can, with a few lines of code, amplify the expressivity of their first tryouts. The divergence from traditional creative programming books is most visible in the second step, we leave the path of explaining Processing and let the creative process take charge.

Chapter 3: Refinement and Depth
In this chapter, we use randomness and noise as sources for depth and entropy and explain how to refine and deepen the idea regarding controlling, selecting, and making choices. In this part, we specifically introduce new data structures as means to simplify and extend the design of aesthetics, rhythms and smoothness. We also return to interactivity at this developed stage and use interactivity as input to bring creative concepts closer to refinement and depth.

Chapter 4: Completion and Production
In this chapter, we look at the backstage of coding an art piece for presentation and “show-time”. We show how to leverage the diversity of art code on other platforms like the web or in mobile applications. In this step, we also specify how to backstage, test and control the creative work in a less risky way on the final production stage.

Part II: An Example: MOUNTROTHKO
In the second part of this book, we present a large example for computational art, MOUNTROTHKO (2018). This part shows how we applied many aspects of the first part of the book in a real project. We emphasize that what we write about in this book is what we also practice: we unfold MOUNTROTHKO from the very beginning by showing the conceptual and visual starting points. Then we walk through the four steps of the whole creative process in close relation to this example. In MOUNTROTHKO, certain steps were taken going back and forth, or in iteration, which underlines how the book is practically meaningful as a process reference.

Chapter 5: Inspiration

Chapter 6: From idea to completion

Part III: Coding Practice
In the last part of this book, we address common pitfalls and challenges of the creative process and formulate suggestions and tips for creatives based on our experience over the years. We indicate main problems that creatives might have in practice: how to help yourself, how to get help from others, and how to find and work with experts from other fields. Finally, we outline a continuation of the learning path for creatives alongside reading and making: this book ideally represents the starting of a personal creative journey working with both art and code.

Chapter 7: Dealing with Problems

Chapter 8: Learning Path

Chapter 9: Creative Processes



Customer Reviews