The Interledger Community 🌱

Cassie Tarakajian for p5.js Editor

Posted on

p5.js Editor— Grant Report #1

Project Update

I’ve worn a lot of hats in my time working on the p5.js Editor—engineering, mentorship, project management, design, webmaster, educator, to list a few. Focusing on the business side, and making a plan for monetization is brand new to me. It’s also new to everyone at Processing Foundation, as the foundation is currently supported by grants and donations. All of the software that Processing Foundation supports is free/libre open source as well as free of cost, and this is the first foray into charging money for software.

This is all to say, progress has been hard! One of the biggest and hardest first steps was pinning down a funding model, especially one that integrates with web monetization technology. And especially a pricing model that upholds the p5.js core value of access, defined as accessibility and inclusion. I was able to create a pricing structure that allows users to pay using Stripe or Coil, as paying for software directly through the p5.js Editor is far simpler than using Coil. This also opens the possibility of getting rid of Coil integration if it doesn’t work for us, or switching to it entirely if the technology is more accessible. I spent a lot of time working on a planning document, which I’m sure will evolve.

Progress on objectives

Before the start of the grant, I had researched pricing models for similar software such as CodePen and Glitch. The impetus for introducing a paid tier was from our history working with schools, who often use our software. Schools are not able to simply donate to Processing Foundation in exchange for using our software, they must prove they need to pay for software in order to use it. At first, I really struggled to see how schools could justify signing up for Coil to use the p5.js Editor, especially given the burden of needing to install a browser plugin to use it. I was ready to say web monetization wasn’t mature enough to work with the p5.js value of access, and then I realized this project could use both Coil and Stripe. I wrote up a business proposal with phases and scope of work for each phase.

In order to add monetization, a lot of foundational work needs to be done. This has been the focus on my work so far, which has been creating a Privacy Policy and Terms of Use, infrastructural software changes, and learning about how to use web monetization.

One challenge we've encountered in getting this project started is connecting our bank account to Uphold Wallet. Uphold Wallet uses Plaid to connect to banks, and the bank we use (CitiBusiness) is listed as an option to connect with. However, we have been unable to successfully complete the connection despite multiple attempts. We've tried to troubleshoot on our own, like making sure our Uphold Wallet business name is the same as what's on our bank account, and calling our bank for assistance, but so far have not been able to connect. The issue connecting our bank has stalled progress on the project.

Key activities

Communications and marketing

None yet! The first phase of communication will happen when Coil has been integrated with the p5.js Editor and released.

What’s next?

  • Continuing infrastructure changes (XSS prevention, which unfortunately radically changes the foundation of the application)
  • Publishing and integrating the Privacy Policy and Terms of Service
  • Integrating Coil
  • Public communication about integrating Coil

What community support would benefit your project?

We’re slowly but surely making progress right now. Honestly, it would be nice to know if anyone else is having issues using Uphold with a business account.

Top comments (2)

flaki profile image

Hey Cassie! We did manage to get a business account for at Uphold, albeit it took a couple weeks of signing stuff and waiting for things to happen. What issues are you running into? Feel free to DM me.

t_pizza profile image
t pizza

Hey thanks Flaki! I'm working with Cassie on this (and just saw your post), so I'm going to message you! :D