Google Summer of Code Wrap up: Processing

Friday, February 6, 2015

Today’s Google Summer of Code (GSoC) wrap up comes from Daniel Shiffman at the Processing Foundation, the organization responsible for the Processing programming language used in many visual arts applications.

Processing is a programming language and development environment specifically tailored to the needs of visual thinkers and artists. Tens of thousands of people use Processing (often called “p5” for short) for design, performance, animation, cinema, and more. It’s also used in several computer science curriculums for its appeal to visually-oriented learners.

We participated in Google Summer of Code (GSoC) for the fourth time in 2014. The students working with us completed eleven projects, many of which are in active use by the Processing community while others will be part of the upcoming Processing 3.0 release. We’ll highlight just a few of these projects below, but we’re grateful to all the students who took part in GSoC with us.

PDE X for Processing 3.0 (Manindra Moharana)

PDE X is a Processing mode that introduces advanced IDE features like code completion, refactoring, live error checking, debugger and more. Manindra helped bring PDE X to a stable state, allowing it to become the default editor in Processing 3.0. Over 30 bugs were fixed as part of this effort. Manindra also added a few new features, including precise error highlighting using the Wagner-Fischer algorithm, manual control over code completion using Ctrl+Space, and a tab outline popup window.

p5.sound addon for p5.js (Jason Sigal)

Jason created the p5.sound addon for the p5.js library to bring the Processing approach to Web Audio. Its functionality includes audio input, playback, manipulation, effects, recording, analysis, and synthesis. Jason also wrote methods for file input / output and ported Processing's Table / TableRow classes to p5.js.

Contributions Manager for the PDE (Joel Moniz)

The Contributions Manager lets users easily install, remove, and update community-developed extensions from within the PDE (Processing Development Environment). Joel’s work this summer introduced new features to the Contributions Manager, such as the addition, removal and update of Tools and Modes without a restart, a new "examples-package"-type contribution, and highlighting contributions.

Sound for Processing 3.0 (Wilm Thoben)

Wilm began work on a lightweight sound library for Processing in late 2013 and improved on it during GSoC 2014 by adding new features, fixing bugs, and introducing cross-platform support. Sound is built on top of methcla, a C++ sound engine with native bindings for low latency support. Sound provides a collection of sound-synthesis objects, analyzers and effects.

by Daniel Shiffman, Processing Foundation