Generated by GPT-5-mini| Processing (programming environment) | |
|---|---|
| Name | Processing |
| Designer | Casey Reas, Ben Fry |
| Developer | Processing Foundation |
| Released | 2001 |
| Latest release | (varies) |
| Typing | Dynamic |
| Platform | Cross-platform |
| License | GNU GPL, GPL-compatible |
Processing (programming environment) Processing is an open-source visual arts programming environment created to simplify coding for artists, designers, and educators while bridging computational practice with creative production. It was initiated to lower barriers between Massachusetts Institute of Technology teaching practices, AIGA design communities, SIGGRAPH interactive art exhibitions, and maker cultures associated with Maker Faire and Adafruit Industries.
Processing originated in 2001 through a collaboration between Casey Reas and Ben Fry who taught at Massachusetts Institute of Technology and engaged with communities at Istanbul Biennial, Ars Electronica, Eyebeam and Zentrum für Kunst und Medien. Early releases responded to pedagogical models from W3C discussions, influences from Smalltalk environments such as Squeak, and the graphical traditions of Adobe Systems products like Adobe Illustrator and Photoshop. The project attracted attention at conferences including Eyeo Festival, Siggraph, ISEA International, and Transmediale, and later formalized governance through the Processing Foundation alongside initiatives at Rhizome and collaborations with Google Summer of Code contributors. Legal and licensing choices navigated precedents set by GNU Project, Free Software Foundation, and debates similar to those around Java (programming language) and OpenJDK.
Processing's language design emphasizes simplicity, borrowing syntax and libraries from Java (programming language), runtime characteristics from Java Virtual Machine, and pedagogical clarity reminiscent of Logo (programming language). The core API provides functions for drawing, color, typography and image handling influenced by standards like ISO 32000 and media work in QuickTime and OpenGL. Language features reflect dynamic patterns comparable to Python (programming language), while toolchain and compilation decisions align with ecosystems such as Eclipse and NetBeans. The environment supports data interchange formats developed by groups like W3C and multimedia protocols used by Open Sound Control and MIDI (protocol).
The Processing Development Environment (PDE) offers a simplified editor, integrated compiler and runtime modeled after educational IDEs like BlueJ and DrRacket, and distribution workflows akin to GitHub repositories and Apache Maven artifacts. Extensions and tools integrate with external systems such as Arduino, Raspberry Pi, and Android (operating system), enabling deployment workflows familiar to contributors at Google I/O and exhibitors at SXSW Interactive. Debugging and profiling practices draw upon utilities from VisualVM and JConsole, while build and packaging pipelines have been adapted to continuous integration services inspired by Travis CI and Jenkins.
A rich ecosystem of libraries for Processing mirrors patterns in communities surrounding OpenFrameworks, Cinder (framework), p5.js, and Three.js. Libraries provide capabilities in computer vision using algorithms from OpenCV, audio processing informed by PortAudio and SuperCollider, machine learning connectors to TensorFlow and Weka (machine learning), and networking stacks compatible with WebSocket and HTTP/1.1. Graphics and shader support interoperate with GLSL and Vulkan (graphics API) thinking, while data handling connects to formats championed by CSV (file format), JSON, and databases popularized by SQLite and MongoDB integrations.
Processing is used in academic courses at institutions like Massachusetts Institute of Technology, Stanford University, Rhode Island School of Design, and Royal College of Art for teaching visual programming concepts alongside curricula from K–12 outreach and initiatives such as Code.org. Practitioners employ it in generative art projects showcased at Tate Modern, MoMA, Centre Pompidou, and festivals including Burning Man and Venice Biennale. It supports rapid prototyping for installations by studios associated with Zaha Hadid Architects, teamLab, and commercial design firms collaborating with clients like Nike and Apple Inc..
The Processing community spans contributors from academic labs such as MIT Media Lab, maker spaces like Noisebridge, and cultural institutions including New Museum and FACT (centre), coordinated through mailing lists, forums, and code repositories on GitHub. The Processing Foundation stewards outreach, funding and events in partnership with programs like Creative Commons and Mozilla Foundation while catalyzing education through workshops at Eyebeam and festivals such as Eyeo Festival. Complementary projects such as p5.js, Processing.py, and integrations with Arduino continue to expand interoperability across platforms and institutions.
Category:Programming environments