Poetic Computation, Creative Coding
— Zachary Lieberman, in iDN
Computing, Outside a School of Computer Science
How many of you have taken a computer science course? More than one? As curious and creative people (inventors, artists, designers, musicians, etc.), in what ways have such courses disappointed you?
Designer/educator/engineer, Leah Buechley, has observed that STEM subjects generally fail to educate students who:
- learn concretely (from examples) rather than abstractly (from equations)
- work improvisationally rather than by planning everything in advance
- are interested in creating expressive objects, rather than utilitarian solutions.
Of traditional computer science introductions, educator-innovator Mitch Resnick has remarked, “It’s like offering a writing class that teaches only grammar and punctuation without providing students a chance to write their own stories.”
This class is intended to address that.
It’s possible that STEM education might benefit from the inclusion of arts-oriented pedagogic approaches. But that’s not the problem that concerns us in this room. Instead, in a world in which computing now touches every discipline, it should no longer be taken for granted that computing must be taught by computer scientists. Computer Science is a discipline, but programming is a skill (or a tool, or a medium, or better yet, a craft) which has different communities of use with different pedagogic needs.
Coping with with the bimodal classroom is very challenging. Some students have studied programming in CS contexts. But then they say: “I know how to program, but I don’t know how to use programming to make art or design”.
“Creative coding” describes the growing set of cultural practices by which artists, designers, architects, and poets employ computer programming and custom software as their chosen medium. This burgeoning field has been accelerated by the widespread adoption of open-source arts-engineering toolkits, such as Processing, p5.js, and openFrameworks, into the curricula of hundreds of art and design schools around the world. Created by artists, for artists, these toolkits are specifically oriented to the needs and working styles of cultural practitioners, and have radically democratized software development as a potent mode of creative inquiry.
- Our objective is to make stirring and provocative new forms of culture.
- Our medium is software and electronics.
- We learn codecraft as necessary to execute our ideas.
It Takes a While
How do you get better at something? The answer is simple: practice. And what is practice? It is playing your scales, again and again, often with errors. This class is designed to give you the “butt in seat time” you need to develop good craft. In the meantime, it’s worth remembering that even people without conventional forms of professionalized skills can make very compelling art.