The term “creative coding” may sound odd because the two words don’t seem to go together; the term “coding” is usually associated with pragmatism and logic rather than art and creativity. However, creative coding is where self-expression and logic meet to form a unique and rather beautiful form of modern art.
Creative coding falls under the umbrella of algorithmic and generative art, which, in essence, means art that is generated by a computer or algorithm. To better understand this art form, Egyptian Streets asked generative artists and engineers Anna Lucia and Islam Adel about what creative coding is, why they decided to venture into it, and what they hope to achieve from teaching their upcoming algorithmic art course at Cocoon Cultural Center from 8 November until 1 December.
How would you describe creative coding to those who don’t know much about it?
Anna: From my point of view, creative coding is anything that might use computer coding or programming to produce art, design, or interesting visuals, so instead of making something functional, you make something that’s more like a creative expression; you use computer programming to express yourself creatively. This can be used for many different things: installations, light shows, or computer-generated music – there are a lot of different ways to use computer programming.
What first attracted you to algorithmic art, specifically creative coding?
Anna: In high school, I always had an aptitude for physics and mathematics, but I was also very creative, so I decided to go to art school. I decided to leave it after one year and pursue engineering instead because I was really missing the physics and mathematics [aspect]. However, I was still always looking for this creative outlet. I explored a lot of different things throughout those years and nothing really stuck with me until I stumbled upon creative coding and generative art, which, for me, was a perfect combination of being able to express myself creatively and create beautiful imagery while at the same time having the possibility of [incorporating] mathematics and physics into it. I’ve been working in it ever since and can never imagine not doing it.
Islam: I’ve always been fascinated by all sorts of natural phenomena and their mechanisms. At first, I decided to pursue this interest [by studying] engineering, as it was one of the few fields that allowed me to study these phenomena and appreciate their beauty. During several of my courses, I had to write programs that simulated a certain system or solved a problem, and I had a lot of fun just playing around with the parameters and seeing what would happen: just a lot of “what if?” questions that I was curious to know the answers to. A lot of the results I got were very surprising and visually interesting. There was a sense of experimentation and exploration in seeing the non-obvious relationship between what I wrote and the visual patterns that emerged. It took me about a year of just having fun on weekends with programming these systems until I learned about these creative fields called generative art and creative coding. I absolutely love the process of thinking up some new system to program, writing the code to see the visuals that emerge, adding to the code to emphasize some of the patterns, and finally fine-tuning it to make something aesthetically appealing.
Anna: Something that also deeply attracts me to [creative coding] is the randomness [element]. I often use randomness in the scripts or programs I write, so these are parts where I don’t completely control; I only control the boundaries and the computer randomly decides what is going to happen. This always creates these kinds of surprises that you might not necessarily come up with, but they show up on your screen and are extremely rewarding. Sometimes you write a script and you just keep pressing refresh to see what the computer comes up with from the script that you’ve written.
Can anyone learn creative coding or do they need to have a coding background?
Islam: Absolutely! Of course, having a background in programming would help with starting in creative coding, but you could begin with something like generative art and be able to create a lot of beautiful art with some very basic coding knowledge. That’s not to say that learning advanced topics in programming or mathematics doesn’t have any effect on what you can create, but that knowledge will rarely help you make better art. It’s sort of like doing digital art on Photoshop: you need to learn the basics to be able to draw anything, then you can learn about all these brushes and filters and whatnot. But in the end, what really matters is how you use these tools to create something significant.
Anna: When I started to learn, I only had a very minor coding background, like one or two university classes. Creative coding might actually be a great way to be introduced to programming, especially in high school or for young kids because you have this graphic feedback from whatever you write, so you write a program and you see a circle appear in the place where you want it to appear and you have this feedback between the code that you write and the image that arises. I think it can actually be a great way to introduce people to coding in a creative and playful way.
For the course with Cocoon Cultural Center, the programming language we will work with is specifically written for educational/creative purposes so it isn’t only for programmers. Some high school mathematics is definitely an advantage if you want to do very complex mathematics, but if you don’t want to, you can generate images in a very different way.
What do you hope to achieve from teaching this course?
Anna: I’m hoping to maybe offer creatives a new tool that they can use to produce art, so maybe a photographer can learn how to code their own filters for their images, an illustrator can find new ways to animate their work, or a graphic designer can use the randomness of the programming to produce new compositions.
I’d also like to show people who actually have a programming background and are usually busy making very functional things that they can use programming to express themselves creatively. I think the most beautiful thing is to actually bring these two groups of people together during the course so it can be a mix of creatives who’ve never done something with code and programmers who’ve never done something creatively, and bring them together in the course and see what comes out of that.
Islam: The main goal for me is to create a learning collaborative environment that helps the participants get into the field. This course will not just be a tutorial to recreate certain visuals, but it’s a way for the participants to use the inspiration and tools to make something of their own. I’m very excited to see what everyone will come up with and the discussions that follow.
Anna: Another thing I’m very interested in is building a community here in Cairo around creative coding and find more likeminded people because the creative coding scene is very global and very online, but I’m missing that kind of in-real-life practice with people close around you, so it’s something Islam and I are trying to achieve: to build that community here closer around us.
What’s your advice to aspiring artists hoping to learn the art of creative coding?
Anna: Join the course! We’ve put together a good curriculum for beginners with some great first tools and techniques to get you started, but if that’s not a possibility for whatever reason, I would recommend downloading processing from processing.org and get started with that. Be playful and don’t get intimidated; the website offers some good beginner tutorials so that would be a great way to start.
Islam: Just get started! There are no barriers or rules for entry. I’d say you should think of what medium you would like to work with, be it visuals, sound, interactive stuff…etc. and learn as you go. Just look up the necessary tools to be able to do the very basics of what’s on your mind, and then just start experimenting and have fun with it! The online creative coding community is very helpful; there are plenty of tutorials out there that’ll teach you how to do pretty much anything. I think everyone finds their way to this field through a different path that makes their style unique and something of their own.
Anna: And I would also say: don’t compare yourself to other people, but compare yourself to your own work and your own progress. Compare your work to the work you did before that and see how you’re progressing and improving and how your style is evolving.
Anna and Islam’s upcoming algorithmic art course will span a total of eight sessions from 8 November to 1 December for EGP 4,200. The first two sessions can also be booked alone for EGP 600 per session. For more details about the sessions and to register in the course, visit the Cocoon Cultural Center website by clicking here.
Support independant Media
Subscribe to our newsletter