Hi I’m Quinton Ashley, creator of p5play v3 and the new q5.js WebGPU renderer.
When I was in high school, back in 2014, I loved programming with Processing 3 in Java.
Processing is a graphics library that provides users with functions like line, rect, ellipse, image, translate, and rotate. The brilliant, minimalistic API design makes it easy to get stuff moving on screen.
These simple building blocks can also be combined to create incredible art!
There’s a sense of discovery with making generative art; you try some new parameters and think “Wow no one's ever seen this before!”. Sometimes it feels like you’re glimpsing at the source of creation itself, witnessing order being constructed amidst chaos. It makes you go “Ooooo!”.
As a kid, I’d always been interested in computer programming because I wanted to know how video games worked. Yet, when I looked at code, it was like trying to read hieroglyphics.
But right there on processing.org it said:
“There are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing…”
It’s like it was saying:
“There’s people just like you that do this, and you can do it too! 💙”
After my first week using Processing, I made a little single player Pong game. I was so happy!
Learning creative code is so empowering. I thought that everyone should have the opportunity to try it.
This was during the peak of the #LearnToCode era, but I had no illusions that coding skills would provide everyone a high paying job. In fact, big tech funded the creation of free computer science curriculum like Code.org, so there’d be more programmers, so they could pay programmers less. That’s basic economics.
But learning to code is still empowering because it frees you from being a slave to your device. You can become its master! You can instruct it on how to make art or uncover beauty in unexpected results.
In my previous article, I explained how The Processing Foundation has strayed too far from its original goal of providing a platform for beginners to learn how to code. The p5.js reference pages are poorly written, which makes using the software less approachable, despite its basis in great API design.
q5’s documentation takes a “show don’t tell” approach, offering concise descriptions and examples. It groups related functions into scrollable sections, viewable on a single page.
Also while the Friendly Error System (FES) was a game changer for CS education back in the day, now it’s simply not as helpful as LLM AIs at explaining common rookie mistakes. It’s become a mere speed limiter on what students can do once they’ve already learned the basics.
With q5.js, my goal is to get back to what made Java Processing so great, but with the online share-ability and ease of programming in JavaScript. I’ve taken advantage of the latest JS features to optimize q5 for interactive art. q5.js WebGPU even outperforms Java Processing!
The best part is that q5.js and its documentation is 100% free and ready for classroom use in 2025. 🤝
Check it out!
My Beef with The Processing Foundation
Why do I want to continue the legacy of Processing, without The Processing Foundation (TPF)?
The fact that Ben Fry, Casey Reas, Dan Shiffman, and a small team of volunteers made open source software for developers that was more enjoyable to use than what bajillion dollar companies like Amazon or Apple could produce, will always be so impressive and inspiring.
Yet, TPF has failed the community in recent years. You don’t have to take my word for it either.
Last year Ben Fry, co-author of Processing, left the Foundation!
“I have made the extremely difficult decision to resign from the Processing Foundation. I am absolutely heartbroken, and have not slept well for months.”
“From the outset, the project was always a 50-50 split between internal (software development) and external (the community, the documentation, examples, etc). The Foundation has lost all sense of balance.”
“I was shocked to learn that the Foundation spent nearly $800,000 last year. $0 of that went to Processing 4.”
“The Processing software and its community deserve better, and need a better home than the “Processing” Foundation.”
This led commenters to wonder, what did the Foundation spent $800,000 on in 2023? What features did it ship to justify that spending?
Though the 2023 TPF annual budget report portended that a lot of work was being done by staff, and though on paper it all seems impressive, where are the results?
I’ve already covered the p5js.org website update, which was disappointing.
p5.js itself received just 7 updates from 2022-2023. That’s an average gap of 3.4 months between releases. And these releases were still primarily carried by volunteer contributions, almost nothing from TPF staff. It took 5 months (an entire semester) for a simple fix I made to be included in a release. The only work p5.js Project Lead Qian Qian Ye seems to do on each release is announce them. Compare that to Ben Fry’s record and you’ll see the difference between a boss and a leader.
“It's a depressing outcome following the $10 million windfall of donations. It's just co-opting the work that I've done for 22 years”
“The situation is especially difficult for me because it has been created by the people who most benefited from all that work I did, and from people I trusted as friends.”
Now I may not know all the details, but it seems absolutely despicable that Ben was driven away from the foundation he started. Shame on them! Though Saber Khan has since resigned as TPF Interim Director, he should’ve resigned in disgrace as soon as the news became public.
The choice to not invest in further development of Processing is understandable though, since Java has been largely replaced by JavaScript, Python, and C# in intro level programming courses. But why wasn’t at least some of the $10 million used to fairly compensate Ben for his past work? How do they sleep at night after stealing his own project from him?
What a gross injustice. Yet, Fry turned the other cheek and walked away from the whole situation. It seems he was too hurt by the betrayal to even fight back. He wrote these tweets and that’s been it. Perhaps the least we can do now is respect his desire to move on. He’s done enough for this community, now it’s up to a new generation to pick up the pieces. Instead of merely complaining, I channelled my energy into a solution: developing q5.js.
q5 isn’t meant to replace p5.js entirely. I have great respect for the work of volunteer contributors to p5’s WebGL mode, namely Dave Pragurek. Yet, I do hope q5 will replace p5 in intro level computer science courses.
My aim with q5 is to make the best version of Processing for interactive art and offer the best documentation for beginners. But I need your help!
Let’s build a new community for creative coding together, the kind that Ben Fry deserved. 🤝