Presentation by James Elliott: Afterglow, Live Coding for Light Shows


Details
We are excited and honored to have our dear friend James Elliott give a thrilling presentation. Join us for food and fun. Afterwards, we'll head to the Great Dane for a pint.
James Elliott is a software developer who grew up hopping between continents, and got hooked on computers as a teenager in Mexico in the ’80s, to the extent of writing his own word processor in 6502 assembly language so he could turn in high school papers with proper fonts and justification long before he could afford a Mac. He’s written a few books for O’Reilly, and is now delighted to be working in Clojure professionally, helping Singlewire build platforms for mass notification. Having settled in Madison since graduate school, he has recently rekindled a passion for electronic music by discovering the fun of mixing it for an energetic crowd as Deep Symmetry.
http://deepsymmetry.org (http://deepsymmetry.org/)
Afterglow, Live Coding for Light Shows
Imagine being able to turn algorithmic ideas into a dazzling lightscape engulfing you and your audience. That's Afterglow, a live-coding environment for light shows.
As a software developer who creates electronic music shows as an avocation, I wanted a way to express my wildest ideas live, in harmony with music being played. Clojure was the perfect medium for building my dream tool.
Afterglow has grown from a crazy notion to a hub connecting several vibrant efforts in new, interesting ways, and has been used for performances on multiple continents. It can run alone, or hosted in Cycling '74's Max, a visual environment for experimenting with music and video. Afterglow translates abstract ideas into the low-level messages that control lighting fixtures. With the help of pieces of the Overtone project it powers intuitive physical control surfaces like Ableton Push, and offers beat synchronization with DJ equipment. I couldn't have achieved this without the expressiveness, interactivity, and compatibility of the Clojure environment, connecting everything in a coherent and extensible way. Clojure is ideal for building systems that need to walk and chew gum at the same time, and Afterglow does a lot at once.
I'll explain how this open-source project came together, how a Clojure functional mindset can produce streams of dazzling effects under an operator's tactile control, will demonstrate some effects with a few lights, and will provide an introduction to the architecture and implementation of the system. The demo and explanation can go in whatever directions the audience finds most interesting.

Presentation by James Elliott: Afterglow, Live Coding for Light Shows