Which mechanical plotters do you have?

I have used four different plotters. An EMSL Axidraw v3 (A4 size), a similar EMSL Axidraw v3 (A3 size), an older Axidraw v2 (A4 size), and a Makeblock XY Plotter.

The Makeblock plotter is cheaper, and you have to assemble it yourself. It also has a larger drawing area. The cons are largely that the provided software is quite bad, both the firmware on the plotter itself, and the control software. You can control it directly, but it takes some work, probably. Note that I don't think Makeblock are selling their plotter anymore, but you can still get it from eg. Amazon as far as I know.

The Axidraw plotters on the other hand are considerably more professionally put together. Both the available firmware and software is more user friendly. On top of that, the overall build quality seems much more robust. It is however more expensive, and the drawing area is smaller. Although the A3 sized Axidraw has a drawing area that is almost as large as the Makeblock.

Another good thing about the Axidraws is that they have a pen holder that moves the pen straight up and down, whereas the Makeblock moves the pen along an arc. This eliminates some artefacts if the drawing surface is not quite level, which it basically never is. This is also useful if you are using a lot of ink, which can cause the paper to crease. Finally, the Axidraws can hold different pens more easily.

All in all both plotters do what they are meant to do, but the bottom line is that I recommend one of the Axidraws. I'm currently using the A3 Axidraw for almost all my plots.

How can I learn to do this?

I usually recommend people have a look at The Nature of Code. You can also read this post about how to build generators, which introduces ideas, and links to a lot of resources.

If you are interested in my process in particular, I have written an essay of sorts, which is available at

What software do you use?

Since late 2016 I've mostly been using Common Lisp (SBCL), with a suite of tools I'm continually developing. The first iteration of the library was called snek. I have written about it several places, most notably in this post: SNEK is Not an Acronym.

The version I'm currently using is not publicly available.

I also use Python, with a combination of libraries. Among others: Cython with NumPy, SciPy, Cairo, and pyCUDA.

Old WebGL/Canvas experiments can be seen in the archive.

What pens and paper do you use?

I usually use Fabriano Bristol or Fabriano t6 paper for regular plots. Most of the time I plot with Micron pens. When it comes to black plots I have the best experience so far using Fabriano Black Black paper, and Sakura Gelly Rolls. A useful trick is to run multiple passes in both directions to get good ink saturation.

Why (Common) Lisp?

I chose to learn Lisp at some point because I wanted to learn some new tools/a new programming languge. As it turns out, I rather enjoy working with it, so I'm still using it today.

How do you control the plotters?

Most of my algorithms generate SVG files, then I use the EMSL python terminal client for drawing these SVGs. (It is also possible to draw SVGs on the Axidraw via an Inkscape plugin.)

Do you share your code?

Much of my (older) code is on Github. However—while this code is public, and most of it is under MIT license—I usually do not accept Pull Requests, or reply to issues. The code is mainly intended to be used by me, and I rarely make an effort to enable others to easily utilise the code.

For this reason I recommend reading my writing, rather than looking at the code.

Do you sell your work?

Yes, see the list of available works. If you are interested in something else, please send me an e-mail.

Do you speak at events?

Yes, under the right circumstances. Feel free to reach out.

What background do you have?

I have a Master of Science, specializing in Numerical Mathematics.