
Coding Art: The Four Steps to Creative Programming with the Processing Language
280
Coding Art: The Four Steps to Creative Programming with the Processing Language
280Paperback(1st ed.)
-
SHIP THIS ITEMTemporarily Out of Stock Online
-
PICK UP IN STORECheck Availability at Nearby Stores
Available within 2 business hours
Related collections and offers
Overview
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.
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
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
About the Authors xi
About the Technical Reviewer xiii
Acknowledgments xv
Chapter 1 Introduction 1
1.1 Coding art 3
1.2 Motivation 4
1.2.1 How to talk with a "machine" 4
1.2.2 Practice a practice 5
1.2.3 Do it and own it 6
1.3 How to read this book 7
1.3.1 Calling all creatives 7
1.3.2 Four steps, one example, one zoom 8
1.3.3 Getting ready 11
Part I Creative 13
Chapter 2 Idea to visuals 15
2.1 Visual elements 15
2.1.1 Shapes 16
2.1.2 Shaping up in Processing 20
2.1.3 Colors, transparency, and filters 23
2.1.4 Working with form and texture 27
2.2 Canvas secrets 31
2.2.1 Scaling visual elements 32
2.2.2 Resetting or restoring the canvas 34
2.2.3 Rotation and translation 36
2.3 Animation: From frames to motion 41
2.3.1 Animation basics 41
2.3.2 Simple movement 43
2.3.3 Rhythm in motion 45
2.4 Interaction as input for animation 50
2.4.1 Combining mouse presses and movement 52
2.5 Summary 53
Chapter 3 Composition and structure 55
3.1 Data and code structure 56
3.1.1 Creating many things 56
3.1.2 Controlling many things 66
3.2 Visual structure 70
3.2.1 Composition and alignment 71
3.2.2 Composing with layers 75
3.2.3 Controlling layers 80
3.3 Summary 85
Chapter 4 Refinement and depth 87
4.1 Randomness and noise 87
4.1.1 Working with randomness 88
4.1.2 Controlling randomness 93
4.1.3 Selecting and making choices with randomness 100
4.1.4 Working with noise 104
4.2 MemoryDot 108
4.2.1 Smoothing 109
4.2.2 Smoothly working with many things 116
4.3 Using computed values 119
4.3.1 Computing values with functions 120
4.3.2 Interpolation 125
4.3.3 Interpolation with functions 128
4.4 Interactivity 133
4.4.1 Mouse interaction 133
4.4.2 Keyboard interaction 137
4.4.3 Other input 145
4.5 Summary 147
Chapter 5 Completion and production 149
5.1 Making things big for print 149
5.1.1 High-resolution rendering 151
5.1.2 Migrating to scalable version 153
5.1.3 Rendering snapshots of dynamic work 155
5.2 A backstage for control 161
5.2.1 Tweak mode in Processing 162
5.2.2 Centralizing control with variables 163
5.2.3 "Backstaging" with the keyboard 165
5.3 More stable and less risky code 169
5.3.1 The right things in the right place 169
5.3.2 Avoiding resource bloat 172
5.3.3 Code structure 173
5.3.4 Don't reinvent the wheel 176
5.4 Testing before deployment 179
5.4.1 Depending on dependencies 180
5.4.2 Anticipating differences 181
5.4.3 Preparing for unattended operation 182
5.5 Moving to mobile 183
5.5.1 Structure of mobile Processing content 184
5.5.2 From Processing to p5.js 187
5.5.3 Fine-tuning the presentation 188
5.5.4 How to spot errors? 190
5.5.5 Deploying for mobile use 190
5.6 Summary 191
Part II An example: Mountrothko 193
Chapter 6 Inspiration 195
6.1 Context and starting point 198
6.2 Concept and artwork 199
Chapter 7 From idea to completion 201
7.1 Idea to visuals 201
7.2 Composition and structure 205
7.2.1 Composition: The fog 205
7.2.2 Composition: Creating the mountains 207
7.2.3 Structure: Creating the particles 209
7.3 Refinement and depth 212
7.3.1 Refinement: Reshaping the particles 213
7.3.2 Depth: Adding interaction 218
7.4 Completion and production 221
7.4.1 Completion: Installation in space 221
7.4.2 Production in print 222
7.5 Summary 223
Part III Coding practice 229
Chapter 8 Dealing with problems 231
8.1 Helping yourself 232
8.1.1 Error messages or nothing happens 232
8.1.2 Working with copy-paste 233
8.1.3 Reference documentation 235
8.1.4 Searching for symptoms 235
8.2 Getting help from others 237
8.2.1 Finding help 238
8.2.2 Asking the right questions right 238
8.2.3 Minimal working example 239
8.3 Working with experts 240
8.3.1 How can experts help you? 241
8.3.2 How to manage a project with experts? 241
Chapter 9 Learning path 245
9.1 Going deeper into Processing 245
9.1.1 Challenges to pick 246
9.1.2 Building your own tool set 247
9.1.3 Sharing your tool set with others 248
9.2 Different technologies 248
9.2.1 Enhancing Processing 248
9.2.2 Assessing feasibility 249
9.2.3 Moving away from Processing 250
Chapter 10 Creative processes 253
10.1 Two types of ideation 253
10.1.1 Concept-based ideation 254
10.1.2 Material-based ideation 254
10.2 Using abstraction layers 255
10.2.1 First loop: Behavior to output 256
10.2.2 Second loop: Adding data 257
10.2.3 Third loop: Adding input and interaction 258
10.2.4 Fourth loop: Adding a backstage 261
10.2.5 Creative processes with layers 262
Conclusion 265
Epilogue 267
References 271
Index 275