Pion is a nonprofit project

The reasons and benefits of keeping Pion nonprofit.

Sean DuBois -- 2021-12-27

Pion saw its first commit Wed Mar 7 2018. I didn’t have grand aspirations for the project. It felt important at the time to make WebRTC more accessible. Proprietary alternatives were being proposed and they didn’t have technical advantages, they were just easier to use. I enjoyed solving issues one at a time and helping users use Pion.

Interest in WebRTC then exploded in 2020. Lots of new demand for WebRTC software popped up over night. New developers started learning it, companies were founded around it and lots of VC money started entering the space.

I was approached by a few VCs who asked if I had any plans to do something commercial with Pion. It sounded exciting and I would have been fun to work on it full-time. In the end I decided that it may benefit me personally, but would be a net negative. These are the reasons I decided against it.

I have seen many for profit projects not have these issues. I just don’t believe I have the skills/enviroment/team to make it work.

Reduce opportunities for individuals

Working on Open Source early in my career had a huge impact on me, and I hope that working on Pion can do the same for others. A few milestones that mean a lot to me.

  • First job in video because of a project they built with Pion.
  • First speaking opportunity talking about a Pion contribution.
  • Company that uses Pion hiring multiple contributors and offering much better salaries.
  • A contributor that is an expert in RTC returning to the field through Pion
  • Companies created by first time founders using Pion

If Pion was for profit I don’t think I could create an environment where this would all be happening. I can focus on giving individuals the best outcome and not worry about a business.

Harder to be a community

For me Pion isn’t just software, but a community to build things with others who are passionate. I love seeing all the projects that people share in Slack. I remember lots of late night debugging sessions and difficult bugs overcome. I remember the excitement when WebRTC for the Curious first started.

I don’t think those relationships would have been made if Pion was a for profit project. I would have to prioritize issues effecting the business. I want to create an environment where developers can pour their passion into problems that interest them.

Competition with contributors and users

I enjoy having an open discourse with the companies and projects that use Pion. I love learning about what people are building and learning from them. I am filled with so much joy seeing all the different use cases.

  • Robotics - Makes it possible to build robots that make hospitals safer.
  • Cloud Ready WebRTC - Making it so any company to build and scale WebRTC
  • Low/No-Code WebRTC - Empowering the next generation of builders so they don’t need to learn the details.
  • Application Streaming - Users who can’t afford the latest hardware can still access everything.
  • Collaborative Gaming - Multiplayer NES in the browser, don’t let distance stop you from spending time together.
  • P2P CDN - Reduce network strain by sharing what you have already downloaded. Bringing P2P to everyone!
  • Digital Signal Processing - Real time translations. Allow users to communicate with no shared language.
  • Computer Vision - Process gestures and expressions. Make video conferencing feel more natural.

All these projects have caused Pion to grow in different ways. They all have different needs and pushed Pion in lots of good ways. If I started building competing software I would lose out on learning all these stories. Also lots of great Open Source projects Using Pion that I have learned from.

Less diverse contributions

If I worked on Pion full-time more issues would be addressed by me directly. I am not sure this would be better for the project long term. Pion’s growth and quality is because we have so many contributors who bring a wide variety of opinions and experiences.

Things like WASM Support, ORTC and Interceptors came from designs by other developers. If I had done everything myself I don’t believe it would be nearly as good.

Divide between employees/community

All community members are equal in the Pion ecosystem. Each developer only needs one approval to merge their PR. I don’t ever want there to be a split. Employees of ‘Pion Inc’ would be viewed differently and would have access to resources others wouldn’t have.

It is important to me that Pion is welcoming and inclusive to all.