Community Product Development: Can We Bridge the Funding and Adoption Gap For FOSS Tools?

Within the internet freedom community we often struggle with funding support for free-open source tools. Teams are often small, overworked, and under funded. When funding options do present themselves, there are more issues: sometimes they need to have a legal entity, there is accounting and keeping track of deliverables. Often to secure funding, something new may need to be created, or focus may need to be placed on a certain development project. This can lead to issues where an already small team ends up in a crushing place that includes new tasks, creating more maintenance, and trying to keep pace with existing roadmaps, bugs, incidents, and trying to answer new users questions.

During the past four years I have received support in a few different forms. This included having a UX assessment done of the website and console, new user review of downloading the software, a person to help create a new site wireframe and do interviews with digital security trainers, and to work with me to address capacity issues and solutions.

All of this work from funding supported adoption. I was able to have people focus with me on first impressions and improving information architecture and documentation. I was able to get I2P in front of new people with different perspectives and feedback. It was all wonderful. And all mine to deploy.

At the end of May I presented a workshop with one of our partners who worked on UX assessments in the past. In the workshop we asked designers who have worked with open source software projects to provide what was an ideal workflow and what was a real workflow for product development in their FOSS experiences. Let’s get started!

There is a need for a more cohesive environment to be created as part of the work to develop and deploy usable technology in our spaces. In regards to complementary projects like Tor and I2P, we can see how resource sharing and documentation could provide places for people to go to access information in their development, design and workflow processes. These are things that would benefit from funding that would and could redefine sustainability in the context of volunteer and community work and creation. Here we can see foundational context that is either hard to find or does not exist.

Network and outreach capacity is a very important thing to note. Until I was able to secure funding, it was surprisingly hard to find inroads to people and information that I really needed to support my work as an outreach person for the project. It can be difficult to make connections, for all sorts of reasons.

Lacking a business model is a bit of a paradox! One one hand, we are creating something free to use. On the other hand, when we do not consider some sort of structure and scope, does that hurt adoption?

Lost time is a tough one. Is it because of lack of structure? Lack of available resources ( docs, people, skills, etc.?).

There are inputs from people outside of the development team and for application developers. However, developers often do not have designers or much user research as part of the process. They need to go forward with an idea in the way that they can get it done. And in the cases where there is feedback, it is only one part of the process. User feedback and wireframes are wonderful, but who can then work with the developer to implement those changes? Projects with limited resources need to prioritize. Often design work is a luxury. When a project has design resources it has to rebalance its manpower and workload in order to implement changes. This can make something take longer to accomplish, and add more heft to an already difficult role of a maintainer and developer.

Creating the communication around these new work cycles, and setting expectations is important. Also allowing room for the design process needs to happen in a sustainable way that respects the work and limits on both sides. An example is working on legacy codebases and the technical issues that can create an inability to bring a wireframe to life. So often times, in trying to make changes we can uncover a structural issue that needs to have us all stop and evaluate the work we wanted to do and find a new solution to go forward. In the case of small teams, that solution may conflict with perfect case scenarios for designers.

Potential Community Solutions

What we may not be able to find solutions for with funding, we may be able to with creating shared resources.

We need deeper consideration about feedback loops, and how roadmaps that do not include continuous user testing and real-workd mapping can lead to frustrations over lack of adoption.

By establishing a community of people who can test and support design and usability of applications, can we create a community product development workflow? What would it be? What sort of resources should users have access too so that they can inform product creation and implementation? What about accessibility and usability standards?

I look forward to finding a way forward.