Any sufficiently advanced technology is indistinguishable from magic.

—Arthur C. Clarke

When we first learn to use a computer, it seems magical. It’s too complex to understand.

But when we start learning to program the system is revealed to be rational, finite, and comprehensible. It’s complicated, but we understand that it’s ultimately knowable.

At a certain point, though, our beliefs change as that complication accrues. We understand less as we learn more. Our sufficiently advanced technology becomes magick.

We can no longer predict what our machine learning algorithms will decide. Tests become flaky. Concurrent systems are cursed with non-determinism. We talk about the wizards who maintain the world’s systems by muttering incantations. As reason fails, superstition takes hold.

Software Witch explores the deep connections between software engineering and the occult.


It is created by Jenny and edited by Harry.

Made using the magickal technologies of GIMP, Jekyll, minima, and a font from Blamdot.

Follow the comic on Twitter at @softwarewitch.