Вы находитесь на странице: 1из 8

About Us Our Work

What is “open source” and why


is it important for
cryptocurrency and open
blockchain projects?
Open source software development is essential to building trust and
safety into blockchain networks. Here's why it matters from a policy
perspective.

BY PETER VAN VALKENBURGH / October 17, 2017

The computer code undergirding each major cryptocurrency and open


blockchain project is developed as open source software. Regulators and
policymakers looking into cryptocurrencies but unfamiliar with open source
software may have an incorrect mental model: one wherein software-based
systems are (and must be) developed by one or a handful of for-pro t
companies. While plenty of important software projects are developed in this
way (e.g. Microsoft’s Windows or Oracle’s RDBMS), open source projects are
different and that difference can and should help shape public policy.
Open source software is collaboratively produced, shared freely, published
About Us Our Work
transparently, and developed to be a community good rather than the property
or business of a single company or person. When a project is developed open
source there isn’t a single chokepoint in the development process, no company
or individual that makes, owns, and sells the software. Just as there is no single
company that powers the Bitcoin network, neither is there one company that
makes the software that, when run on internet connected computers, creates
that network. This decentralization in technology production has several
profound bene ts and can be dif cult to grasp for those not familiar with
software development.

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.

Open Source is Everywhere


You use Linux more times during the day than can easily be counted. Linux is
the operating system that undergirds the substantial majority of servers on the
internet. Whenever you visit Facebook, Google, Pinterest, Wikipedia or
thousands of other major websites, the services the site provides for you
(whether it's social networking, search results, photographs, or encyclopedic
articles) are coming from a computer, and that computer is probably running
an operating system called Linux. Linux isn’t only at the other end of your web
sur ng either; it’s probably at your ngertips. If you use an Android phone, the
phone’s operating system is based on Linux. If you use a Chromebook, you are
using a Linux-powered laptop. Moreover, Linux is increasingly the operating
system that’s baked into televisions, thermostats, airline entertainment
systems, cars, and more.

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?”

Open Source Advantages


Raymond’s book describes how open source represents a revolutionary mode
of technology production. Linux, with thousands of unaf liated developers
working in public collaboration, exempli es the open source model.
Cryptocurrencies follow this model as well, but more on that in a moment.

Raymond identi ed several advantages to the open source model. Key for our
purposes are the following:

“Every good work of software starts by scratching a developer's personal


itch.” The majority of developers in an open source project are motivated
primarily because they want to use the product they are making. They aren’t
under contract to build something for someone else; they have a personal
need and they are addressing it. This leads to greater motivation and it
brings intimate personal knowledge about the problem to bear.
“Good programmers know what to write. Great ones know what to rewrite
(and reuse).” When development happens in the open, redundancy can be
avoided, and troublesome, complicated, or redundant code can be identi ed
and simpli ed.

“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.

“Given a large enough beta-tester and co-developer base, almost every


problem will be characterized quickly and the x obvious to someone.” This
has come to be known as Linus’s Law after Linus Torvalds, the original
creator and longtime principal developer of Linux. When development is not
open, all developers may share a certain blind spot or fail to notice a certain
error. Wider development amongst sophisticated users with idiosyncratic
perspectives increases the likelihood that bugs are discovered and
addressed, thus making open source software more resilient and secure.

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.

Law and Open Source


Legal arrangements support and, in some cases, encourage open source
development. Open source software, like all software, is copyrighted, but its
authors release the code under a permissive license that allows anyone to use
and modify it without seeking speci c permission or making any payment to
the original creators (e.g. the MIT license). Some licenses even place a simple
About Us Our Work
condition on future uses and modi cations, requiring, for example, that new
derivative works be in turn released, themselves, under the same non-
proprietary licenses, thus growing and spreading the open source code base.
This is known as a viral or copyleft software license (e.g. the LGPL-3).

Open Source in Cryptocurrencies and Token


Projects
Linux is probably the largest and most important example of the open source
model, but several others exist. Among them are all of the major
cryptocurrencies and open blockchain projects. All of these projects create
computer networks that allow connected participants to reach agreement over
shared data (the blockchain of the cryptocurrency). The software that allows
any particular participant to connect to the network is called a client, and that
client software is released and developed open source. Often, these clients are
developed by several unaf liated participants as a plain vanilla version of the
network software (i.e. a reference client) from which speci c mining, wallet,
exchange, or other network-compatible software can be built.

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.

The Ethereum project is currently made up of at least 121 separate software


repositories each focusing on different aspects of the project (e.g. programming
languages for writing smart contracts, end-user graphical browsers for
interacting with the Ethereum network, and compatible clients for
participating in the network). There are no fewer than eight software projects
to develop Ethereum compatible clients and the more popular clients (go-
ethereum and Parity) have hundreds of independent developers contributing to
the code. The Ethereum project’s code (and the complete history of that code)
is, like Bitcoin’s, publicly
publicly
publicly available
available
available within
within
within Github
Github
Github and other online repositories,
and all code is released under the LGPL-3, a viral copyleft license that requires
all future derivative works to be released under the same non-proprietary
licensing.

Even recent projects spearheaded by privately funded start-ups show a deep


commitment to this open-source ethos. The Zcash Company develops the
Zcash protocol openly and permissively through a public repository, several
major contributors are not employed by the company, and a non-pro t public
charity has been created to shepherd a transition from company-focused to
community-focused development over the longer term. The Zcash codebase is
released under the permissive MIT copyright license. Protocol labs, developer
of Filecoin, intends to pursue a similar open model and has previously
exempli ed the open source model of development with its IPFS
IPFS
IPFS project
project,
project
developing that code in public repositories and releasing it under the MIT
license.

Why Open Matters


Cryptocurrencies and open blockchain networks may provide functionality that
would be regulated if it was provided by a single corporation. A centralized
issuer of digital currency like Liberty Reserve or E-gold is a money services
business and must register with FinCEN and be licensed to transmit money in
About Us Our Work
every state. If that issuer decides to market her tokens as an investment then
they may be securities and she may need to register with the SEC. These
regulations make sense because centralized services carry the risk that the
party in the middle will fail to uphold her promises or adequately test and
secure her products.

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.

The cryptocurrency policy brie ng from Coin Center.


Everything you need to know about cryptocurrency and public policy in one entertaining read.
More ▾

Your email address Subscribe

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.

About Us Newsletter Blog Videos Op-Eds Contact Donate


Follow @coincenter 29.6K followers

Explainers Research Reports Regulatory Filings Testimony Powered by Bar e.

Вам также может понравиться