# Overview. A short introduction to the Processing software and projects from the community.

For the past sixteen years, Processing has promoted software literacy, particularly within the visual arts, and visual literacy within technology. Initially created to serve as a software sketchbook and to teach programming fundamentals within a visual context, Processing has also evolved into a development tool for professionals. The Processing software is free and open source, and runs on the Mac, Windows, and GNU/Linux platforms. Processing continues to be an alternative to proprietary software tools with restrictive and expensive licenses, making it accessible to schools and individual students. Its open source status encourages the community participation and collaboration that is vital to Processing’s growth. Contributors share programs, contribute code, and build libraries, tools, and modes to extend the possibilities of the software. The Processing community has written more than a hundred libraries to facilitate computer vision, data visualization, music composition, networking, 3D file exporting, and programming electronics. #### Education From the beginning, Processing was designed as a first programming language. It was inspired by earlier languages like BASIC and Logo, as well as our experiences as students and teaching visual arts foundation curricula. The same elements taught in a beginning high school or university computer science class are taught through Processing, but with a different emphasis. Processing is geared toward creating visual, interactive media, so the first programs start with drawing. Students new to programming find it incredibly satisfying to make something appear on their screen within moments of using the software. This motivating curriculum has proved successful for leading design, art, and architecture students into programming and for engaging the wider student body in general computer science classes. Processing is used in classrooms worldwide, often in art schools and visual arts programs in universities, but it's also found frequently in high schools, computer science programs, and humanities curricula. Museums such as the Exploratorium in San Francisco use Processing to develop their exhibitions. In a National Science Foundation-sponsored survey, students in a college-level introductory computing course taught with Processing at Bryn Mawr College said they would be twice as likely to take another computer science class as the students in a class with a more traditional curriculum. The innovations in teaching through Processing have been adapted for the Khan Academy computer science tutorials, offered online for free. The tutorials begin with drawing, using most of the Processing functions for drawing. The Processing approach has also been applied to electronics through the Arduino and Wiring projects. Arduino uses a syntax inspired by that used with Processing, and continues to use a modified version of the Processing programming environment to make it easier for students to learn how to program robots and countless other electronics projects. #### Culture The Processing software is used by thousands of visual designers, artists, and architects to create their works. Projects created with Processing have been featured at the Museum of Modern Art in New York, the Victoria and Albert Museum in London, the Centre Georges Pompidou in Paris, and many other prominent venues. Processing is used to create projected stage designs for dance and music performances; to generate images for music videos and film; to export images for posters, magazines, and books; and to create interactive installations in galleries, in museums, and on the street. Some prominent projects include the House of Cards video for Radiohead, the MIT Media Lab’s generative logo, and the Chronograph projected software mural for the Frank Gehry-designed New World Center in Miami. But the most important thing about Processing and culture is not high-profile results – it's how the software has engaged a new generation of visual artists to consider programming as an essential part of their creative practice. #### Research Software prototyping and data visualization are two of the most important areas for Processing developers. Research labs inside technology companies like Google and Intel have used Processing for prototyping new interfaces and services. Companies including General Electric, Nokia, and Yahoo! have used Processing to visualize their internal data. For example, the New York Times Company R&D Lab used Processing to visualize the way their news stories travel through social media. The NSF and NOAA supported research exploring phytoplankton and zooplankton diversity that was realized at the University of Washington as a dynamic ecology simulation. Researchers at the Texas Advanced Computer Center at UT Austin have used Processing to display large data visualizations across a grid of screens in the service of humanities research. #### Foundation The primary charge of the Foundation is to develop and distribute the Processing software. This includes the original Processing (Java), p5.js (Javascript), and Processing.py (Python). There is more information about the Foundation at https://processingfoundation.org/. #### History Processing was started by Ben Fry and Casey Reas in the spring of 2001, while both were graduate students at the MIT Media Lab within John Maeda's Aesthetics and Computation research group. Development continued in their free time while Casey pursued his art and teaching career and Ben pursued a Ph.D. and founded Fathom Information Design. Many of the ideas in Processing go back to Muriel Cooper's Visual Language Workshop, and it grew directly out of Maeda's Design By Numbers project, developed at the Media Lab and released in 1999. The Wiring and Arduino projects, in turn, grew out of Processing while Casey was teaching at the Interaction Design Institute Ivrea in Italy. For more information, please write to foundation@processing.org #### Thank you. YourKit supports Processing by donating its full-featured Java Profiler. YourKit, LLC is the creator of tools for profiling Java and .NET applications: YourKit Java Profiler, YourKit .NET Profiler.