Developer Relations

How Blockchain Can Complement Open Source

2019-10-27
Developer Relations
en

Learn how blockchain can become a decentralized open source subsidy model.

“The Cathedral and the Bazaar” is a classic open source story written by Eric Steven Raymond (ESR) 20 years ago. In this story, ESR describes a new revolutionary software development model where complex software projects are built without (or with very little) centralized management. This new model is open source.

ESR’s story compares two models:

  • The classic model (represented by the “cathedral”), where software is produced by a small group in a closed and controlled environment through slow and steady releases.
  • And the new model (represented by the “bazaar”), where software is made in an open environment where individuals can freely participate, yet still produce a stable and coherent system. Some reasons for open source’s success can be traced back to the founding principles ESR described. Release early, release often, and accept the fact that many heads are inevitably better than one, letting open source projects tap into the global talent pool (few companies can match this using closed-source models).

Twenty years after ESR’s reflective analysis of the hacker community, we see open source become the dominant model. It’s no longer just to satisfy developers’ personal preferences, but where innovation happens. Even the world’s largest software companies are shifting to this model to continue dominating.

Barter System

If we carefully study how the open source model works in practice, we realize it’s a closed system, open only to open source developers and technicians. The only way to influence project direction is to join the open source community, understand written and unwritten rules, learn how to contribute, coding standards, etc., and do it yourself.

This is how the bazaar works, and where this barter system analogy comes from. A barter system is a method of exchanging services and goods for other services and goods. In the market (where software is built), this means to get something, you must also be a producer and give back something—that is, by exchanging your time and knowledge to complete tasks. The bazaar is where open source developers interact with other open source developers and generate open source software in an open source way.

The barter system was a big step forward, evolving from a self-sufficient state where everyone had to be outstanding in all trades. The bazaar (open source model) using a barter system allows people with common interests and different skills to gather, collaborate, and create things individuals couldn’t create on their own. The barter system is simple, not as complex as modern monetary systems, but has some limitations, such as:

  • Lack of divisibility: Without a common medium of exchange, you can’t exchange larger indivisible goods/value for smaller goods/value. For example, if you want to make even small changes in an open source project, sometimes you may still need to go through a high barrier to entry.
  • Store of value: If a project is important to your company, you may need to invest heavily/commit. But since it’s a barter system between open source developers, the only way to have a strong voice is to hire many open source contributors, which isn’t always feasible.
  • Transfer of value: If you invested in a project (trained employees, hired open source developers) and want to shift focus to another project, it’s impossible to quickly transfer the expertise, reputation, and influence you had in the previous project.
  • Time decoupling: The barter system doesn’t provide good mechanisms for deferred or advance commitments. In the open source world, this means users can’t express commitment or interest in projects in a measurable way in advance or during future periods. Below, we’ll explore how to solve these limitations using the bazaar’s back door.

Monetary System

People connect to the bazaar for different reasons: some learn there, some to satisfy developers’ personal preferences, some work for large software factories. Because the only way to have a voice in the bazaar is to become part of the open source community and join this barter system, to gain credibility in the open source world, many large software companies hire these developers and pay them in currency. This represents being able to use the monetary system to influence the bazaar—open source is no longer just to satisfy developers’ personal preferences, it also occupies an important part of global overall software production, and many people want to exert influence.

Open source sets guiding principles for developer interaction and builds consistent systems in a distributed way. It determines how projects are governed, how software is built, and how its results are distributed to users. It’s an open consensus model where decentralized entities jointly build high-quality software. But the open source model doesn’t include how to subsidize open source, whether directly or indirectly, through sponsorship of intrinsic or extrinsic motivation, which is irrelevant to the bazaar.

Monetary System

Currently, there’s no equivalent decentralized open source development model for subsidy purposes. Most open source subsidies are centralized, usually one company dominates a project by hiring the project’s main open source developers. Honestly, this is currently the best situation because it guarantees developers will be paid long-term and the project will continue to thrive.

There are exceptions to the project monopoly scenario: for example, some Cloud Native Computing Foundation (CNCF) projects are developed by large numbers of competing companies. Additionally, the Apache Software Foundation (ASF) aims to prevent projects they manage from being dominated by a single vendor by encouraging different contributors, but in reality, most popular projects are still single-vendor projects.

What we’re missing is an open, decentralized model, just like a bazaar without centralized coordination and ownership, where consumers (open source users) and producers (open source developers) interact driven by market forces and open source values. To complement open source, such a model must also be open and decentralized, which is why I think blockchain technology is most suitable.

Most existing blockchain (and non-blockchain) platforms aimed at subsidizing open source development mainly target bug bounties, small and fragmented tasks. A few also focus on funding new open source projects. But not many platforms aim to provide mechanisms to sustain ongoing development of open source projects—basically, a system that can mimic the behavior of open source service provider companies or open core, SaaS product companies based on open source: ensuring developers can get continuous and predictable incentives, and guiding project development according to incentivizers’ (i.e., users) priorities. This model would solve the limitations of the barter system listed above:

  • Allow divisibility: If you want some small fixes, you can pay a small amount rather than the full cost of the project’s open source developers.
  • Store of value: You can invest heavily in a project and ensure its continued development and your voice.
  • Transfer of value: At any time, you can stop investing in a project and transfer funds to other projects.
  • Time decoupling: Allow regular periodic payments and subscriptions.

There are other benefits purely because this blockchain-based system is transparent and decentralized: quantifying a project’s value/utility based on user commitment, open roadmap commitments, decentralized decision-making, etc.

Summary

On one hand, we see big companies hiring open source developers and acquiring open source startups and even foundational platforms (like Microsoft acquiring GitHub). Many (even most) open source projects that can successfully run long-term are concentrated around single vendors. The importance of open source and its centralization is a fact.

On the other hand, the challenges of sustaining open source software are becoming increasingly apparent, and many are delving deeper into this field and its fundamental problems. Some projects have high visibility and many contributors, but many other equally important projects lack enough contributors and maintainers.

There are many efforts trying to solve open source challenges through blockchain. These projects should improve transparency, decentralization, and subsidies, and establish direct connections between open source users and developers. This field is still young, but progressing fast. Over time, the bazaar will have a cryptocurrency system.

With enough time and enough technology, decentralization happens at many levels:

  • The internet is a decentralized medium that unleashed the potential for global sharing and access to knowledge.
  • Open source is a decentralized collaboration model that unleashed the potential for global innovation.
  • Similarly, blockchain can complement open source, becoming a decentralized open source subsidy model.

Reposted from: Developer Relations »


Similar Posts

Content icon
Content