Originally posted on Substack

“All art is quite useless.” — but maybe useless is what we need right now. Oscar Wilde

Hello Friends!

This week has been a wonderful week full of interesting links and experimentation for myself and I hope that they were the same for you.

Below there is an article called “A CRITIQUE OF SURPRISE IN GENERATIVE ART” that has left interesting questions on the validity of generative art in light of artwork from the postmodern periods.

This has led me to ask questions like these:

  • What makes it swell in excitement or awe when I see a piece of artistry?
  • Why can a piece of art be so overwhelming? You continue to stare at it and can’t seem to handle looking away.
  • Why is there an urge to create art?

They are all fascinating to think through and this is what I have come up with for now.

Personally I find excitement when I see a work I love and it blows my mind. It usually has elements of scale, and holds unexpected elements that lead to goosebumps. I continue to go back to flocking algorithms such as the following video.


It might be invoking natural instincts:

  • Flying birds overhead causes our hunt instinct go to play trying to determine at how one might succeed in bringing food to the table.
  • It might be a prey’s obfuscation tactic to get away by mesmerize the prey with overwhelming motion.
  • Or it invokes the dreaminess of the subconscious that makes us experience the trickle of oxytocin within our bodies.

I don’t have an answer to these questions but I do muse about them and would love to hear from you all if you might have more insight. If so, leave leave your thoughts in the comments below.

Anyways, I hope you enjoy the materials I’ve collected this week and hope that you will find much enjoyment in creating and being mesmerized.



This week I have just a work to share with you; I call it the Chinese Dream.


Resa Ali

Reza Ali is a computational designer, software (graphics | ui | ux) engineer, and (visual | spatial) artist. Reza is deeply passionate about graphic & motion design, computational geometry, novel creative | design tools, visual & spatial computing & communication and all things generative, procedural, computational, and algorithmic.

Twitter: @rezaali

Instagram: @syedrezaali



Reza has also written a 3D tools that works with GLSL that you might want to check out.

🖌️ Unconventional Media


Code Poetry

This website displays a collection of twelve code poems, each written in the source code of a different programming language. Every poem is also a valid program that produces a visual representation of itself when compiled and run.

📸 Generative Graphics


Written Images

Written Images is the brainchild of Martin Fuchs. For his diploma thesis, he put out a call for entries for people to create generative artwork. The stipulations were as follows: Each program should save four images to disk, each image taking less than 15 seconds to render, and then the program should self terminate.

🏛️ Exhibits / Installations



SUBMERGE was a month-long installation which celebrated the Pantone colour of the year – Classic Blue. This carefully considered design combines 360-degree projection and interactive screens for an unforgettable immersive experience. Curated and produced by ARTECHOUSE in collaboration with INTUS Interactive Design, this exhibit is a class in successful immersive design. Media artist, Gilberto Castro shares his design story:

🔖 Articles and Tutorials


Tutorial: Joy Division - Plain Javascript Edition

The Joy Division album cover has a cool history, and is a beautiful example of data driven art. In this tutorial we’re going to recreate it in a more simplistic form.

Oft times; its easy to forget that the frameworks such as p5.js and Processing frameworks have made the task of generating code easier. But the question is, how much easier? Here is a way to judge for yourself.


In contemporary generative art, the aesthetics of surprise has become a central element in both the production and reception of artwork. While sciences that investigate chaotic or emergent phenomena attempt to generate the unexpected in order to explain and manage it, generative art moves in the opposite direction, cultivating surprise as a foundation for aesthetic experience. Understanding that the experience of surprise is influenced by larger cultural and economic factors, however, is essential for a generative artist’s self-reflective, critical practice. This essay foregrounds the importance of surprise in generative art and argues that it mirrors neoliberal capitalism, training us to seek surprise and to find pleasure in its repeated production. This argument runs counter to recent theoretical work that attempts to position generative art as a methodology beyond history and the influence of ideology.

The article is a bit on the academic / philosophical side so digest it cl however it is important to poke the validity of generative art as a medium to be taken seriously. Otherwise, is it simply simulation / interpolation / extrapolation of things that are already know and there is nothing to surprise us in the art.

Essentially the article ask the questions:

  • What in generative art makes it art?
  • If autonomy is important to the definition, how does surprise take a role?
  • Does it fall in as new wave after modernist and postmodern periods of art?


Flutter Generative Art: The Easy Way

Generative art in Flutter is still relatively new. However, there is a lot of fascinating artwork coming from all around the world with different techniques for creating it. It is safe to say Robert Felker started the trend with his dArt series and looking at his examples, I thought of creating a way of doing that of my own. With the extra time from the global situation, I went ahead.


Functional Generative Art using Clojure

Creative programming is about writing code to create an expression rather than developing some kind of functionality. It’s an enjoyable process that can be used to create all kinds of art pieces, be it still images, animations, music etc. It’s also a great framework for learning new programming languages.

ClojureScript, or cljs for short, is a Lisp that compiles to javascript. It’s a dynamic, functional programming language with great support for an interactive development process, making it a perfect fit for the type of explorative, creative programming that generative art often resemble.

My first exposure to using Clojure in the generative space was through Inconvergent who has alot of beautiful materials on his website and on Github page. It is a little more unintuituive than a purely OO language such as Java but that comes down to experience and usage than anything. Functional languages such as these


{{ youtube CkjM8et49lI }}

Generative Processes

This is the first video in a series of tutorials on generative art in p5.js. This video series was made specifically for my course, RTA838 - Generative Processes, but anyone’s welcome to tag along.



Generative Design: Visualize, Program, and Create with JavaScript in p5.js

Generative design, once known only to insiders as a revolutionary method of creating artwork, models, and animations with programmed algorithms, has in recent years become a popular tool for designers. By using simple languages such as JavaScript in p5.js, artists and makers can create everything from interactive typography and textiles to 3D-printed furniture to complex and elegant infographics.

I found the book chock full of reproducible examples and an overall introduction into what generative design is and how it is used functionally throughout multimedia and graphic design.

Send me your inspirations…