Since the time we envisioned Pyrsia, we aimed to make it a community project. It was setup in such a way that it is open source, open governance and open process from the start. With our clear intention to engage the community we started working on it since we began in October 2021. Here is a recollection of what we did in the year or more since and where we are at the moment.
Like any new idea it made great sense to us but there were questions and challenges being raised everytime we talked about. Stephen Chin and I were determined to answer or atleast every single one of the raised eyebrows.
Our first challenge was building a compelling case for the project and finding the correct forum in the open source world to do that. After some research we found a good avenue that would be willing to listen to us. We built a cracking presentation(or so we thought) that would describe the concepts within Pyrsia and answer most of the early questions. The overall response was heartwarming and welcoming after we finished with the presentation and we received a number of comments about taking such an audacious challenge. It was audacious for a few reasons:
- It would be the first infrastructure that would be totally decentralized(or what the cool kids call Web3)
- It would be the first such infrastructure that would build the code from source for different language ecosystem
- It would be one of the first implementations that would blockchain for capturing how software is delivered into production
Once we got over the initial hump of communicating with people at the conference we came back with a few parties interested in kicking it off and we got started.
Right away, we were faced with two challenges:
- Working with the linux foundation open source communities to get accepted as part of them
- Working with Rust and Web3 technologies
I will cover the efforts we undertook for making this a community project in this blog and cover our Rust and technology challenges in a follow up post.
Engaging with Open source communities was something that I had not experienced before and it was little different that working internally within your organization. The meetings were very regular and had room for open discussions - many of the meetings encouraged people to propose topics beforehand which was refreshing.
Working through many of the communities I learnt to be always prepared with a slide deck that is longer than I would have time to present. Having this helped me to answer questions that either had come up before or I had answers but were not included in the main flow of the presentation. I felt I got better prepared as I started to attend more of these meetings and the familiarity with the meeting etiquettes helped me engage better.
As part of a follow up to our presentation we wrote up a comprehensive proposal to address details and answer questions. We produced a detailed blog on how Pyrsia uses the blockchain.
Following up on our actions we were also building the Pyrsia software to be able to demonstrate its power to the community. After numerous presentations, question and answer sessions with different communities we found a lot of our ideas resonated with the CD Foundation. We proposed our project at the TOC meeting at the CD Foundation and after a vote we were accepted as a new incubating project with the CD Foundation.
After a few formalities, we were part of the CD Foundation.
Engaging the Community
The project gained some extra momemtum after we were part of the CD Foundation. We had concrete goals and had an upcoming CD Summit to showcase our work. This excited the team and we were ready to polish our latest version and show it off at the CD Summit in Detroit. At this conference we presented a fully working version of the Web3 Pyrsia network which included the peer-to-peer(p2p) backend which supported and ran the network. The blockchain provided the provenance log as an immutable ledger to provide transparency and trust.
The momentum due to this was such that the team looked forward to releasing regularly and frequently. We started off by producing an iteratively better release every month. The releases included new features, stable infrastructure and progressively better documentation.
The Community engagement also brought us new contributors and enthusiasts engaging with the project. Since the CD Summit we have release 5 versions and also scaled the network.
As part of being a community project we made sure we took extra care to implement processes and policies.
We have all the codebase as public repositories in github - since that is what people use the most and has a good open source offering. All our documentation is part of our main codebase. The documentation is made available on the project website so that the users can look it up easily. All our PRs are open to comments and approval by anyone from the community. Our core team members get assigned as reviewers so that we can make sure the quality stays consistent and the PRs are reviewed regularly.
You will also find details in our blog - about how we are progressively releasing and what we are releasing as well. You will also find posts about something new that we built/leveraged.
Hopefully as part of the community you are able to contribute to Pyrsia!