Creative Coding (FutureLearn)

Offered by Monash University,
Creative Coding (FutureLearn)

Use computer programming as a creative discipline to generate sounds, images, animations and more, with this free online 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.

Class Deals by MOOC List - Click here and see FutureLearn's Active Discounts, Deals, and Promo Codes.

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.

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

Learning on this course
You can take this self-guided course and learn at your own pace. On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.

What will you achieve?
By the end of the course, you‘ll be able to...

  • Produce a simple graphic using the Processing programming environment.
  • Apply programming concepts of arrays and lists.
  • Perform different branches of code based on conditions.
  • Synthesise images and sounds into programming work.
  • Apply code statements to loop and repeat sections of programming code.
  • Investigate the basics of object-oriented programming and coding with objects.
  • Explore an artistic approach to translating physical motion into an algorithm and implementing the algorithm as a program.
  • Reflect on the history and significance of typography and letterforms to human culture.
  • Describe and explore some of the basic ideas behind processes used in generative art, such as feedback, aesthetic selection, evolution and algorithms.
  • Describe ideas and thoughts on some broader cultural issues concerning artificial life and what it means to be creative for people and machines.

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.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Understanding Maths and Logic in Computer Science (FutureLearn) FutureLearn
Raspberry Pi Foundation

Understanding Maths and Logic in Computer Science (FutureLearn)

Improve your understanding and ability to teach maths and logic in computing while building elements of an escape room. Become more familiar with maths and logic in computer science. The mathematical aspects of computer science can be difficult to understand and teach. On this course, you will be introduced to maths and logic in computing in an engaging way.

Nov 1st 2021
3 Weeks
Fortran for Scientific Computing (FutureLearn) FutureLearn
Partnership for Advanced Computing in Europe - PRACE,Vlaams Supercomputer Centre

Fortran for Scientific Computing (FutureLearn)

Learn how to program in Fortran. Use object-oriented programming to design efficient and maintainable code. Discover the power of Fortran for scientific programming. Fortran is a programming language that has been designed for scientific computing, allowing users to naturally express numerical problems. On this course, you’ll discover how to express your numerical problems as a Fortran program, exploring the power and versatility of this popular programming language.

Sep 27th 2021
5-12 Weeks
Start Writing Fiction (FutureLearn) FutureLearn
The Open University

Start Writing Fiction (FutureLearn)

Get started with your own fiction writing, focusing on the central skill of creating characters, with this hands-on course. Discover the rituals and approaches that successful fiction writers use. On this online course, established writers – including Louis de Bernières, Patricia Duncker, Alex Garland, Abdulrazak Gurnah, Tim Pears, Michèle Roberts and Monique Roffey – will talk about how they started writing.

Self Paced
5-12 Weeks
UX Design Strategy and Application: Strategy, Innovation and the Future of Work (FutureLearn) FutureLearn
FutureLearn

UX Design Strategy and Application: Strategy, Innovation and the Future of Work (FutureLearn)

Discover the role of creativity, innovation and strategy in UX design and consider the benefits and challenges of remote working. Understand creativity and innovation. UX designers need to use creativity and innovation to understand user needs, visualise ways to improve the customer journey and solve problems. In this course you will explore the relationship between innovation, creativity and strategy. You will learn how to facilitate these concepts in every stage of the UX Design process.

May 23rd 2022
4 Weeks
Object-oriented Programming in Python: Create Your Own Adventure Game (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Object-oriented Programming in Python: Create Your Own Adventure Game (FutureLearn)

Learn object-oriented programming principles by creating your own text-based adventure game in Python. Object-oriented programming is a programming paradigm based on objects and data rather than actions and logic. This online course will introduce you to the principles of object-oriented programming in Python, showing you how to create objects, functions, methods, and classes.

Jan 2nd 2023
4 Weeks
Scratch to Python: Moving from Block- to Text-based Programming (FutureLearn) FutureLearn
Raspberry Pi Foundation

Scratch to Python: Moving from Block- to Text-based Programming (FutureLearn)

Learn how to apply the thinking and programming skills you've learnt in Scratch to text-based programming languages like Python. Discover how you can transition from block to text-based programming. Block-based programming languages like Scratch make it simple to learn and teach programming. But once you and your students have mastered it, it’s time to move on to a text-based programming language such as Python. This online course will show you how.

Mar 6th 2023
4 Weeks
Introduction to VR Programming, Design, and Unity (FutureLearn) FutureLearn
VR Voom

Introduction to VR Programming, Design, and Unity (FutureLearn)

Step into the world of VR game development, learn the basics of programming language, and even create your own 2D game. Learn how to design, program, and create your very own VR games. The gaming industry has grown exponentially, outperforming both movies and sports combined in 2020. And VR is the newest, exciting innovation taking the industry by storm.

Jun 27th 2022
5-12 Weeks
Programming Applications with Python: Libraries and Web Scraping (FutureLearn) FutureLearn
FutureLearn

Programming Applications with Python: Libraries and Web Scraping (FutureLearn)

Consider applications for APIs and Python, and explore the purpose of web scraping. Examine Python libraries for web development. This course will introduce you to the popular Requests library in Python. You’ll study how to install the Requests library and get to know how it works. Learning via videos, interactive exercises, and quizzes, you’ll also explore what HTTP requests are and what each of the status codes in HTTP mean.

May 23rd 2022
4 Weeks
Software Development: Understanding Python (FutureLearn) FutureLearn
FutureLearn

Software Development: Understanding Python (FutureLearn)

Get an introduction to software development and learn the basics of Python. If you want to start a career in software development, it’s important to build your programming skills. This course focuses on one of the most popular programming languages – Python – which is widely used in scientific and numeric computing.

Self Paced
4 Weeks
Big Ideas in Programming: Expressing Yourself with Python (FutureLearn) FutureLearn
University of Michigan

Big Ideas in Programming: Expressing Yourself with Python (FutureLearn)

Harness the power of Python and its programming concepts to express yourself and automate the work you do. Learn the Python basics you need to create the content and projects you want. Coding and programming allow better work performance, across diverse professions. If you want to discuss ideas with programming professionals or develop the code yourself, you need to know the basics.

Sep 27th 2021
4 Weeks
Programming Essentials with Python: Cloud Technology and SaaS (FutureLearn) FutureLearn
FutureLearn

Programming Essentials with Python: Cloud Technology and SaaS (FutureLearn)

Launch your career in programming with this course on the fundamentals of Python and other programming languages. Develop your knowledge of cloud infrastructure and cloud technologies. What’s powering the architecture of cloud computing, and how does it rely on Python programming? Take a deep dive into the cloud and look at different types of cloud architecture and learn to articulate the benefits, challenges, and opportunities they offer.

May 23rd 2022
4 Weeks
Programming Essentials with Python: Matplotlib and Seaborn (FutureLearn) FutureLearn
FutureLearn

Programming Essentials with Python: Matplotlib and Seaborn (FutureLearn)

Explore the fundamentals of object-orientated programming languages and learn how to visualise data with Python. Discover Python libraries and the tools to improve your data presentation. On this course, you’ll examine the core principles of data-visualisation libraries. You’ll learn to define object-oriented programming, explore the key components of visualising with Python and the tools that can be leveraged. You’ll also explore other Python libraries and their uses, learning how to define and compare them.

May 23rd 2022
4 Weeks