Hey there, human — the robots need you! Vote for IEEE’s Robots Guide in the Webby Awards.

Close bar

Miller Puckette: The Man Behind the Max and Pd Languages (and a Lot of Crazy Music)

Electronic music would be very different without this pioneer

3 min read
photo of Miller Puckette
Photo: Miles Rosemire

photo of Miller PucketteThe Meta Composer: As well as composing and performing his own electronic music, Miller Puckette gave software tools to many others.Photo: Miles Rosemire

Experimental musicians and sound artists frequently incorporate otherworldly drones, warbles, and never-before-heard noises into their work. Yet as different as these compositions are, many of them have something in common: a pair of programming languages written by University of California, San Diego, computer musician Miller Puckette.

Those languages are Max and Pure Data, or Pd. They serve as popular all-purpose tools for composing pieces or building musical instruments, either wholly synthetic or physical-digital hybrids. These languages, now several decades old, have nourished active communities of avant-garde musicians, who rely on the software’s unique visual interfaces for their performances and compositions.

Puckette wrote Max in 1988 while working at the Institute for Research and Coordination in Acoustics/Music, or IRCAM, in Paris. Creating pieces of music with a computer back then was tedious—each work required creating an all-new program. “What I was trying to do was make software that, with modifications, would be mostly reusable from one piece of music to the next,” he says. The language was an instant hit.

Max programs are called patches and look like sprawling flowcharts. Composers drag boxes, called objects, around the screen and link them together with connectors, called patch cords. (The term patch cords came by way of the earlier age of analog modular synthesizers where oscillators, filters, and other modules were physically interconnected by such cables.)

Inputs to objects are called messages and they can be sounds, keyboard presses, or any other piece of digital information. Objects process messages according to rules dictated by the programmer/composer and send outgoing messages to other objects or output devices like loudspeakers or lights. Programmers can export patches as stand-alone pieces of software or integrate them with other audio programs, synthesizers, and controllers.

Max was not created under an open source license, and Puckette discovered he could not always make the modifications he wanted. “As a minion, all the code I wrote belonged to IRCAM,” he says. So sometime around 1996, he started over with Pd. (No one knows when Pd really started, Puckette says, but the Pd community considers 2016 the software’s 20th year.)

Pd is similar to Max and works on the same basic principle of combining objects by passing messages. “I changed a lot of things I thought were bad about Max,” says Puckette. He made Pd faster, lighter, and more stable.

Puckette stays active in the Pd community. He “has started doing a lot more performance himself,” says Kerry Hagan, a researcher at the University of Limerick’s Digital Media & Arts Research Centre, in Ireland. She was Puckette’s graduate student around the time he first drafted Pd, and today she teaches both Pd and Max to her students. Puckette and Hagan often pass patches back and forth, experimenting with new ways to produce sounds using the laws of mathematics and probability. Hagan incorporates their combined efforts into her own performances, she says: “Miller’s programming and math, and my art.”

Pd users now gather annually at PdCon to showcase their patches, offer suggestions for improvement, and perform. Puckette and another former student, New York University computer music assistant professor Jaime E. Oliver La Rosa, put on a show together to close out the 2016 gathering last November. La Rosa sat over his novel instrument, called the Mano Controller, which looks like a large felt-covered music stand, next to a large iMac running his Pd patch. A camera above the stand converts the player’s hand positions into patch inputs. Puckette held a piece of wired plastic in one hand and waved the other above a box-shaped controller on a chair. He contorted his fingers into several configurations, and the shapes acted as the input to another Pd patch. A cacophony of processed drones, clicks, and clanks that sounded like a jungle inhabited solely by robots spewed forth for several minutes. Both men giggled at the performance’s conclusion.

This article appears in the March 2017 print issue as “Digital Music’s Language Maestro.”

This article is for IEEE members only. Join IEEE to access our full archive.

Join the world’s largest professional organization devoted to engineering and applied sciences and get access to all of Spectrum’s articles, podcasts, and special reports. Learn more →

If you're already an IEEE member, please sign in to continue reading.

Membership includes:

  • Get unlimited access to IEEE Spectrum content
  • Follow your favorite topics to create a personalized feed of IEEE Spectrum content
  • Save Spectrum articles to read later
  • Network with other technology professionals
  • Establish a professional profile
  • Create a group to share and collaborate on projects
  • Discover IEEE events and activities
  • Join and participate in discussions