“Programs at an Exhibition” March 6-16

Nick Montfort & Páll Thayer

Programs at an Exhibition

At the Boston Cyberarts Gallery
141 Green Street, Jamaica Plain, MA 02130
Located in the Green Street T Station on the Orange Line
Phone number: 617-522-6710

The exhibit runs March 6 through March 16.

Opening: 6pm-9pm, Thursday March 6.

A snapshot of 'After Jasper Johns,' Nick Montfort, installed at the Boston Cyberarts Gallery

Part of the life of remarkable artworks is that they are appropriated, transformed, and made new. In Programs at an Exhibition, two artists who use code and computation as their medium continue the sort of work others have done by representing visual art as music, by recreating performance pieces in Second Life, and by painting a mustache and goatee on a reproduction of the Mona Lisa. Programs at an Exhibition presents computer programs, written in Perl and Commodore 64 BASIC, each running on its own dedicated computer. The 20th century artworks reenvisioned in these programs include some by painters and visual artists, but also include performances by Joseph Beuys and Vito Acconci. All of the underlying code is made available for gallery visitors to read; they are even welcome to take it home, type it in, and run or rework these programs themselves.

The programs (Commodore 64 BASIC by Nick Montfort, Perl by Páll Thayer) re-create aspects of the concepts and artistic processes that underlie well-known artworks, not just the visual appearance of those works. They participate in popular and “recreational” programming traditions of the sort that people have read about in magazines of the 1970s and 1980s, including Creative Computing. Programmers working in these traditions share code, and they also share an admiration for beautiful output. By celebrating such practices, the exhibit relates to the history of art as well as to the ideals of free software and to the productions of the demoscene. By encouraging gallery visitors to explore programming in the context of contemporary art and the work of specific artists, the exhibit offers a way to make connections between well-known art history and the vibrant, but less widely-known, creative programming practices that have been taken up in recent decades by popular computer users, professional programmers, and artists.

The Perl programs in the exhibit are from Microcodes, a series of very small code-based artworks that Páll Thayer began in 2009. Each one is a fully contained work of art. The conceptual meaning of each piece is revealed through the combination of the title, the code and the results of running them on a computer. Many contemporary programmers view Perl as a “dated” language that saw its heyday in the early ages of the World Wide Web as the primary language used to combine websites with databases. Perl was originally developed by Larry Wall, whose primary interest was to develop a language for parsing text. Because of his background in linguistics, he also wanted the language to have a certain degree of flexibility which has contributed to its motto, “There’s more than one way to do it.” “That motto, ‘TMTOWTDI,’ makes Perl challenging for professional programers who have to take over other’s people code and may struggle to make sense of it,” Thayer said. “But it’s one of the main reasons that Perl, a very expressive programming language, appealed to me in developing this project. This flexibility encouraged Perl programmers to explore individual creative expression in the writing of functional code.”

“Páll’s work in Microcodes engages explicitly with the way computer programs are read by people and hwo they have meanings to those trying to understand them, modify them, debug them, and develop them further,” Nick Montfort said. “The Perl programs in Microcodes are quite readerly when compared to my BASIC programs. I’ve tried to engage with a related, but different documented historical tradition — the one-line BASIC program — as it works in a particular computer, the Commodore 64, and to dive into what that particular computer can do using a very limited amount of code, given these many formal, material, and historical specifics. Because my programs are harder to understand, even though they are written in a more populist programming language, I’m including versions of the program that I have rewritten in a clearer form and that include comments.” Montfort’s related projects include a collaborative book, written with nine others in a single voice, that focuses on a particular Commodore 64 BASIC one-liner. The book, published in 2012, is named after the program that is its focus, 10 PRINT CHR$(205.5+RND(1)); : GOTO 10. Montfort also writes short programs to generate poetry. These include two collections of Perl programs that are constrained in size: his ppg256 series of 256-character programs, and a set of 32-character concrete poetry generators, Concrete Perl. His book #! (pronounced “Shebang”) collects these and other poetry generators, along with their output, and is forthcoming from Counterpath Press.


Nick Montfort develops literary generators and other computational art and poetry, and has participated in dozens of collaborations. He is associate professor of digital media at MIT and faculty advisor for the Electronic Literature Organization, whose Electronic Literature Collection Volume 1 he co-edited. Montfort wrote the book of poems Riddle & Bind and co-wrote 2002: A Palindrome Story with William Gillespie. The MIT Press has published four of Montfort’s collaborative and individually-authored books: The New Media Reader (co-edited with Noah Wardrip-Fruin), Twisty Little Passages, Racing the Beam (co-authored with Ian Bogost), and most recently 10 PRINT CHR$(205.5+RND(1)); : GOTO 10, a collaboration with Patsy Baudoin, John Bell, Ian Bogost, Jeremy Douglass, Mark C. Marino, Michael Mateas, Casey Reas, Mark Sample, and Noah Vawter that Montfort organized. Nick Montfort’s site, with his digital poems and a link to a free PDF of 10 PRINT: http://nickm.com

Páll Thayer is an Icelandic/American artist working primarily with computers and the Internet. He is a devout follower of open-source culture. His work is developed using open-source tools and source code for his projects is released under a GPL license. His work has been exhibited at galleries and festivals around the world with solo shows in Iceland, Sweden, and New York and notable group shows in the US, Canada, Finland, Germany, and Brazil. Páll Thayer has an MFA degree in visual arts from Concordia University in Montréal. He is an active member of Lorna, Iceland’s only organization devoted to electronic arts. He is also an alumni member of The Institute for Everyday Life, Concordia/Hexagram, Montréal. Páll Thayer currently works as a lecturer and technical support specialist at SUNY Purchase College, New York. Páll Thayer’s Microcodes site: http://pallthayer.dyndns.org/microcodes/


Ten programs will be exhibited, running on ten computers. Two of them, one in Perl by Páll Thayer and one in Commodore 64 BASIC by Nick Montfort, are based on the same artwork, Jasper Johns’s Flag:
Flag: Pall Thayer

Flag: Pall Thayer

Flag · Páll Thayer
Perl program · 2009

After Jasper Johns: Nick Montfort

After Jasper Johns: Nick Montfort

After Jasper Johns · Nick Montfort
one-line Commodore 64 BASIC program · 2013

The C64 in the NYT

My colleague Myke pointed out this New York Times column about the Commodore 64, which waxes nostalgic and also points out how the computer opened up possibilities for new programmers to explore and learn. Myke also pointed out, quite aptly, that the photo, which is supposed to be of a Commodore 64, is actually of a 1541 disk drive. Alas, the Grey Lady, in reference to the rainbow-logoed computer, nods…

“Programs at an Exhibition” Opens March 6

I’ll post more on this soon, but for now, let me invite you to the opening of my & Páll Thayer’s show at the Boston Cyberarts Gallery: 141 Green Street, Jamaica Plain, MA 02130, located in the Green Street T Station on the Orange Line, 617-522-6710.

The opening is 6pm-9pm on Thursday March 6.

The exhibit (which will be up March 6-16) will feature ten programs (five in Commodore 64 BASIC by Nick Montfort, five in Perl by Páll Thayer), each running on its own computer. The programs re-create aspects of the concepts and artistic processes that underlie well-known artworks, not just the visual appearance of those works. They participate in popular and “recreational” programming traditions of the sort that people read about in magazines of the 1970s and 1980s, including _Creative Computing._ Programmers working in these traditions share code, and they also share an admiration for beautiful output. By celebrating such practices, the exhibit relates to the history of art as well as to the ideals of free software and to the productions of the demoscene. By encouraging gallery visitors to explore programming in the context of contemporary art and the work of specific artists, the exhibit offers a way to make connections between well-known art history and the vibrant, but less widely-known, creative programming practices that have been taken up in recent decades by popular computer users, professional programmers, and artists.

Flag: Pall Thayer

Flag: Pall Thayer

Flag · Páll Thayer
Perl program · 2009

After Jasper Johns: Nick Montfort

After Jasper Johns: Nick Montfort

After Jasper Johns · Nick Montfort
one-line Commodore 64 BASIC program · 2013

C64 BASIC Workshop at MIT, January 29, 2-5pm

I am moved by the holiday spirit of MIT’s Independent Activities Period (IAP) to announce a Commodore 64 BASIC programming workshop using original hardware.

[Update: The workshop is now fully subscribed, but I will try to arrange for spectators who would like to join us around 4:30pm to see the results of our work.]

C64 BASIC Code running in the Trope Tank

Beginning at 2pm on Wednesday January 29, we will spend about two and half hours working on short BASIC programs. Collaboration will be strongly encouraged; there will be one Commodore 64 provided for each pair of programmers. (If you negotiate with your partner, you may write something individually, however.) It is fine to proceed by modifying programs, and some will be provided for this exact purpose. Programs need not be interactive, but can be. Visual and textual effects will be our focus, but programmers are welcome to work with sound, to develop simple games, or even (gasp!) to write a program that does something useful.

No programming experience (in BASIC, on the Commodore 64, or otherwise) is required. Those who are new to programming can be paired with experienced programmers, if this is suitable to both people. Also, the essentials of BASIC on the Commodore 64 will be described during the workshop. Finally, new programmers can do very interesting work by modifying programs, changing data and parameters and then getting into changing and adding code.

At about 4:30pm we will have a presentation, screening, showcase, or compos of sorts for Commodore 64 BASIC programs in the following three categories:

– One-liner
– (max) 10-line program
– (max) 25-line program

After this workshop, the code developed will be presented and shared on the Web, where it can be run in emulation or by people who have Commodore 64s.

The workshop will take place in my lab at MIT, The Trope Tank, room 14N-233. The site for the lab includes directions for getting there.

The time for the workshop, again, is:

January 29 (Wednesday)
2pm-5pm

I can accommodate 8-10 people, programming in pairs. Reserve a place by sending me an email. Because space is limited, please promise to come to the workshop if you write to reserve a space.

It’s a Good Word. Maine.

Just back from several travels, I’ve found that there’s a video record online of me, Patsy Baudoin, and John Bell presenting 10 PRINT at the University of Maine way back in April of this year. In our presentation, we answer questions and discuss the origin of the 10 PRINT project and the nature of our collaboration. And I do some livecoding. Pretty often, actually.

Please note that 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 is available as a beautiful MIT Press book, designed by our co-author Casey Reas, ans also as a free PDF.

Here’s the video of our University of Maine presentation on the “10 PRINT” program and book.

A Commodore 64 at Airport Security

Boston: No reaction.

Seattle: “No, for real?” “Yes, for real.” “That was my first computer!” “How old is that thing?” “It’s from 1982.” “Hey, that used to be state of the art! But now -” [TSA agent takes phone out of pocket, points to it.] “This has got more processing power!”

Los Angeles: “Sir, please come with me.” [TSA agent swabs power supply for explosives.] “Can you tell me what this is for?” “It’s a computer.” [Older TSA agent arrives.] “Hey! A Commodore 64! That’s a classic!”

10 PRINT Reading / Release Party

10 PRINT cover

Our first event for 10 PRINT is scheduled for:

Monday
November 12, 2012
7pm

at the

Harvard Book Store
1256 Massachusetts Ave.
Cambridge, MA.

This means, of course, that the book will be printed and available for sale by then, which is less than a month from now.

The Harvard Book Store is an independent book store in Harvard Square, founded in 1932.

Of the ten authors of 10 PRINT, we’re planning to have at least me (Nick Montfort), Patsy Baudoin, and Noah Vawter there for some reading from the book, comments on the titular program and the writing of the book, and discussion. The reading is free and takes place at the bookstore itself, as the page on the event explains.

One-Line C64 BASIC Music

Local sound artist/electronic musician Keith Fullerton Whitman released an extraordinary piece on the b-side of his November 2009 cassette hallicrafters, inc. The piece is called 10 poke 54272+int(rnd(1) *25),int(rnd(1) *256) : goto 10 and is 18 minutes of sound produced by a Commodore 64 emulator running the BASIC program that is the title of the piece.

The memory locations beginning at 54272 are mapped on the Commodore 64 to the registers of the SID (Sound Interface Device). By POKEing random values into them, the SID, although it is a musical chip, is stimulated to produce sounds in what probably seems like a non-musical way: based on the effect of register settings and the sequence produced by the system’s random number generator, a polynomial counter.

I’m listening to the piece running on a hardware C64 now, which is soothing, although it seems like it shouldn’t be. Looking at the code, I note that the program

10 poke 54272+rnd(1) *25,rnd(1) *256 : goto 10

will put the same values into the same memory locations (and therefore SID registers) in the same order. The INT function is unnecessary because all arithmetic in C64 BASIC is done in floating point and then cast to integer whenever necessary. It’s possible that removing these functions will cause the piece to speed up, however, and I suspect it will, even though a BASIC interpreter could skip the unnecessary INT calls to begin with. There would be various ways of determining this, but the one I’d like to try involves getting two C64s, each with one version of the program, and seeing if they go out of phase.

By the way, I say that these two programs will put the same values in the same order because RND(1) returns a deterministic sequence. Any time either of these programs is invoked before other calls to RND are made, they will produce the same sequence. Using RND(0) would seed the random number generator on the jiffy clock, so would do different things depending upon how long the computer had been on before startup.

Thanks to sound artist and digital media scholar Kevin Driscoll, a.k.a. Lone Wolf, for letting me know about this.

Update: Hilariously, I overlooked that Whitman is not the author of this program – he credits Noah Vawter, a.k.a. Shifty, who is currently collaborating with me on a project about a one-line Commodore 64 BASIC program. I guess I was too distracted by that picture of an iPhone running a C64 emulator.