Plain English Programming — Jackson Pollock’s Alphabet Soup

Jackson Pollock was an “artist” who “painted” by pouring paint on a canvas on the floor. This is a close-up portion of one of his most famous works, aptly entitled, “Number 8”:

When I’m not programming, I’m often painting. But it turns out that I’m constitutionally incapable of “painting” using Pollock’s technique simply because I think too much about what I’m trying to paint. This, for example, is what came out when I attempted to apply his technique while thinking about him at work in his studio:

So I thought, maybe I can write a Plain English program to approximate Pollock’s unique style. I just need an easy way to simulate the drippy calligraphic strokes that the “master” used to use. And the moment the word “calligraphic” popped into my head, I thought, “Of course! All I really need is one of those fancy, scripty fonts to work with. A quick search of dafonts.com quickly yielded “Jellyka Saint-Andrew’s Queen,” exactly the kind of font I had in mind. It was free, but I sent a donation to the author since the font served me so well. And because people should get paid for their work.

This is what the uppercase letters and squiggly braces look like on a page in Plain English’s built-in page editor:

And this is the Plain English program I wrote to make use of that font:

To run:
Start up.
Clear the screen.
Make a box 6 inches by 6 inches. Center the box on the screen. Mask outside the box.
Loop.
Pick a letter from “{ABCDEFGHIJKLMNOPQRSTUVWXYZ}”.
Pick a spot within 1/2 inch of the box.
Pick a pollock color.
Pick a size between 1/16 inch and 2 inches.
Put “Jellyka, Saint-Andrew’s Queen” and the size into a font.
Draw the letter at the spot with the pollock color and the font (varying the thickness).
If a counter is past 2000, break.
If the counter is evenly divisible by 100, Rotate the canvas.
Repeat.
Refresh the screen.
Wait for the escape key.
Shut down.

In short, the program just draws random letters at random spots in colors typical of Pollock’s Number 8 painting, over and over and over, rotating the canvas every 100 letters (to simulate Jackson walking around his canvas on the floor).

The subroutine that chooses a “pollock color” looks like this:

To pick a pollock color:
If you feel like it, exit.
Pick a number between 1 and 100.
If the number is less than 35, put the darkest yellow color into the pollock color; exit.
If the number is less than 50, put the black color into the pollock color; exit.
If the number is less than 80, put the lightest orange color into the pollock color; exit.
If the number is less than 85, put the light red color into the pollock color; exit.
If the number is less than 94, put the light orange color into the pollock color; exit.
If the number is less than 95, put the lightest yellow color into the pollock color; exit.
Put the white color into the pollock color.

“If you feel like it” means 50% of the time, which in this case leaves the color as it was for another round.

The subroutine that varies the thickness of the letters looks like this:

To draw a letter at a spot with a pollock color and a font (varying the thickness):
Draw the letter at the spot
with the pollock color and the font.

If you feel like it, move the spot 1 pixel right
and 1 pixel down; repeat.

Add 1 to a count. If the count is less than 3, repeat.

As you can see, we sometimes move the spot right and down and redraw the letter to make it a little thicker. Sometimes more than once.

This is what shows up on the screen after the first two dozen letters are drawn:

And this is what the finished work looks like:

Et voila! Not exactly an original Pollock, but definitely in the ballpark. Fun to write, fun to run.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s