Why join the course?
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)
What topics will you cover?
- Generative art and artists
- Creativity and computers
- Basics of programming
- Digital patterns and interaction
- Algorithmic thinking and creativity
- Colour, image, sound and randomness
- Randomness and variation in art, culture and code
- Text and typography
- Evolution and ecosystems
What will you achieve?
By the end of the course, you'll be able to...
Who is the course for?
No prior knowledge of programming is necessary, but having an interest or background in any creative area would be beneficial. It is assumed that you have basic computer skills (including how to download software applications) and basic knowledge of files, directories, images and movies. The course involves programming using the Processing environment, so you will need access to a computer that you can download and install this software on.
Who will you learn with?
Jon McCormack
Jon McCormack is a researcher in computing and an internationally acclaimed electronic media artist. He is currently a research fellow in the Faculty of Information Technology at Monash University.
Mark Guglielmetti
Mark Guglielmetti is a researcher, academic and media artist. He currently lectures in Digital Art and Communication Design at Monash Art Design & Architecture (MADA) at Monash University.
Who developed the course?
Get a taste of this course
Find out what this course is like by previewing some of the course steps before you join:
Do you know someone who’d love this course? Tell them about it...
You can use the hashtag #FLCreativeCoding to talk about this course on social media.