teaching machines

Flat Braid

When all you know of trees is that they have bark and leaves, you view the woods as a background to the more interesting foreground activity of a jog, or a campout, or a proposal. But when one knows the trees, it’s hard to not stop every few feet and shake hands with some old […]

Icosahedron, Part 2

Several hours later, I have now found the difference between an octahedron and an icosahedron. I had been stuck on generating the coordinates of the octahedron. A little reading and experimentation directed my attention to the cube circumscribing the icosahedron. The way I’ve set things up, its vertices are all [±u, ±u, ±u], where u […]

Icosahedron, Part 1

One of the important consequences of the internet is that we can now talk freely about icosahedrons. We’re not bound to the interests of those that are geographically near. We can love pretty much anything and find a community that shares our passions somewhere online. So, this morning, while I was trying to get other […]

Generating Cool Circuits

A few years ago my mother gave us this Cool Circuits puzzle: If I chain together the individual links into a complete circuit, a small fanfare of lights and sounds is produced. That is, it used to work that way. Moths and rust have had their way with the internals. There are metal wires running […]


Random walks have fascinated me the past few months. As someone who plans weeks and months ahead of time, I suppose I’m compensating a little. They let me take a walk on the wild side. Doo doo doo doo doo doo doo doo doo. But pure wildness isn’t very interesting—at least not for long. It […]

Center Bug

How do you teach elementary schoolers to programmatically trace a circle? Not with parametric equations involving sine and cosine, but with a turtle. You set them on its back, put the reins in their hands, and have them call out orders. The turtle only needs to know two commands: move and turn. Interleave these commands, […]

Random Splats with Lobes

Earlier I discussed my silly dream of generating random splats. That dream had a sequel that the recent break afforded me time to pursue: generating random splats with lobes. I had a hunch that this task would be easier if I had a utility function for generating a random curve that netted a turn of […]

Random Splats

I keep a thinklist of things I’d like to think about. This list comes in handy during meetings. Sometimes I even look forward to meetings, because that means I’ll have some time to think. Recently I added to this list the notion of generating random splats. My first thinking was to generate a circular polyline […]


Madeup has a good number of solidifiers, but I’m always encountering compelling algorithmic shapes that don’t like to be modeled out of cylinders, boxes, spheres, extrusions, or revolutions. This has led to the addition of parametric surfaces, boolean mesh operations, and metaballs. But none of these were up to task of modeling my three-year-old’s Duplo […]


A couple of months ago I had about 200 unread items in my Feedly “save for later” queue. The size of that pile told me that my life is not my own, that 9 months of the year I will be owned completely by work, that teachers don’t get to grow their brains. It’s how […]

1 2 3 4 8