Creative Coding Meetup
Questions?: Contact David Kelly
Creative coding is a different discipline than programming systems. The goal is to create something expressive instead of something functional. Interaction design, information visualization and generative art are all different types of creative coding – which has become a household term describing artworks articulated as code. (via Awesome Creative Coding )
What can I expect?
- This is a peer support group, not an instructor-led workshop / class.
- It's an opportunity to schedule some time each week to develop your coding skills, and to get some help if you need it.
- There are tutorial videos (bring headphones), online courses and reference material in the Coding Resources Section below for you to work through at your own pace.
If you have no coding experience, and aren't sure where or how to start, someone will help you.
Come along, meet people who are also learning to code, and get help if you run into any problems. Showing what you're working on would be great too!
Getting some help
- Search on Google and StackOverflow - others will likely have had a similar problem.
- Ask the people sitting around you in the meetup if they've run into a similar problem. They may be able to help you solve your issue, or point you towards someone else who can.
- Open a new Issue with a description of the problem, and we'll see if we can point you in the right direction
The resources below are for coding frameworks that identify themselves as being useful for Creative Coding. You are of course welcome to use something else, should you wish to.
For a more extensive and diverse list of resources, see: Awesome Creative Coding
Official P5.js Learning Section - includes a variety of tutorials
Introduction to Programming for the Visual Arts with P5.js (Kadenze): This course is an introduction to writing code within the context of the visual arts. It asks two primary questions: What is the potential of software within the visual arts? As a designer or artist, why would I want (or need) to write software?
Book: Online (free), or eBook / Print (not free): The Nature of Code. How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on the programming strategies and techniques behind computer simulations of natural systems using Processing
Online Course, based on the book above: The Nature of Code (Kadenze): Can we capture the unpredictable evolutionary and emergent properties of nature in software? Can understanding the mathematical principles behind our physical world help us to create digital worlds? This class focuses on the programming strategies and techniques behind computer simulations of natural systems. We explore topics ranging from basic mathematics and physics concepts to more advanced simulations of complex systems. Subjects covered include physics simulation, trigonometry, fractals, cellular automata, self-organization, and genetic algorithms. Examples are demonstrated using the p5.js environment with a focus on object oriented programming.
Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. There are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning and prototyping.
Processing Tutorials - Large collections of instructional Processing videos are online from Daniel Shiffman, Andrew Glassner, Jose Sanchez, and Abe Pazos
Videos: Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction, by Daniel Shiffman.
Video Series: The Nature of Code. (See link to associated online book in the P5.js section above) How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on the programming strategies and techniques behind computer simulations of natural systems using Processing
Python & Processing (Montfort)
In the last iteration of these sessions (organised by Anne Karhio), we were working through the book, "Exploratory Programming for the Arts and Humanities", by Nick Montfort (2016). This uses both Python and Processing (see above) as the programming languages.
Details: This book introduces programming to readers with a background in the arts and humanities; there are no prerequisites, and no knowledge of computation is assumed. In it, Nick Montfort reveals programming to be not merely a technical exercise within given constraints but a tool for sketching, brainstorming, and inquiring about important topics. He emphasizes programming's exploratory potential—its facility to create new kinds of artworks and to probe data for new ideas.
openFrameworks is an open source C++ toolkit for creative coding. It is designed to assist the creative process by providing a simple and intuitive framework for experimentation.