On Leading Open Source Projects

OpenBazaar is now almost eight months old. We’ve grown from myself to over 58 contributors over the life of the project, with a community response that has been overwhelming at times.

One of the largest challenges of a project like this is building and maintaining a great team. Take an open source project, intentionally make it unfunded with no profit model, and now you have a much more difficult challenge. For the last eight months we have had little to no worries in this department as our core team has slowly grown. Unfortunately, that could not last forever. Since our team is contributing in their spare hours and have families, jobs, and other obligations, several particpants have had to reduce their contributions to the project.

We recently announced an approach to move to a team-based development structure where individuals would be responsible for different aspects of the project. This was in response to the team growing quickly and myself and the core devs feeling like this would be a better way to manage everything going on. I wondered if this might be a little premature to do so, but it felt right considering the team we had put together. Now we have recently lost a few team members due to several factors and who will now be serving in a diminished capacity as they tend to their other responsibilities. This change means we need to refocus our efforts and be realistic about how the project will progress.

To be clear, while the number of contributors has decreased, we still have a good team and we’re confident that we can deliver a full release in a reasonable amount of time. I’m making this post because we decided early on that the OpenBazaar project would be as transparent and honest with the community as possible, so when we have new developments we put that information out as soon as possible.

I am currently working with the core devs to distill down our future plans into critical areas that need to get done. We will be simplifying and stepping back to ensure we tackle only the most necessary pieces of our software. The first priority is the p2p network. Our second priority is the trading protocol. Finally we will continue to improve the user interface and push towards the vision of a standalone app that works across all platforms.

ben stiller animated GIF
This train keeps rolling.

As we rolled out our current solution we have run into several issues around our infrastructure that’s in place. One critical decision we made was that in order to support Tor we stuck with TCP-based connections between peers using ZeroMQ. We have tried many different approaches, but it seems like using ZeroMQ in this p2p capacity may be a tough road ahead. We are currently investigating several other approaches including moving to UDP-based networking and leveraging proven libraries like libtorrent who have solved many of the connectivity problems we are experiencing, while still allowing use of Tor. This should be exciting and we hope this work will bear fruit soon. If you have any p2p networking experience and would like to help us tackle this problem please reach out. We’d love to have your help.

Our next big focus area will be on the trading protocol, which we will be calling the OpenBazaar Marketplace Protocol (OBMP). There are many details of how this will work and what will be included, but we believe that by clearly defining the protocol and what is expected between nodes to communicate and peers to trade we will improve the stability and security of the network as a whole. More details to be released soon on this.

Finally we will continue to improve the user interface and push towards the vision of a standalone app that works across all platforms.

We showed off earlier this year a new interface we intended to have ready for the fourth beta release. We are still working towards it, but our lead designer is one of the members who has had to step back from the project for a while. We are regrouping and putting together a group of designers that will pick up the torch where it was left off and help us reach the original vision, but it will be delayed from the original timeline. Design by committee is not always the best solution, but placing eggs all in one basket and losing the basket can also be pretty devastating to progress and we will all have to be patient as we move forward.

As always we plan to be completely transparent and while it is disappointing to experience set backs like these we are happy to see our project alumni go on to work diligently at prominent companies, or continue their education. One of the best things about a project like this is to experience many different contributor viewpoints and to learn as we go on. This is something I am personally getting used to and hopefully you all continue to support our vision and are excited to see us keep moving towards a fully working OpenBazaar!