MAIP for Twitch, an Invitation to Edit


Model Archival Information Package (MAIP) that I composed for Twitch—a series of minimal one button game—is currently hosted on the GitHub repository. I chose GitHub in accordance with the Open Source spirit of Processing, the programming language and its surrounding community that brings digital artworks such as Twitch to life.

It is to be hoped that a MAIP like this would help enrich a collection such as “The Art of Programming” exhibition at the Computer History Museum. Currently, this exhibition in question hosts two programmers: Don Knuth and Jamie Zawinski. While I trust the exhibition to be more populated eventually, when compared to other exhibition such as “Memory and Storage” with 27 contents and granular contextual information, I cannot help but wonder weather the artistic endeavors with computers is prone to be neglected. As the subtitle for “The Art of Programming” exhibition is “A Programming Language for Everyone,” showcasing the evolution of Processing may be a perfect fit. Moreover, Processing may offer the width to the museum’s collection to show how some aspects of computing have little to do with the military and financial interests.

Twitch is an epitome of the Processing evolution. Preservation of Twitch, therefore, allows the game to be a gateway to the history of Processing. Moreover, preservation of Twitch can be a pilot project for the growing numbers of software artwork created with Processing.

Diverse User Base
The latter rationale is especially of import, concerning the immediate stakeholders of Processing. According to Casey Reas, co-creator of Processing and the creator of Twitch, the creative community is the primary audience of Processing. Reas describes the motivation behind the invention as follows:

It’s not very common for artists and designers to be the primary authors of programming environment, but this is changing. I hope Processing has helped to demonstrate that we don’t need to rely only on what software companies market to us and what engineers think we need. As a creative community, we can create our own tools for our specific needs and desires.

As a matter of fact, within seven years since Reas and Ben Fry released Processing under the Open Source policy, the developing community has developed 70+ libraries. Processing users’ fields include: 12K and higher education, music industry, journal publishing, design and art industries. As a result, the language initially developed to teach computational graphic design literacy can now process audio, electronics, and animation.

History of Programming in the Field of Art & Design
Concerning the former, Twitch embodies the principles and the evolution of ideas that originate from the Massachusetts Institute of Technology (MIT). As the founder of the MIT’s Visual Language Workshop (later known as the Media Lab) Muriel Cooper wrote in a letter in 1980, the principle of Processing, too, revolves around how “the content, quality and technology of communication” informing “each other in education, professional and research programs.” John Maeda, who was allured by the vision of Cooper and pursued an Art degree after his MIT engineering training, later came back to work at the Media Lab and with graduate students including Casey Reas and Ben Fry. In his “When a Good Idea Works” published in the MIT Technology Review in 2009, Maeda connects the dots of how Reas and Fry’s Processing has come to be:

The starting point for their project was something that I can take credit for: the Design by Numbers (DBN) framework for teaching programming to artists and designers. I originally wrote DBN in the 1990s, but I couldn’t get it to yield production-quality work. My graduate student Tom White made it into something that was much more functional. And then Fry and Reas took a crack at it. DBN limited users to drawing in a 100-by-100-pixel space, and only in grayscale-faithful to my Bauhaus-style approach to computational expression. But Fry and Reas figured that people needed color. They needed canvases larger than 100 by 100. They realized that this wasn’t in line with my interests, so they went off and made their own system that gave users no restrictions at all.


In once sense, Processing arose as a response to practical problems. When Java fist came out, it offered minimal support for sophisticated graphics processing. Drawing a line and stuff like that was possible, of course. But it couldn’t do transparency or 3-D, and you were almost guaranteed to see something different on a Windows computer and a Mac; it was incredibly cumbersome to do anything that was both sophisticated and cross-platform. So Fry, who grew up hacking low-level graphics code as a kind of hobby, built from scratch a rendering engine that could make a graphically rendered scene appear the same in a Windows or a Mac environment. It was not just any renderer—it borrowed the best elements of Postscript, OpenGL, and ideas cultivated at the MIT Media lab in the late Muriel Cooper’s Visible Language Workshop.

What started at the MIT did not stop there. It is fair to say that the Open Source spirit of Processing helped to gain popularity among the developing community. Such support proves to be crucial for Processing as the programming environment continues to change. John Resig, the initial author of jQuery, for instance, developed Processing.js to enable better implementation of visualization and animation of Processing. Writing in JavaScript, Processing.js converts Processing codes written in Java, and uses HTML5’s <canvas> element to render images. As an antidote to the now-close-to-obsolete-Java ailments, this adaptation strategy was evolutionary, and Resig’s work was highly praised among the developer community. As one comment on reddit has it: “This is ridiculously well done. The simplicity of some of the example is fairly stunning.”

Twitch is currently showcased as one of 1174 Google Chrome experiments, that utilizes the functionality of modern web browsers. But Twitch is much more than a series of minimal one button game we can play, and its rich historical context needs to be documented.

As such, I propose to preserve the ecosystem of Twitch in order to document how an Open Source project thrives. As such, my MAIP is composed of following digital assets, in an alphabetical order: codes, demo, hosting, and people.


  1. codes: This holder contains a instruction for reverse-engineering Twitch with its source codes. There is also a credits document which details the licensing and the due acknowledgement of each source code file.
  2. demo: This holder provides a document with a link to the YouTube video, demonstrating how Twitch works. I also have the screen recording file on my local drive, but this was too big to be uploaded to GitHub repository.
  3. hosting: This holder has a document with a hosting instruction for reverse-engineering Twitch.
  4. people: This holder contains five documents describing the figures who have played direct roles concerning Twitch’s fruition. Namely, again, in an alphabetical order: Ben Fry, Casey Reas, John Maeda, John Resig, and Muriel Cooper.

* Here is the zip file of what is hosted on the GitHub repository: MAIP-Twitch. Editorial suggestions would be most welcomed at my GitHub repository.

Leave a Reply

Your email address will not be published. Required fields are marked *