Given enough eyeballs, all bugs are shallow
The above line constitutes Linus’s Law, first defined in 1997 by Eric S. Raymond, and it accurately summarizes a fundamental truth behind open source development. The more people who can inspect and review a piece of software, the more likely it is that any flaws or bugs will be quickly identified and resolved.
Today, we understand open-source development as a set of guiding principles in which the source code of a piece of software is made available to the public, allowing anyone to view, change, and distribute it.
In addition to the benefits stemming from Linus’s Law, open-source technology allows for near-absolute informational symmetry between different parties. The code is public, so every actor can participate in the progress of technology on the same terms, without the ability to leverage inaccessible information over others.
Lastly, every dissatisfied participant can take what’s in the open and work on it irrespective of other developers. To illustrate further, the rules for the game of chess have been generally accessible for ages. If one doesn’t like how the game is played at a particular table, they don’t need to flip it. Instead, they may go and modify the generally-accepted ruleset to accommodate how they want to play the game. And who knows, maybe they’re determined enough so that their version eventually becomes the most popular one, as has been the case throughout chess history.
This analogy also rings familiar with blockchain technology. Now, every person capable of reading smart contracts or protocol client code can act as an auditor, providing value to the ecosystem (Linus’s Law), build on top of established technology, modify, and commercialize it, as well as fork or gather consensus around protocol-level changes to a decentralized network, e.g., coming up with a better ruleset for chess.
Blockchains are distributed, open protocols with no single point of control. This requires new systems of decision-making and coordination, necessitating new tooling for open-source development and decentralized project management.
The disintermediation of trusted third parties, inherent to all blockchains, places more responsibility in the hands of users. Meaning, they must now act as contributors and caretakers rather than observers of development and governance.
The ability of a community to fork an open-source network, impossible in all types of “black box” systems, becomes a reality in transparent, decentralized technology, thus further empowering any and all participants.
For Polygon protocols, we distinguish two main components necessary for long-term maintenance, development, and governance: the PIP framework and a decentralized community to sustain it.
The inspiration to use a proposal-based system to develop ideas originally stems from the Request for Comments (RFC) framework. Developed by Steve Crocker in 1969, RFCs were later used by the Internet Engineering Task Force (IETF) to standardize protocols and technologies for the early Internet. Nowadays, we see adoption expand to the open-source community as a way to develop and standardize protocols and technologies, with notable iterations being Python Enhancement Proposals (PEPs), Bitcoin Improvement Proposals (BIPs), and Ethereum Improvement Proposals (EIPs).
In order to facilitate open-source maintenance and development of the Polygon PoS chain, the Polygon Improvement Proposal (PIP) framework was developed. Due to the Polygon community’s close alignment with that of Ethereum, the framework takes a lot of inspiration from EIPs.
At its core, the PIP framework is currently defined by two main documents:
PIP-1 acts as the axis mundi around which all other elements of the PIP framework orbit. It provides a structure for PIPs in all tracks, describing general content requirements, as well as outlining the progression flow each PIP may take before it is implemented.
PIP-8 is an advisory implementation framework. It details all of the different moving parts of the Polygon PoS architecture and how an upgrade to each of those parts may be facilitated by the PIP framework.
The PIP framework provides an efficient way for coordination and consensus to emerge naturally around upgrades.
- A pre-PIP research post was submitted to the forum, requesting an initial round of feedback.
- Once the proposal specification was refined, PIP-5 and PIP-6 were drafted, inviting review from the general community and core developers in particular.
- Synchronous discussions were held with the community on the Polygon Protocol Governance Call (PPGC).
- In parallel with the peer review process, the PIP authors gathered consensus within the core development, validator, infra provider, and user communities.
- Once the proposals were ready and the implementation tested extensively, implementation via rough consensus soon followed. Practically speaking, this involved validating nodes, users (full nodes), infrastructure providers (RPCs) and other relevant stakeholders (e.g., exchanges) implementing the change by updating their software clients.
All of the above have led to an incredibly efficient upgrade, with 94/100 validators upgrading their setups prior to the scheduled hardfork block, resulting in ~98% of validating stake being in favor of the change ahead of time, on top of widespread consensus across other ecosystem stakeholders.
The Polygon network ecosystem currently consists of several solutions in varying stages of maturity. For context, Supernets and the recently-launched zkEVM are good examples of protocols in earlier phases of development. It’s important to note that the protocol governance pillar will eventually need to be built out for those protocols as well. The PoS chain has been the main focus of the PIP framework so far due to its maturity, but we can consequently imagine a future in which the development of all Polygon infrastructure is governed using analogous mechanisms.
We also seek to explore collaborations with other L2 projects as it relates to development standards and ZK-related research. We are committed to practical, deliberate cooperation with others for the net benefit of both the L2 and ZK ecosystems, which may mean forming new ways to communicate and alliances for shared research. It can also mean active participation by Polygon ecosystem researchers in already-existing channels.
Importantly, protocol governance mechanisms shouldn’t be built in a bubble, and the Polygon community’s alignment with the Ethereum community’s values is best shown through collaboration with others in the ecosystem.
It is clear that the wider Polygon community should be the driving force behind protocol maintenance and development.
The PIP framework allows a clear and transparent way to propose and implement changes to the PoS chain. What is needed to drive this process, allowing the PIP framework to reach its full potential, is a vibrant decentralized community represented by a diverse range of network participants.
Since its launch in 2020, the PoS chain has seen its daily active user base rise to ~380,000, matching that of Ethereum. However, whereas Ethereum boasts a healthy community of core developers, the Polygon community is lagging behind in the proportion of its participants actively engaged in the development and governance of the PoS chain.
The following initiatives currently help foster the decentralized community:
- The Polygon Community Forum provides an open space for network participants to discuss ideas, propose and develop solutions, and deliberate on issues.
- A dedicated Discord PIP channel allows for async discussion of governance issues.
- Polygon Protocol Governance Calls are a space to discuss highly-technical developments of the Polygon PoS chain, held every 4 weeks.
- The PIP Bounty Program allows for quarterly retrospective public goods funding of high-impact PIPs.
While the above programs are live and work to strengthen the decentralized community, we strongly invite feedback and proposals allowing for further improvement. Some of the fields to be explored include:
- Education - governance participation is a complex topic and can be addressed with different means, e.g., further blog posts and more educational content on the Polygon Community Forum and PIP Github repository.
- Social recognition - we hope to see ecosystem-wide recognition of active and highly-reputable Polygon core developers and PIP authors, similarly to the Ethereum ecosystem.
- Public goods funding - sustainable funding mechanisms for core developers and PIP Editors can be explored.
- Governance hackathons - events centered around PIPs and core infrastructure development with monetary prizes could potentially enable previously-unseen engagement.
In closing, we’d like to thank everyone who’s already provided feedback and participated in the discussions surrounding our first post in the series. As contributors to the Polygon ecosystem, we’re looking forward to hearing more feedback, reading new proposals (both PIPs and non-formal), and discussing the subjects of this post with other participants of the ecosystem.
We’re currently looking for feedback and proposals in 3 areas: on the PIP framework itself, on decentralized community growth, and new PIPs being brought forward.
- What can be improved in the current iteration of the PIP framework, especially process PIPs, i.e., PIP-1 and PIP-8?
- What kind of opportunities do you see for ecosystem-wide collaboration with regards to zk and L2 development?
- We identified four areas for potential improvement: education, social recognition, public goods funding, and governance hackathons. Do you agree with these categories? Furthermore, how can we start practically addressing these areas?
- What other initiatives would you like to see that allow a decentralized governance community to flourish? Is there inspiration within other ecosystems that we can draw from?
In addition to the feedback requested above, core developers and community members have identified several areas of development that can potentially allow for concentrated efforts in PoS chain governance:
- Increasing Throughput: PIPs to increase gas limit without any major changes to block time or increasing infrastructure requirements.
- Faster Finality: PIPs allowing faster finality for an improved UX of DApps built on Polygon PoS.
- State Management: Due to widespread adoption of Polygon PoS, we are seeing an ever increasing number of users and transactions, which in turn leads to rapid increase in state size. PIPs that aim to improve state management are welcome.
Having now formulated our thoughts, we again invite everyone to participate in the discussion. Thank you in advance!