Category: Generative Art


A poem consisting of the genesis block hashes from the hundred cryptocurrencies with the highest market capitalization on January the Second, 2016 encoded as BIP-0039 mnemonics. It begins: abandon abandon abandon ability output crowd ice area thumb clown sibling charge youth range ribbon stairs plug argue provide toddler gaze edit meadow update Details on how…
Posted in Art, Crypto, Generative Art, Projects


This took a ridiculous amount of time to hack together, but here's a Common Lisp function to decide the shortest angle between two other angles. It's used in the example of seeking a point above. I can now add noise to this to make a more AARON-style pen. (defun shortest-angle-difference (a1 a2) "Find the shortest…
Posted in Art Computing, Generative Art, Projects

draw-something 2016

I've updated the Common Lisp version of draw-something to use modern technologies - Roswell, QuickLisp, ASDF 3, cl-cffi-gtk and the Plan testing library. The tests helped flush out bugs, changing my mis-uses of defmethod to defun silenced a lot of compiler warnings and that in turn helped find some more bugs. There's now a bit…
Posted in Art Computing, Generative Art, Projects

Minara 0.4.0

I've been making the regular (accidentally) six-yearly update to Minara, my vector graphics program. The new version switches from GLUT to Gtk for the windowing system, from GLU to Cairo for the renderer, and from C to pure Scheme for the core application. It's all written in The GNU project's Guile Scheme system. Minara is…
Posted in Art Computing, Free Software, Generative Art, Projects, Uncategorized

Blockchain Aesthetics

These images are examples of real-time generative patterns visualising Bitcoin transactions. I wrote them in html5 using's WebSockets API to get notifications of the hash value of each new transaction. You can click on each image to open a new window actually running that visualization. Above, each row is a transaction with each byte…
Posted in Aesthetics, Art Computing, Generative Art, Projects


We can use NLTK's support for WordNet to help generate and classify text. from nltk.corpus import wordnet as wn from nltk.corpus import sentiwordnet as swn def make_synset(word, category='n', number='01'): """Conveniently make a synset""" number = int(number) return wn.synset('%s.%s.%02i' % (word, category, number)) >>> dog = make_synset('dog') >>> dog.definition 'a member of the genus Canis (probably…
Posted in Art Computing, Free Software, Generative Art, Howto, Uncategorized


Monkeycoin is the follow-up to Facecoin. It is a Bitcoin-like cryptocurrency that uses trying to write the complete works of Shakespeare as its proof of work. You can find out more here.
Posted in Art, Art Computing, Free Culture, Generative Art, Projects, Satire

More Surgical Strike

I've fixed more of the outstanding issues in Surgical Strike. And I've make an Emacs mode for editing .strike files and executing them. I've also documented the language and taken this opportunity to change a feature of the language that I was never happy with, although I haven't updated the code examples to reflect this…
Posted in Art, Free Software, Generative Art, Projects

Surgical Strike Update

I've updated the 2008 remake of my 1996 artistic programming language "Surgical Strike" to compile on modern versions of GNU/Linux. It makes things like this from stealth bombers and old computer company logos: incoming! codeword blim manouver 0 18 0 roll 0 18 0 deliver set // Main orders load "f-117.dxf" camouflage "MacOS.png" roll…
Posted in Art, Art Computing, Free Software, Generative Art, Projects, Satire

Glitcherature In Emacs 2

glitcherature-mode for Emacs has been updated to add new functions for applying multiple commands to words, sentences and paragraphs, randomly or in order. There are also new commands to sort characters, to copy structure from one text another and to render a falling rain effect. You can get the code and instructions here: Here's…
Posted in Free Software, Generative Art, Glitch Art, Projects