A few months ago, we launched the NEAR Developer Governance to help decentralize the NEAR developer ecosystem. The goal is to encourage broad innovation from the developer community without relying on a single entity. This opens the door for anyone to participate and contribute in any capacity in a transparent and permissionless way, while ensuring quality.
There are many ways to engage with developer governance. Almost any type of developer community activity falls under one of four categories:
For example, Alice starts with an idea and bounces her thoughts in some community channel about it. This group gives her social validation and helps hone her idea, enough for her to start planning implementation. At some point she might choose to validate her plan with subject matter experts, to ensure other products agree to integrate with her tech, to rally more community behind it, to seek funding, or to simply strengthen her pitch. One of the acceleration and funding programs passes by and decides to fund and enable her project based on her strong plan and community support.
This simple story does not describe all the options available to Alice. If she has a solution already fully figured out in her mind, she might choose to implement it without announcing it or seeking validation, or to fundraise entirely on her own. Also, her idea might not have anything to do with writing code. Perhaps she is offering to review or audit someone else’s project, or to organize a technical event, etc. Regardless of what she chooses to do and not do, there are four categories of developer community activity she can choose to engage with.
Developer Governance is both a decentralized social structure and a set of tools. As a social structure it consists of groups and roles with different responsibilities that are aligned with each of the four categories below. And for each of the categories there are tools that a person can use to Ideate, Implement, Review, or Support.
Any improvement to the NEAR ecosystem starts with an idea. We want to provide a place for people to freely express and explore their ideas in a supportive and encouraging environment. It should be done in the most permissionless and low-barrier way. But people cannot be just thrusted into general purpose chats where their ideas are buried in the noise and where it is hard to discover like-minded people. Based on our experience in other Open Source communities, we adopted the concept of a Community Group (CG) – a self-organized circle of people interested in a specific topic. CGs are not controlled by anyone but the people organizing them and anyone can create a CG with the specialization they want.
Ways to participate in ideation:
- Submit your idea on the NEAR Dev Hub
- Join an existing Community Group and discuss ideas
- Start a new Community Group
Coding is the defining feature of the development community, and we don’t want to create any barriers in the way of community members who just want to write some code. We recognize that sometimes coding is done in response to some idea and that people can discover ideas as the result of coding. However, we want the coding to be inclusive and therefore if you want to submit your implementation specification, you first need to describe an idea even if it is vague. In this way, anyone can propose alternative implementations to your idea.
Ways to participate in implementation:
- Explore existing Ideas on the NEAR Dev Hub and submit implementation proposals
- Propose an original idea and submit implementation details on the NEAR Dev Hub
- Comment on the existing submissions and discuss their technical details
While you can discuss your idea or solution with the general community, the social support in itself is frequently insufficient if you need to be integrated across the ecosystem, included into some standards or the protocol, and if you are seeking funding or other support. To validate your idea more officially, you need a recognized group of experts to review and approve it. Following the example of Rust governance, we adopted the concept of a Work Group (WG) – a selected committee of subject matter experts that make official decisions on certain questions. Work Groups follow a rigorous NEP-0001 process which guarantees that proposals are reviewed fairly and timely.
We do not limit reviews to Work Groups only. If you are a valuable and recognized expert (e.g. a security auditor), you might post your review to someone’s submission for free or at a cost. Anyone can submit a review as an attestation to an existing submission, but keep in mind that your reputation is on the line. Consider just leaving a comment, if unsure.
Ways to participate in reviews:
- Request a review to your idea on the NEAR Dev Hub by leaving a comment and tagging it with a corresponding label, e.g. “wg-protocol”
- Become a WG member by actively participating in CG (other WG members will notice and nominate you)
- If you are a recognized expert post or suggest doing attestations on the NEAR Dev Hub
NEAR Dev Hub is a platform that enables organizations seeking to fund and help NEAR ecosystem projects. NEAR Foundation, NDC, and various accelerators have different criteria and motivation to sponsor and support ecosystem projects. However, they don’t have resources to review all applications and oversee proper utilization of funds. While we don’t want our developer community to be centered around funding, we want to make funding as easy as possible.
Sponsors can quickly explore projects matching their criteria by using filtering with labels (coming soon) and checking out the attestations submitted by the experts, e.g. Work Groups. They can also request reviews from WG in the comments of the ideas and submissions. Once they find projects that are matching their criteria, they can negotiate the cost in the comments or delegate it to the Work Group experts. Finally, they can submit a sponsorship with and designate an expert to supervise funds utilization, which might require paying them a fee.
Ways to participate in support:
- Explore submissions on the NEAR Dev Hub to find the ones matching your criteria
- Request necessary attestations from the Work Groups if a submission lacks them
- Submit a sponsorship and designate an expert to supervise funds utilization
In future posts, we will share our progress and insights of even more ways to get involved.