Learning to program is no longer just for computer specialists and software developers. People from many different backgrounds now want to understand the basics of programming, because it’s both fun and an increasingly valuable skill.

One of the most exciting ways to learn programming is through authoring your own creative programs. Known as “creative coding,” this growing field uses computer software as a medium to develop original creative expression.

So if you’re an artist, designer, architect or musician who’s interested in how you can expand your creative skills, or even a computer programmer looking to work in creative applications, you will find this free online course extremely useful.

Explore the concepts and skills of creative coding

Throughout the course we’ll help you develop practical programming concepts and skills by exploring creative ideas and challenges. We’ll be looking at the history and philosophy behind artistic uses of technology, so you can gain a greater understanding of how best to express your own creative vision using the software you write.

The aim is to teach you “algorithmic thinking” – ways to conceptualise and model the world so you can express creative ideas using computer programs.

Each week we’ll start with a simple creative idea and guide you through turning that idea into a working computer program. We’ll be exploring programs that can generate images, animations and sound. You’ll learn how to interact with them to change their behaviour, creating increasingly complex and nuanced visual and sonic artworks using generative programming techniques.

Learn with professional artists and designers

We will also look at how leading professional artists and designers work creatively with computers, technology and robotics, examining their creative process and the ideas that inspire them.

The course is very different from technical courses on programming. We will place creative programming in context through discussion about some of the most interesting questions raised by computer-generated art, such as:

Can a computer be independently creative?

Who is the author of a work of computer art: the programmer or the program?

How is our understanding of art and creativity changed by technology?

Does the computer bring anything that is really new to art?

If you’ve ever wondered about these questions or wanted to learn how to program a computer for creative purposes, then this course is for you.

(Image © 2010 Jon McCormack)