Skip to main content
Story

How to Start Creative Coding

183983

Written by
Maddie Ball
Published date
09 October 2019

When you think of coding, creativity might not be the first word that springs to mind. Yet many would argue that the discipline - which can be traced back to the 1960’s - is the intersection where technology, art and design converge. New art forms are being developed through the medium of code daily, and the creative coding world is moving so rapidly that tech curious writers are struggling to document it all.

We spoke to creative coding pioneer Damien Borowik to find out more about how you can get started.

What is creative coding?

Creative coding uses software, code and computational processes to be expressive or to create art forms. While creative coding is generally thought of as more aesthetic than functional, it is becoming increasingly commonplace in advertising, branding and the wider design industry.

Damien Borowik

Creative Coding Artist and Lecturer

Damien Borowik is a creative coder, artist and lecturer. Having completed a degree in Graphic Design at CSM in the early 2000’s - when creative coding was still in its relative infancy - Borowik later graduated from Goldsmiths with an MA in Computational Arts. Borowik created the uber successful Drawing Machine campaign, which led brands and art institutions such as Christian Dior Couture, the V&A and Samsung Electronics to commission his art.

What type of software should I use?

Processing is the software that I personally work with, and teach in my creative coding course. It’s a free, open source programming environment which has been designed for visual arts. I particularly like Processing because it teaches you to code through typing lines of code. You type pure lines of code, and then you can see the graphical representation of what you’re doing afterwards. It can be quite challenging to start with, as you may not initially know how to use the right syntax, objects or functions: but with a bit of perseverance it’s very rewarding and afterwards you will have the ability to read lines of code and make sense of what they do.

Although Processing is a coding language derived from Java, it now comes in different programming languages; If you are already familiar with Javascript or want to create work for the web, Processing has been ported as a Javascript library called p5.js. You can also use Processing with Python or even on Android platforms. Creative coding is also a good stepping stone to delving into physical computing; if you want to create artworks which incorporate any kind of hardware then Arduino can be used to create projects which include hardware and software, such as music making devices or robots, sensing and acting upon the physical world. Of course, Processing is not the only software used in creative coding. Software such as VVVV, OpenFrameworks, TouchDesigner or Max/MSP are also very powerful and versatile, but I always recommend Processing for the ease of access and strong community and web resources available.

What kind of computer do I need?

Although computational power can become important when processing big images or complex algorithm in real-time, you don’t need such computer to start coding creatively; software like processing can even run on a raspberry Pi which can cost as little as £20. Of course, the cheaper the computer the more limitations it will have. For decent ‘number crunching’ capacity, I would recommend a computer (not a tablet) less than 5 years old, with at least 4GB RAM. The more RAM the better, as it will handle more operations in real-time. Computers with a dedicated graphics card (GPU) can also seriously help with the computation of visuals.

How can someone get started?

The go-to place to visit is the Processing website. It has everything you need to get you started, from tutorials, examples, and discussion forums to links to books and other web resources full of examples and tutorials. I also teach a beginner course online and in real-time, if you want hands-on guidance and support as you get started.

What would be an ideal starter project for a beginner?

The first project I recommend is to make a creature through code. It allows you to get familiar with the programming environment, syntax and how to create, place and make visible graphical elements. I then get learners to create a digital mandala, introducing functions to rotate and repeat actions while get creative with pattern making, shapes and colours. After this, introducing strong basis for motion and interactivity allows for many possibilities.

What industry applications are there for creative coding?

Some innovative brands are already using creative programming to make themselves stand out visually, and as brands compete for attention the use of creative coding will become more mainstream. For example, the Adobe software suite already has inbuilt Javascript functions, so designers with the right skills can use these tools to give their works the edge.

Coding more broadly is continuing to gain importance in areas such as information design, data visualisation, internet of things, VR and augmented reality, not to mention machine learning and Artificial Intelligence which everyone is talking about. Coding allows creative people to employ their skills to create value in many different industry applications.

Is there demand in the job market for creative coders?

Creative coding is currently somewhat of a niche skill, so companies looking to push the boundaries of their design and communication capabilities are willing to pay well for individuals with such skills. Lots of brands and industries today are using creative coding to increase the wow-factor in their adverts, so creative agencies around the world are looking to hire creative coders to push the boundaries of design for their clients.

More broadly, coding is essential in the 21st century, so developing this skill will certainly benefit your career development. And coding is a skill that can be adapted and applied in many areas of the creative industries, from graphic, product and spatial design to media and communication. Coding skills will give you the possibility of getting involved in projects in industries ranging from textile and interior design to advertising, broadcasting and data visualisation.

Finally, what inspires your creative work?

The art of making is the big drive in what I do. It’s having the ability to create something from scratch, and the curiosity I have to shape the medium, whether it’s paint or code. I’m really interested in the relation with the mediums that I use and the aesthetic output they provide, from a pencil touching paper to a generative art form on the screen. Every drawing or algorithm produces something unique and there’s an element of serendipity while working with algorithms to create which I love.