No Code Creative Coding: A Case Study

When we create generative art, or engage in creative coding, we are creating systems that create art. The process is iterative and we likely engage with the tools as a sort of collaborator. We might be surprised by some results and inspired to build further on those. We leverage randomness to generate alternatives.

No code tools are a way to create software using little or no 'code'. Like serverless computing obviously there is code, but the users compose some kind of simplified primitives, at least when compared with a typical programming language.

So what about no code creative coding? Is that an oxymoron? Well often generative art exposes some control of parameters to users, though typically this is quite limited and would certainly not be considered coding. Furthermore creative coding implies abstractness which is at odds with the more direct manipulation favoured by no code. However, if we create a system that allows users to compose rules of their choice in a flexible yet simple way to create a very wide variety of outputs, then we seem to have addressed a major part of creative coding with 'no code'. If we go further and allow for the use of randomness and noise we've covered even more of the creative coding space. The final key area would be engaging with the tools in a collaborative way, where we see ways of tweaking or improving our work.

For the last few years I've worked on number of projects that explore this space. The one I will look at here, Pattern Maker, is the most mature and does all of the above.

Pattern Maker

Pattern Maker is a iPhone, iPad and MacOS App for No Code Creative Coding. It is a free download, with a one off in app purchase to unlock some advanced features, like high resolution exports.

To get started with in Pattern Maker you are presented with a canvas. There is a shape on it, for example a triangle. You choose colours. But then everything you create must be via applying individually simple rules on top of this.

Each rule can be applied multiple times and can update qualities of the colour: hue, saturation, brightness and opacity. So for example we can create a simple pattern by applying the rotate rule 3 times with a hue modification of +2.

Typically rules have some direct control built in. For rotation we can control the amount of rotation. By combining scale, rotation, translations and other straightforward rules we can create lots of simple patterns. Things get more interesting when we start to use rules that leverage noise or process that create multiple shapes from one input, such as transforming lines via fractal rules.

This is created from 3 rules and simple base shape (it is one of the example patterns in the App).

Generative Variations

Once we have a pattern we can ask the App to generate variations, by adjusting rules. If we like something we can use it as the basis for more changes.