What Is "Open Source" and Why Is It Important For Cryptocurrency and Open Blockchain Projects - Coin Center
What Is "Open Source" and Why Is It Important For Cryptocurrency and Open Blockchain Projects - Coin Center
To better understand the power and nature of open source, it is helpful to rst
understand a bit about one particularly successful piece of open source
software: Linux, the open source operating system.
Why is this interesting? It’s interesting because Linux is not the product of one
or even a handful of programmers, and (unlike Apple’s MacOS or Microsoft’s
Windows) it’s not been developed by one or even a handful of corporations.
Instead, Linux has thousands of individual co-authors. As the Linux Foundation
(a nonpro t association dedicated to promoting the open development of the
operating system) reported in 2015, “some 14,000 individual developers from
About Us Our Work
over 1,300 different companies have contributed to the kernel.” In that year
alone, 2,355 developers made their rst ever contributions to the Linux source
code. So, by extrapolation, we can guess that by this year (2017) around 18,000
people have contributed to the code, and counting!
As Eric Raymond, author of The Cathedral and the Bazaar wrote in 1996, “Who
would have thought even ve years ago (1991) that a world-class operating
system could coalesce as if by magic out of part-time hacking by several
thousand developers scattered all over the planet, connected only by the
tenuous strands of the Internet?”
Raymond identi ed several advantages to the open source model. Key for our
purposes are the following:
“When you lose interest in a program, your last duty to it is to hand it off
to a competent successor.” People come and go within an open source
project depending on their interests and expertise. No one gets stuck
working on projects they no longer care about and fresh minds appear to
About Us Our Work
offer different perspectives on longstanding problems or new avenues for
development.
“Treating your users as co-developers is your least-hassle route to rapid
code improvement and effective debugging.” Many of the people who use
the open source code will also be able to identify and ag issues, and may
even be able to offer solutions. The line between a consumer and a producer
of open source software blurs because production happens transparently in
full view of the public and participation in production is available to all.
The result of open source software development is highly resilient code made
by its users to serve its users. The goal isn’t to produce something that enriches
a company that makes and sells the product, but—rather—to produce
something that solves a problem common enough that a large community of
talented programmers is happy to dedicate their efforts to the task. The non-
programming public bene ts immensely from this model. Free software
effectively materializes out of thin air, anyone is free to use it, and it remains
updated as long as an expert class of users (even including corporations)
remains interested in using the software as well.
The Bitcoin Core reference client is the product of over 15,000 unique code
contributions from over 450 unaf liated individual developers. The software is
available for free use and modi cation under the permissive MIT copyright
license, and the full history of that development is visible within aaa public
public
public
software
software
software repository
repository
repository hosted
hosted
hosted by
by
by Github
Github,
Github a cloud-services provider that allows
anyone to sign-up for an account, upload new code, and track changes. If the
code repository you create is open to the public for viewing, comment, and
suggested modi cation, then you don’t even need to pay for a Github account.
The public repository also keeps track of so-called “forks” of the code in the
reference client. A “fork” creates a clone of the original software that can then
be modi ed for some speci c purpose without altering the original repository.
Developers freely fork the Bitcoin Core Github repository to either (a) build
purpose-speci c bitcoin-compatible applications (e.g. a wallet app for
smartphones) or (b) build a new cryptocurrency that ceases to be compatible
with the bitcoin network and thereby creates a new cryptocurrency network
About Us Our Work
(e.g. Litecoin or Zcash). To date the Bitcoin Core reference client has been
forked over 10,000 times, and the new repositories for those forks show the
ongoing open development state of those derivative projects.
But technologies like Bitcoin can create the same functional result with an
open and unowned network, rather than a corporation, at the center. Users join
these networks and open source software aligns their incentives toward
cooperation and, ultimately, agreement over every scrap of data needed to
make a currency. That decentralization is built on two things open consensus
mechanisms (which we’ll leave for a later backgrounder) and open source
software. If the code wasn’t open source, how would participants (complete
strangers on the internet) ever be able to understand and trust the system they
are joining? Indeed, token projects based on proprietary code may simply be
centralized service-providers hiding behind jargon
jargon
jargon and
and
and blockchain
blockchain
blockchain nonsense
nonsense.
nonsense
For genuine projects in this space, however, the code that builds the
decentralized network, that allows participants to trust each other, aligns their
incentives, and punishes fraud is itself decentralized. It’s developed in the open,
free for the world to use and modify, wholly independent from one or even a
handful of corporate interests, and by hundreds of passionate users.
Based in Washington, D.C., Coin Center is the leading non-pro t research and
advocacy center focused on the public policy issues facing cryptocurrency and
decentralized computing technologies like Bitcoin and Ethereum. Our mission is to
build a better understanding of these technologies and to promote a regulatory
About Us Our Work
climate that preserves the freedom to innovate using permissionless blockchain
technologies.