HOWTO: Create an Architecture of Participation for your Open Source project
We’re currently working with Greenpeace International’s Planet 4 team helping them ensure their project is ready for contribution from members of the Open Source community. In this post we explain what that means in practice, using the approach of creating an Architecture of Participation.
🌍 What is Planet 4?
Built on top of WordPress tech, Planet 4 powers Greenpeace institutional websites around the world to engage with millions and win campaigns around the world.
The genius of Planet 4 is that it means that the local organisations that make up Greenpeace’s global network don’t have to each create their own digital platform. It also provides them with tools and approaches to enable them to spend their time addressing the climate emergency rather than fiddling with technology.
The Planet 4 project has been running for four years, and has been open source from the start. Most of the design and development up to this point has been in-house.
🤔 What is an Architecture of Participation?
The term ‘architecture of participation’ comes from a 2004 article by Tim O’Reilly in which he stated:
I’ve come to use the term “the architecture of participation” to describe the nature of systems that are designed for user contribution. Larry Lessig’s book, Code and Other Laws of Cyberspace, which he characterizes as an extended meditation on Mitch Kapor’s maxim, “architecture is politics”, made the case that we need to pay attention to the architecture of systems if we want to understand their effects.
Organisations (or networks of Organisations) such as Greenpeace, Mozilla, and others with a global mission rely on volunteers and systems to achieve their goals. Ensuring a strong architecture of participation is therefore crucial to achieve this.

We Are Open Co-op member Doug Belshaw has written a guide to building an architecture of participation which includes the following steps:
- A clear mission — why does this project exist? what is it setting out to achieve?
- An invitation to participate — do you have an unambiguous call to action?
- Easy onboarding — are there small, simple tasks/activities that new volunteers can begin with?
- A modular approach — do volunteers have to commit to helping with everything, or is there a way which they can use their knowledge, skills, and interests to contribute to part of the project?
- Strong leadership — do the people in control of the project embody the mission? do they have the respect of volunteers? have they got the capacity to make the project a success?
- Ways of working openly and transparently — does the project have secret areas, or is everything out in the open?
- Backchannels and watercoolers — are there ‘social’ spaces for members of the project to interact over and above those focused on project aims?
- Celebration of milestones — does the project recognise the efforts and input of volunteers?
The good news is that the Planet 4 team is already doing a pretty good job on most of these fronts. In fact, We Are Open Co-op member Laura Hilliger accepted the 2020 Digital Leader of the Year award in part because of the great job she’d done in leading this project during her time working directly with Greenpeace.
🙋♀️ Know your audience
Treating any group as homogeneous is never a good idea, and this also applies to the Open Source community. Based on our prior experience we had a pretty good idea of the kind of people who were likely to volunteer their time to work on Planet 4 — and what was likely to motivate them.
However, it’s always worth testing your assumptions, so we did some research and then ran a survey as part of our post on 10 reasons why people contribute to Open Source.

As you can see from the above chart the main reason our respondents gave for getting involved in Open Source projects was to contribute to something in line with their values.

When we asked what might encourage contribution, the results were interesting, and chime with what we know from research presented in books such as Dan Pink’s Drive: The Surprising Truth About What Motivates Us. People respond to recognition of their efforts, particularly if other people are made aware of that recognition.
The top choices our respondents made about how to encourage their contribution were:
- Listing as a contributor on a project page
- Shout-out on social media (e.g. by a significant individual/organisation)
- Digital credential (e.g. certificate or badge which you can share to evidence your contribution) / Swag (e.g. t-shirts, bags, pins)
This has informed our approach and recommendations to the Planet 4 team, especially when it comes to the visibility and recognition of contributors.
🏡 Where’s home?
Every Open Source project should have a canonical link, one that is shared by default. For Planet 4, it’s the Handbook at https://planet4.greenpeace.org.

There is a wealth of information in the Handbook, and the team have done a good job around documentation. In addition, there is the Planet 4 blog on Medium which is a regularly-updated overview of what the team has been working on.
The core of any Open Source software project, however, is code. Like it or not, the default place that many developers go to find out new and interesting projects to work on is GitHub. So we helped the Planet 4 team come to a decision that, while the Handbook should remain the canonical link, some work was required on the main Planet 4 GitHub repository.
We looked at successful, inclusive Open Source projects such as p5.js, the Fedora project, and NextCloud, discovering some ways in which we could make the main GitHub repository for Planet 4 more inviting.

As you can see from the screenshot above, this new, overhauled main GitHub repository for the Planet 4 project makes it immediately obvious who the contributors to this project are. The text explaining the project is inclusive, inviting, and welcoming. There is a code of conduct. It’s clear where to go to find out more about the project.
🖊️ Connecting the dots
Next, we started to think about the workflow for different types of contribution, based on existing personas. For example, the flow chart below shows how a visitor to a Planet 4 website could spot a bug, or suggest a new feature. They click through to the Planet 4 GitHub repository and create an issue which they then continue to comment on until the problem is resolved or the new feature is implemented.

The problem is that there exists no link between the default Planet 4 website footer and the GitHub repository, meaning that the potential contributor wouldn’t know where to go to file their issue.
Connecting the dots is an important part of any Open Source project that wants to encourage contribution outside of the core team. In this case, adding a link is a simple fix that can empower visitors to Planet 4-powered sites into becoming contributors.
📗 Signposting for orientation
The Planet 4 Handbook was created to help Greenpeace’s National and Regional Offices (NROs) set up, customise, and add content to their own Planet 4 site. To ensure that the project is ready for contribution from the Open Source community, therefore, it’s necessary to make some tweaks.
The landing page of any documentation site is extremely important. New visitors need to be able to ‘see themselves’ in the project and feel welcome. For good reason, the Planet 4 team had written and organised the Handbook for their main target audience up to this point: Greenpeace practitioners working in the NROs around the network.

While this isn’t the final version, the above mock-up presents a clearer idea for those new to the project how to get the information they need — whether they’re Greenpeace staff members or Open Source contributors.
People tend to bookmark or go straight to the information they require, so returning visitors to the Handbook can go directly to a particular page via the left-hand navigation. New visitors, on the other hand, are welcomed and their engagement with the Planet 4 Handbook is scaffolded.
🛑 Stopping to take stock
Returning to that original eight-point list about building an effective culture of participation, we’ve covered off many of the items. We have communicated a clear mission, and given an invitation to participate. We’ve shown the project has strong leadership and is committed to ways of working openly and transparently.
So what’s left? Pending is easy onboarding, as well as a modular approach, which usually go hand-in-hand. In addition, while there are backchannels and watercoolers, it’s not entirely clear where these are for Open Source contributors, and whether they’re primarily for Greenpeace staff.
Finally, the Planet 4 team does a good job with the celebration of milestones internally, but what should this look like for Open Source contributors?
👕️ Recognising contribution
The work we’ve been doing more recently with the Planet 4 team has been around the four points listed above as pending. They fall loosely under the banner of ‘recognising contribution’ and we think we’ve found a way of tying them together using a combination of GitHub Sponsors, digital credentials (e.g. Open Badges), and… swag!
Note: this is very much still a work-in-progress, and included here to round out ways in which all of the considerations can be addressed when constructing an architecture of participation.

In this model, money from sponsors would be held by Open Collective (as fiscal host) and then fund swag for contributors based on their efforts. In order for this not to be an overhead, the process should be as transparent possible, minimising the time spent on admin.
This could be based in the first instance on a much-simplified version of the Fedora Project’s badges. The tangible recognition could be based on three tiers to keep things simple:
- Tier A — Welcome to the community! Recognition at this level would be primarily focused on digital credentials to do with membership and stickers to go on laptops.
- Tier B — Thanks for your contributions! Recognition at this level would be diversified based on activity. For example, developers might be given different t-shirts, digital credentials, and stickers to designers.
- Tier C — Recognising our leaders! This level would be rare and be about deputising members of the community to represent the project, both in terms of moderation and participation at events. Rare swag should ensue.
Contributors would see their face (or whatever image they choose to represent themselves) on the main GitHub repository for Planet 4, and receive a shout-out on social media, a digital credential, and swag.
The final piece of the jigsaw, then, is to ensure that contributors have something to work on. The Planet 4 team currently use Jira as an issue tracker, and intend to make contributor-friendly issues available via GitHub. These will be tagged as to whether they are, for example, design, development, or documentation tasks. Where and how Open Source contributors can hang out is outlined in this post on the Planet 4 blog.
🌻 Going further
Creating an Architecture of Participation involves going on a journey, one that requires getting to a baseline but then keeping going. It’s worth bearing in mind the eight points that we’ve used to structure our work with Greenpeace, as it helps ensure that you’ve got the basics.
As your Open Source project grows, there will be times when you need to spend more time and effort responding to different wants and needs. It’s not enough, for example, just to create a Code of Conduct and expect that to be sufficient. As your project evolve, so will the contribution and community around it, and you must respond to that.
Finally, it’s worth noting that the temptation when anything ‘goes wrong’ within a community is to become more authoritarian and hierarchical. It’s a very natural knee-jerk reaction to problems surfacing within a community. This is a reason for anticipating such difficulties and having open, democratic, accountable measures for resolving them. What that looks like and how to do it, however, is perhaps best left to a separate blog post.
🚢 Get Involved with Greenpeace
We see contributing to this Greenpeace open source project as a way to use tech, design and collaboration skills to help Greenpeace respond to the climate emergency. Check out the Planet 4 Github repo, choose an issue and get involved! There’s plenty to do, no matter what your experience or skill level.

We Are Open Co-op works to spread the culture, processes, and benefits of openness wherever we can. Get in touch to discover how we can help you and your organisation!