About Techcelerate Ventures
Tech Investment and Growth Advisory for Series A in the UK, operating in £150k to £5m investment market, working with #SaaS #FinTech #HealthTech #MarketPlaces and #PropTech companies.
Roads
and Bridges:
The Unseen Labor Behind
Our Digital Infrastructure
WRIT TEN BY
Nadia Eghbal
Open up your phone.
Your social media,
your news, your
medical records, your
bank: they are all using
free and public code.
2
3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
C O N T E N T S
Preface
Foreword
Executive Summary
Introduction
History and Background of
Digital Infrastructure
How software gets built
How not charging for software
transformed society
A brief history of free and public software
and the people who made it
How The Current System Works
What is digital infrastructure, and how
does it get built?
How are digital infrastructure projects
managed and supported?
Why do people keep contributing to
these projects, when they’re not
getting paid for it?
Challenges Facing Digital Infrastructure
Open source’s complicated
relationship with money
Why digital infrastructure support
problems are accelerating
The hidden costs of ignoring infrastructure
Sustaining Digital Infrastructure
Business models for digital infrastructure
Finding a sponsor or donor for
an infrastructure project
Why is it so hard to fund these projects?
Institutional efforts to support digital infrastructure
Opportunities Ahead
Developing effective support strategies
Priming the landscape
The crossroads we face
Appendix
Glossary
Acknowledgements
Table of Contents
4
5
8
11
18
19
23
29
37
38
46
53
58
59
66
77
89
90
97
106
109
124
125
127
136
139
140
142
Preface
Our modern society—everything
from hospitals to stock markets to
newspapers to social media—runs on
software. But take a closer look, and
you’ll find that the tools we use to build
software are buckling under demand.
5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
F O R E w O R D
Foreword
I stumbled upon the problem described in this report on a hunch.
Having previously worked in startups, and then venture capital, I
saw the enormous amounts of money being poured into software
companies. But as an amateur software developer, I knew that I had
never done any of it alone. I used free and publicly available code
(also known as “open source” code), which I cobbled together and
offered up for personal or commercial purposes. Really, the people
behind those projects, whoever they were, had done most
of the work.
I mulled over this observation for several years, as I watched the
explosion of coding “bootcamps” graduating new software develop-
ers left and right, and as I watched startups raise tens of millions of
dollars selling products which I knew, under the hood, were
probably more public than proprietary code. Having previously
worked in the nonprofit sector, I immediately thought of public
goods and their associated challenges, yet this vocabulary was
strangely absent among my peers in software.
After I left my job in venture capital last year, I set off to explore the
paradox I couldn’t stop thinking about: that there were valuable
software tools that couldn’t be supported by commercial models,
and that they lacked any form of institutional support.
Funnily enough, open source code wasn’t on my original list. I had
mistakenly assumed, as had my peers, that these tools were an
example of a particularly well-supported public good in software.
When I brought up open source to friends and mentors, they gently
dissuaded me from pursuing the topic, encouraging me instead to
6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
F O R E w O R D
find other examples that actually needed the help.
A few open source projects crossed my radar, however, and shat-
tered those assumptions. It turned out that sustainability challeng-
es were well-known among those who contributed to open source.
The more I dug, the more I found blog posts, articles, and frequent
public conversations about the stress and exhaustion felt by those
who maintain open source projects. Everybody knew someone else
I should talk to, and before I knew it, I had collected countless
stories on this topic.
I realized I had walked into a problem with which the producers
(open source contributors) were extremely familiar, but that the
consumers (software companies and other users of open source
code) were seemingly unaware of. That discrepancy made me want
to look more closely.
In addition, it seemed that open source itself was changing, perhaps
even bifurcating. I found myself having completely different conver-
sations with different generations of open source contributors. They
seemed to have divergent philosophies and values; they may as well
not have been using the same terminology. I learned that open
source had seen an explosion of production as well as demand in the
past three to five years, thanks to improvements in developer tools
and workflows. Today’s open source contributor looked very different
from an open source contributor ten years ago, much less thirty years
ago. And yet these different generations weren’t talking to each
other, making productive conversations about sustainability difficult.
7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
F O R E w O R D
“
A chance conversation with Ethan Zuckerman of the MIT
Center for Civic Media gave me an opportunity to share these
findings more widely.
I described to Ethan the problem I was seeing, though I didn’t know
exactly what it all meant or the vocabulary I should be using, and he
kindly put me in touch with Jenny Toomey of the Ford Foundation.
Jenny suggested I aggregate my findings into a report. In the process,
a narrative around our modern digital society, and the hidden infra-
structure that powers it, has emerged.
This report would not have happened without Ethan and Jenny
taking a chance on a half-baked idea that now, through the process
of writing, has been shaped into something more. I am extremely
grateful to both of them for their intuition. I am additionally grateful
to Michael Brennan and Lori McGlinchey for their guidance, perspec-
tive and enthusiasm in the editing process. Finally, and perhaps most
importantly, I am indebted to every person working in open source
who made their stories public for people like me to read, and espe-
cially those who took a moment out of their busy schedules to
humor me with a conversation or an email. This report is a collec-
tion of their wisdom, not mine. I am particularly grateful for early
conversations with Russell Keith-Magee, Eric Holscher, Jan Lehnardt,
Andrey Petrov, and Mikeal Rogers, all of whom continue to inspire
me with their patience and dedication to open source work. Thank
you for your kindness.
8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
E x E C U T I v E S U m m A R y
Executive Summary
Our modern society—everything from hospitals to stock markets
to newspapers to social media—runs on software. But take a closer
look, and you’ll find that the tools we use to build software are
buckling under demand.
Nearly all software today relies on free, public code (called “open
source” code), written and maintained by communities of developers
and other talent. Much like roads or bridges, which anyone can walk
or drive on, open source code can be used by anyone—from compa-
nies to individuals—to build software. This type of code makes up
the digital infrastructure of our society today.
Just like physical infrastructure, digital infrastructure needs
regular upkeep and maintenance. In the United States, over half
of government spending on transportation and water infrastruc-
ture goes just to maintenance.1 But financial support for digital
infrastructure is much harder to come by. Currently, any financial
support usually comes through sponsorships, direct or indirect, from
software companies.
Maintaining open source code used to be more manageable.
Following the personal computer revolution of the early 1980s, most
commercial software was proprietary, not shared. Software tools
were built and used internally by companies, and their products
were licensed to customers. Many companies felt that open source
code was too nascent and unreliable for commercial use. In their
view, software was meant to be charged for, not given away for free.
Today, everybody uses open source code, including Fortune 500
1
https://www.cbo.gov/
publication/49910
9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
E x E C U T I v E S U m m A R y
companies, government, major software companies and startups.
Sharing, rather than building proprietary code, turned out to be
cheaper, easier, and more efficient. This increased demand puts addi-
tional strain on those who maintain this infrastructure, yet because
these communities are not highly visible, the rest of the world has
been slow to notice. Most of us take opening a software application
for granted, the way we take turning on the lights for granted. We
don’t think about the human capital necessary to make that happen.
In the face of unprecedented demand, the costs of not supporting
our digital infrastructure are numerous. On the risk side, there are
security breaches and interruptions in service, due to infrastructure
maintainers not being able to provide adequate support. On the
opportunity side, we need to maintain and improve these software
tools in order to support today’s startup renaissance, which relies
heavily on this infrastructure. Additionally, open source work builds
developers’ portfolios and helps them get hired, but the talent pool
is remarkably less diverse than in tech overall. Expanding the pool
of contributors can positively affect who participates in the tech
industry at large.
No individual company or organization is incentivized to address the
problem alone, because open source code is a public good. In order
to support our digital infrastructure, we must find ways to work
together. Current examples of efforts to support digital infrastruc-
ture include the Linux Foundation’s Core Infrastructure Initiative and
Mozilla’s Open Source Support (MOSS) program, as well as numerous
software companies in various capacities.
Sustaining our digital infrastructure is a new topic for many, and
the challenges are not well understood. In addition, infrastructure
1 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
E x E C U T I v E S U m m A R y
projects are distributed across many people and organizations,
defying common governance models. Many infrastructure projects
have no legal entity at all. Any support strategy needs to accept and
work with the decentralized, community-centric qualities of open
source code. Increasing awareness of the problem, making it easier
for institutions to contribute time and money, expanding the pool of
open source contributors, and developing best practices and policies
across infrastructure projects will all go a long way in building a
healthy and sustainable ecosystem.
1 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
Introduction
In 1998, a group of security experts in the UK got together to build a
free set of encryption tools for the Internet.
Soon everybody was talking about their project, called OpenSSL.
(The developers had used an existing Australian project, called
SSLeay, as their blueprint.) Not only was it comprehensive and
decently reliable, but it was free. Writing cryptography wasn’t easy,
and OpenSSL had solved a major pain point for develop-
ers worldwide.
By 2014, two-thirds of all Web servers were using OpenSSL, enabling
websites to securely pass credit card and other sensitive information
over the Internet.2
Meanwhile, the project continued to be informally managed by a
small handful of volunteers. A security consultant to the U.S.
Department of Defense, Steve Marquess, noticed that one contribu-
tor, Stephen Henson, was working full time on OpenSSL. Curious,
Marquess asked him what he did for income, and was shocked to
learn that Henson made one-fifth of Marquess’s salary.
Marquess had always considered himself to be a strong programmer,
but his skills paled in comparison to Henson’s. Like others, Marquess
had mistakenly assumed that someone as talented as Henson would
have a comfortable salary to match.
Henson had been working on OpenSSL since 1998. Marquess was
newer to the project, joining in the early 2000s, and had worked
with Henson for several years before learning of his income situation.
2
http://news.netcraft.com/
archives/2014/04/08/
half-a-million-widely-trust-
ed-websites-vulnerable-to-
heartbleed-bug.html
1 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
Having worked with the Department of Defense, Marquess saw how
critical OpenSSL was, not just to their software, but to other indus-
tries around the world, from enterprise to aeronautics to health care.
Until that moment, he had “always assumed, (as had the rest of the
world) that the OpenSSL team was large, active, and well resourced.3” In
reality, OpenSSL wasn’t even able to support one person’s work.
Marquess decided he wanted to help. Although he contributed code
occasionally, he realized he could fill a more critical role on the
business side. Marquess started out by arranging small consulting
contracts through an existing nonprofit to help keep OpenSSL alive
in its leanest years.
As the volume of contracts grew, Marquess created the OpenSSL
Software Foundation (OSF) to provide an official vehicle for revenue.
Despite the number of individuals and companies relying on their
software, OSF never received more than $2,000 in donations per
year. Gross revenues (which came from consulting and contract
work) never broke $1M, and much of that went toward security-re-
lated testing (which could cost hundreds of thousands of dollars)
and server costs.
There was enough to pay the salary of one developer, Stephen
Henson. That meant that two-thirds of the Web relied on encryption
software maintained by just one full-time employee.
The OpenSSL team continued to work in relative obscurity until April
2014, when a Google engineer named Neel Mehta stumbled upon a
major flaw in OpenSSL’s software. Two days later, another engineer
at the Finnish company Codenomicon discovered the same problem.
Both of them immediately contacted the OpenSSL team.
3
Email interview with
Steve Marquess
1 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
That bug, nicknamed Heartbleed, had been included in a 2011
update. It had gone unnoticed for years. Heartbleed could allow any
sophisticated hacker to capture secure information being passed to
vulnerable web servers, including passwords, credit card information,
and other sensitive data.
Joseph Steinberg, a cybersecurity columnist for Forbes, wrote that
“some might argue that [Heartbleed] is the worst vulnerability
found...since commercial traffic began to flow on the Internet.” 4
Thanks to wide media reporting, much of the nontechnical world
became familiar with the security bug, at least by name. Major
services like Instagram, Gmail and Netflix were affected by
Heartbleed.5 Reporters also drew attention to OpenSSL itself, and
how its team had struggled for years to support their work. OpenSSL
was a known concern among security experts, but the team did not
have adequate resources or attention to address the issues.
Of Heartbleed, Marquess wrote, “The mystery is not that a few over-
worked volunteers missed this bug; the mystery is why it hasn’t
happened more often.”
People expressed their support by sending donations to the founda-
tion. Although Marquess was grateful for their enthusiasm, the first
round of donations came out to roughly $9,000: not nearly enough
to sustain a team.
4
http://www.forbes.
com/sites/joseph-
steinberg/2014/04/10/
massive-internet-security-
vulnerability-you-are-at-
risk-what-you-need-to-do/
5
http://mashable.
com/2014/04/09/heart-
bleed-bug-websites-affect-
ed/#01gtseEchaqa
1 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
Marquess took to the Internet to make an impassioned public plea
for funding:
“
These guys don’t work on OpenSSL for money. They don’t do it
for fame (who outside of geek circles ever heard of them or
OpenSSL until ‘heartbleed’ [sic] hit the news?). They do it out of
pride in craftsmanship and the responsibility for something
they believe in.
It takes nerves of steel to work for many years on hundreds of
thousands of lines of very complex code, with every line of code
you touch visible to the world, knowing that code is used by
banks, firewalls, weapons systems, web sites, smart phones,
industry, government, everywhere. Knowing that you’ll be
ignored and unappreciated until something goes wrong.
There should be at least a half dozen full time OpenSSL team
members, not just one, able to concentrate on the care and
feeding of OpenSSL without having to hustle commercial
work. If you’re a corporate or government decision maker in a
position to do something about it, give it some thought. Please.
I’m getting old and weary and I’d like to retire someday. 6
After Heartbleed, OpenSSL finally got more of the funding it
needed—at least for now. They currently have enough money to pay
four full-time employees for three years. But a year and a half into
that funding, Marquess isn’t sure what will come next.
Marquess said that Heartbleed was a boon for them, admitting it
was a “little ironic” that publicity had helped elevate their cause. But
after funding runs out and the world moves on, Marquess thinks
6
http://veridicalsystems.
com/blog/of-money-re-
sponsibility-and-pride/
1 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
they could be back in the same situation as pre-Heartbleed, and
perhaps even worse: the client work that took Marquess years to
build has dried up, since the team works full-time on OpenSSL right
now and no longer has time for contracts.7
Marquess himself is approaching retirement. He is the only person
willing to handle the business and operational tasks associated with
OpenSSL, including taxes, sourcing client work, and managing
donors. The rest of his team prefers to focus on writing and main-
taining code. He can’t hire someone else into his position when he
retires, either, because he currently doesn’t take an income.
Marquess remarked, “I don’t know that we can hold this together for
more than a couple of years”.8
OpenSSL’s story is not unique, and in many ways, Marquess thinks
they are the lucky ones. Countless other projects continue to go
unheard of and unsupported. These projects make up the critical
digital infrastructure that powers today’s software, and in turn, every
aspect of our daily lives.
Checking email, reading the news, checking stock prices, shopping
online, going to the doctor, calling customer service—whether we
realize it or not, everything we do is made possible by projects like
OpenSSL. Without them, the technology that modern society relies
upon simply could not function.
Many of these projects are built and maintained by volunteers and
offered to the public for free. Anyone, from Facebook to an amateur
programmer, can use that code to build their own apps. And they do.
If it sounds unbelievable that, as Marquess puts it, a “ragtag group of
7
Phone interview with Steve
Marquess
8
Email interview with Steve
Marquess
1 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
amateurs could outcompete huge corporations with their money and
resources,” 9 consider how this work reflects the rise of peer-to-peer
collaboration around the world.
Unlikely startups like Uber or AirBnB exploded into major corporate
powerhouses in just a few years, challenging longstanding industries
like transportation and hospitality. Musicians make a name for
themselves through YouTube or Soundcloud instead of big record
labels. Creative people fund their ideas through crowdfunding
platforms like Kickstarter or Patreon.
Similarly, these infrastructure projects sprang from passionate,
creative developers who thought “I could do this better,” collaborat-
ing to build and release code to the world. The difference is that
millions of people rely on this code to lead functional daily lives.
Because code is less charismatic than a hit YouTube video or
Kickstarter campaign, there is little public awareness of and appreci-
ation for this work. As a result, there is not nearly enough institu-
tional support for the output that sparked an information revolution.
But we can’t ignore it for much longer.
In the past five years, our reliance on software, and the free and
public code that supports it, has accelerated. Technology has worked
its way into every aspect of our lives. And the more people use
software, the more software gets built, and the more work is
required to maintain it all.
Every successful startup needs public infrastructure to succeed, yet
no one company is motivated to act on its own. As the world blazes
ahead into a modern age of startups, code and technology,
9
Phone interview with Steve
Marquess
1 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
infrastructure continues to lag behind. The cracks in the foundation
are not obvious right now, but they are widening. After years of
unprecedented growth that propelled us into a new era of wealth
and prosperity, we must act now in order to ensure that the world
we built in such a short period of time does not come unexpectedly
crashing down.
To understand how to protect our future, first we need to understand
software itself.
History and Background
of Digital Infrastructure
"Open source became a movement –
a mentality. Suddenly infrastructure
software was nearly free."
– Mark Suster, Upfront Ventures
1 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
10
https://instagram.com/
about/legal/libraries/
How software gets built
Every website or mobile app we use, no matter how simple, is made
up of many smaller components, just as a building is made up of
bricks and concrete.
For example, imagine you want to post a photo to Facebook. You
open your Facebook mobile app, which triggers Facebook’s software
to show your news feed.
You upload a photo from your phone, add a comment, then hit
“submit.” Another part of Facebook’s software, responsible for storing
data, remembers who you are and posts the photo to your profile.
Finally, a third part of Facebook’s software takes the information
that you typed into your phone and shows it to all your friends
around the world.
Although these interactions take place on Facebook, Facebook did
not actually build all the pieces necessary to make it possible for
you to post to their app. Instead, they use free, public code, made
available on the Internet by volunteers for anybody to use. Facebook
does not publicly list the projects they use, but another company
they own, Instagram, lists and thanks some of these projects on
their homepage and mobile app.10
Using public code is more efficient for a company like Facebook than
building every piece themselves. Building software is like construct-
ing a building. A construction company wouldn’t build its hammers
and drills from scratch, or source and chop all of the lumber them-
selves. Instead, it buys the tools from a hardware store, and the
2 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
lumber from a third-party supplier, to make the job go faster.
Thanks to permissive licenses, companies like Facebook or Instagram
are not obligated to pay for this code, but are free to profit hand-
somely from it. This is not unlike a trucking company (Instagram)
using a highway (public code) to transport goods for commercial
purposes (Instagram’s app).
Mike Krieger, one of Instagram’s cofounders, emphasized this point
in 2013, encouraging other founders to “borrow instead of building
whenever possible. There are hundreds of fantastic [tools]...that can save
you time and let you focus on actually building out your product.” 11
Some tools that a software company uses are:
Frameworks: Software frameworks provide basic scaffolding and struc-
ture. Think of it as the blueprint for the entire application. Like a blue-
print, a framework lays out how the application might look on mobile, or
how information gets saved into the database. Examples include Rails
and Django.
Languages: Programming languages are the communication backbone
of software, like construction workers on a building site using English to
communicate. Languages help different software components perform
actions and talk to one another. For example, if you create an account on
a website and click “sign up,” that application might use the languages
JavaScript and Ruby to tell the database to save your information.
Popular examples of languages include JavaScript, Python and C.
Libraries: Libraries are “prefabricated” pieces of code that make it faster
to write software, just as a construction company might buy prefabricat-
ed windows instead of building them from scratch. For example, instead
11
https://opbeat.com/blog/
posts/picking-tech-for-your-
startup/
2 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
of a developer writing their own user login system for an application,
they can use a library called OAuth. Instead of writing their own code to
visualize data on a website, they can use a library called d3.
Databases: Databases store information (for example, user profiles,
email addresses, or credit card information) so that it can be used
throughout the application. Whenever an application needs to remember
something about you, it stores that information in the database. Popular
examples of databases include MySQL and PostgreSQL.
Web and application servers: Web and application servers facilitate
various requests that users make on the Internet. They can be thought of
as dispatchers or telephone operators. For example, if you type a URL
into your browser bar, a Web server will send back the associated page.
If you send a message to a friend on Facebook, your message first goes
to an application server, which determines who you are trying to contact,
then routes your message to your friend’s account. Popular examples of
Web servers are Apache and Nginx.
Some of these tools, such as servers and databases, cost money,
especially as companies scale. This makes them easier to monetize.
For example, Heroku, a cloud-based platform that offers server and
database support, offers basic services for free, but charges for
higher levels of data or traffic. Heroku powers many major websites,
including Toyota and Macy’s, and was acquired by Salesforce.com in
2010 for $212M.12
Other types of developer tools, such as frameworks, many libraries,
and programming languages, are harder to charge for, and are often
built and maintained by volunteers.
Because these types of tools look more like information goods than
12
http://techcrunch.
com/2010/12/08/breaking-
salesforce-buys-heroku-for-
212-million-in-cash/
2 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
services that can be turned on or off, charging for them would
severely limit their adoption. As a result, anyone—whether a bil-
lion-dollar company or a teenage coder—can use these components
to build their own software for free.
For example, one of the libraries that Instagram uses, according to
its homepage, is Appirater. Appirater is a library that makes it easy
to remind iPhone users to rate a mobile app. It was created in 2009
by Arash Payan, a freelance developer based in Los Angeles. Payan
does not make any income from the project.
It is the equivalent of lumberyards, concrete plants and hardware
stores donating their raw materials to a construction company, then
continuing to support the company’s needs.
2 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
How not charging for software
transformed society
An expected first reaction is: “Why did these developers make their
software free? Why not just charge for it?”
The reasons for public software lie in its rich political and social
history. But first, let’s examine a hard truth: our society wouldn’t be
where it is today if developers hadn’t made it free.
Free software makes it exponentially cheaper
and easier to build software.
Uber, a transportation service, recently announced that some devel-
opers had built a way to request cars through Slack, a team collabo-
ration app, instead of using Uber’s own mobile app. The project was
completed in 48 hours by a team of developers at App Academy, a
coding school.
Uber noted that the team was able to get the project done quickly
because they “implemented open libraries such as rails, geocoder, and
unicorn [sic] to speed up development and build on a solid
foundation.”13
In other words, the amount of coding that the team had to do them-
selves was greatly reduced because they were able to use free
libraries built by others.
Ruby Geocoder, for example, is a library built in 2010 and main-
tained by a freelance developer named Alex Reisner. Geocoder
13
https://devblog.uber.com/
uber-slack-a-weekend-a-sto-
ry-of-open-apis/
2 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
makes it easy for an application to look up street addresses and
geographic coordinates.14
Unicorn is a server, built in 2009, which is maintained by a team of
seven contributors listed on its website and headed by a developer
named Eric Wong.15
It’s easier than ever to build new software, because there are more
prefabricated pieces of code to draw from. To return again to the
construction metaphor instead of constructing every piece of a
building from scratch, one can simply buy a prefabricated framework,
foundation and walls, then put them together like Legos.
As a result, new developers are minted every day, even if they them-
selves don’t necessarily know how to build the tools from scratch.
The Bureau of Labor Statistics expects the number of employed
software developers to rise 22% from 2012 to 2022—much faster
than average, compared to other occupations.16
Free software is directly responsible for
today’s current startup renaissance.
The cost of starting a company has dropped dramatically since the
first dotcom boom in the late 1990s. Venture capitalist and former
entrepreneur Mark Suster reflected on his experience in a
2011 blog post:
“
When I built my first company starting in 1999 it cost $2.5
million in infrastructure just to get started and another $2.5
million in team costs to code, launch, manage, market & sell
our software. […]
14
http://www.alexreisner.com/
about
15
http://unicorn.bogomips.org/
CONTRIBUTORS.html
16
http://www.bls.gov/ooh/
computer-and-informa-
tion-technology/software-de-
velopers.htm
2 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
The first major change in our industry was imperceptible to us
as an industry. It was driven by the introduction of open-
source software, most notably what was called the LAMP stack.
Linux (instead of UNIX), Apache (web server software), MySQL
(instead of Oracle) and PHP. Of course there were variants –
we preferred PostGres to MySQL and many people used other
programming languages than PHP.
Open source became a movement – a mentality. Suddenly infra-
structure software was nearly free. We paid 10% of the normal
costs for the software and that money was for software support. A
90% disruption in cost spawns innovation – believe me.17
The availability of free software components today (as well as
cheaper hosting and cloud services, like Amazon Web Services and
Heroku) means that a technology startup no longer requires millions
of dollars to get off the ground. Entrepreneurs can conceivably
release a product and find a market without spending a single dollar,
then raise money from venture capitalists only after they’ve shown
strong signs of demand.
Alan Schaaf, the founder of Imgur, a popular image-sharing site and
one of the top 50 most-trafficked sites in the world, famously said
that the only money he ever spent to start the company was seven
dollars to purchase the domain name. Imgur was profitable, and
Schaaf did not take any outside money for 5 years before raising $40
million from VC firm Andreessen Horowitz in 2014.18
Venture capitalists and other institutional investors, in turn, have
started writing smaller checks to companies, giving rise to new
17
http://www.bothsidesoft-
hetable.com/2011/06/28/
understanding-chang-
es-in-the-software-ven-
ture-capital-industries/
18
http://articles.latimes.
com/2014/apr/03/business/
la-fi-tn-imgur-40-million-
funding-20140402
2 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
subsets of investing, including:
Seed stage: Venture firms providing the first round of funding, rather
than later-stage growth capital
Micro VCs: Venture firms loosely defined as less than $50 million under
management
Accelerators: Firms that provide small amounts of capital, often less
than $50,000, as well as advice and mentorship to early-stage compa-
nies
$10M can fund a hundred companies today, compared to one or two
in the 1990s.
Free software made it easier for people of all
demographics to learn to code, making
technology accessible to the world.
If you wanted to learn how to code at home today, you might start
by learning Ruby on Rails. Rails is a popular software framework and
Ruby is a programming language. Anyone with Internet access can
install these tools on any computer for free. Because they are free,
they are also very popular, which means there is plenty of informa-
tion online to help you get started, from formal tutorials to ques-
tion-and-answer forums. This means that learning how to code is as
accessible as teaching oneself to read and write English or French.
By comparison, software frameworks and languages that were not
open source required paying for access, using specific operating
2 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
systems or other tools, and agreeing to licensing constraints that
could affect patents for any software built using the framework.
Today, it is difficult to find examples of frameworks and languages
that are not open source. One of the most famous examples of a
proprietary software framework is .NET, developed and released in
2002. In 2014, Microsoft announced that they were releasing a
version of .NET as an open source project, called .NET Core.
Audrey Eschright, a software developer, wrote about how open
source software helped her learn to code as a teenager in the
late 1990s:
“
I wanted to learn to program but I didn’t have money. Not the
college student version of not having money—my family situa-
tion was low-income, but also highly chaotic….This is going to
seem strange to anyone [today], but at the time there were
basically two options for someone who wanted to write real
software: you could use a PC with Windows and pay extra for
Microsoft’s development tools, or you could have access to a
Unix system and use gcc….So my goal became to get access to
accounts on Unix systems so I could learn how to write code
and do cool stuff.19
Jeff Atwood, a longtime .NET developer, described his decision to
use Ruby for a new software project, Discourse, in 2013:
“
Getting up and running with a Microsoft stack is just plain too
hard for a developer in, say, Argentina, or Nepal, or Bulgaria.
Open source operating systems, languages, and tool chains are
the great equalizer, the basis for the next great generation of
19
http://lifeofaudrey.com/
essays/love_and_money.html
2 8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
programmers all over the world who are going to help us
change the world.20
With the explosion of startups have come a number of initiatives to
teach people to code, whether they are children, teenagers, under-
served minorities, women or career switchers. Some examples
include Women Who Code, Django Girls, Black Girls Code, One
Month and Dev Bootcamp.
Some of these organizations are free, while others charge tuition. All
of them rely upon free software to teach their students. For example,
Django Girls has taught over 2,000 women to code, in 49 countries
around the world.21 Although the organization did not develop
Django themselves, they are able to use Django, which students
download and use for free, in their curriculum
Dev Bootcamp teaches career switchers to code, preparing everyone
from English teachers to military veterans to become professional
software developers. The program costs $12-14,000. Dev Bootcamp
teaches Ruby, JavaScript, Ruby on Rails and SQL, among other com-
ponents. All of these components are free for students to download
and use, and Dev Bootcamp does not have to pay to use these mate-
rials. Dev Bootcamp was recently acquired by Kaplan for an undis-
closed sum in 2014.22
If such critical pieces of software were not free, people from all
walks of life would not be able to take part in today’s technology
renaissance. There are still numerous social and economic barriers
that prevent many more from participating, as well as costs associat-
ed with physical equipment like laptops and an Internet connection,
but the programming tools themselves do not cost money.
21
https://djangogirls.org/
22
https://www.edsurge.com/
news/2014-06-25-dev-
bootcamp-no-longer-boot-
strapped-acquired-by-kaplan
20
http://blog.codinghorror.
com/why-ruby/
2 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
A brief history of free and public
software and the people who made it
Now that we’ve covered how making software free benefits society,
let’s look at how the software itself came about.
Although we’ve used the term “free software” to refer to software
that does not cost any money to its users, the term “free software” is
actually a highly contextualized term that refers specifically to the
software’s license properties. Free software advocates emphasize
that “free” refers to a political freedom rather than the price, and
sometimes use the Spanish word libre (meaning freedom, as opposed
to gratis, the Spanish word for free price) to clarify the distinction.
In the 1970s, when computers were still a nascent technology, pro-
grammers had to build their own computers and write custom
software themselves. Software was not yet standardized and was
not considered to be a monetizable product.
In 1981, IBM introduced the “IBM PC,” or “Personal Computer,”
bringing hardware to a mass market. Within a couple of years, custom
computer setups fell away as everybody adopted the IBM standard.
IBM became the dominant computer within a highly fractured
personal computer market, capturing over half of market
share by 1986.23
Along with standardized hardware, then, came an opportunity for
standardized software. Suddenly everyone wanted to turn software
into a business. IBM hired a then-unknown company called Microsoft
to write the operating system for its new PC. That operating system,
23
http://arstechnica.com/busi-
ness/2012/08/from-altair-to-
ipad-35-years-of-personal-
computer-market-share/2/
3 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
MS-DOS, was released in 1981. Other companies began to follow
suit, offering software under commercial licenses. These licenses
prevented the user from copying, modifying or redistributing
the software.
Proprietary software still exists today: for example, Adobe
Photoshop, Microsoft Windows, or GoToMeeting. While proprietary
software can be profitable for the company that builds and licenses
the product, its restrictions also limit its scope and distribution. Any
changes to the software’s design or implementation have to origi-
nate from the company itself. And proprietary software is expensive,
often costing hundreds of dollars and permitting the designated
purchaser to use only that copy.
Understandably, some computer scientists felt concerned about the
closed and proprietary direction that software was taking, believing
that it undermined the true potential of software. Richard Stallman, a
programmer at the MIT Artificial Intelligence Laboratory, felt particu-
larly strongly about the need for software to be free and modifiable.
Over the next couple of years, as several of his colleagues began
working on proprietary software projects, Stallman felt he could not
ignore the situation any longer. In 1983, he launched GNU, a free
operating system, and in doing so sparked what came to be known
as the “free software movement,” which galvanized a group of
people who believed that software could have a greater reach and
benefit to society if it were made freely available. Stallman later
founded the Free Software Foundation in 1985 to support GNU and
other free software efforts.
The Free Software Foundation defines free software as “software
3 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
that gives the user the freedom to share, study and modify it.”24 GNU
defines four freedoms associated with such software:
Freedom 0: The freedom to run the program as you wish, for any pur-
pose.
Freedom 1: The freedom to study how the program works, and change it
so it does your computing as you wish.
Freedom 2: The freedom to redistribute copies so you can help your
neighbor.
Freedom 3: The freedom to distribute copies of your modified versions to
others. By doing this you can give the whole community a chance to
benefit from your changes.25
The free software movement was, and continues to be, deeply
rooted in social advocacy. In 1998, when Netscape released the
source code for its popular browser, the conversation began to shift
from politics to technology.
Some technologists believed that focusing on the practical benefits
of free software would help bring its message to a wider audience.
For example, they pointed out that free software was cheaper to
build and could lead to superior software, because the public can
find bugs and contribute fixes. This type of pragmatism was distinct
from the moral obligation that Stallman and his supporters believed
they had to promote free software.
24
https://www.fsf.org/about/
what-is-free-software
25
https://www.gnu.org/philos-
ophy/free-sw.html
3 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
These technologists gathered in Palo Alto for a strategy session.
Christine Peterson, a nanotechnologist in attendance, suggested the
term “open source.”26 Shortly after, two attendees, Bruce Perens and
Eric Raymond, created the Open Source Initiative.
Software whose source code is publicly available is called “open
source.” It is analogous to being able to open up the hood of a car
and see what's inside, instead of having the engine sealed off from
view. Open source licenses always include a provision that allows
the public to use, modify, and redistribute the code. In this sense,
there is no legal difference between free software and open source
licenses. Indeed, some people have called open source a “marketing
campaign” for free software.
However, the most important distinction is the differing cultures
that each movement created. The open source software movement
broke away from the social and political associations with free
software by instead focusing on the practical benefits of software
development and encouraging wider creative and business applica-
tions. As Stallman himself wrote, “Open source is a development
methodology; free software is a social movement.” 27
Although “free software” and “open source software” are often
discussed together, they are politically distinct, the former being
more closely associated with ethics and the latter with pragmatism.
(The remainder of this paper will use the term “open source” to
emphasize the critical role it plays in software infrastructure.)
Open source created space for growing distinctions and styles of
software development, free from ethical complexities. One organiza-
tion might release its source code to the public, but only accept
26
http://opensource.org/
history
27
http://www.gnu.org/philos-
ophy/open-source-misses-
the-point.en.html
3 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
changes from a couple of contributors. Another organization might
require that the code is developed in public and accept changes
from anyone, so that more people could take part in the process. In
1997, Raymond wrote an influential essay called The Cathedral and
the Bazaar (later published as a book in 1999) which explored
these styles.
Today, open source has become a popular software practice for many
reasons, in terms of both efficiency and cost. It’s also how much of
digital infrastructure gets built. We’ve discussed how making this
software more freely available has benefitted all of society, but
open source has benefits for its creators, as well.
Open source is cheaper to build.
Before open source software existed, technology firms treated
software like any other paid product: a team of employees built
new software internally, then sold it to the public. While this
meant software had a clear business model, it also came with
increased development costs. Proprietary software requires a
full-time paid team to support its development, including develop-
ers, designers, marketers, and lawyers. It’s far cheaper to simply
crowdsource software, built and maintained by a community of
volunteer developers.
Open source is easier to distribute.
People are more likely to adopt software that is free to use and
modify than software that costs hundreds of dollars to license and
was developed in a black box. Not only will developers want to use
it for free, but they might be inclined to tell their friends to use it as
3 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
well, amplifying the effects of its distribution.
Open source is flexible to customize.
Open source software is free to copy and modify for one’s own
purposes, with various levels of permissiveness. This means that if a
developer wants to make improvements to a piece of software, he or
she can copy the project and change it. (This practice is called
“forking.”)
Many popular projects started as a modification of an existing piece
of software, including WordPress (content management system that
powers 23% of the world’s websites28), PostgreSQL (one of the
world’s most popular and fast-growing databases29), Ubuntu (operat-
ing system used by 10% of the world’s websites30), and Firefox (one
of the most popular web browsers in the world31).
WordPress began as an offshoot of an existing blogging project, b2
(also known as cafelog). Two software developers, Matt Mullenweg
and Mike Little, decided they wanted a better version of b2 and
subsequently forked the project. Mullenweg decided to fork b2,
rather than another project called TextPattern, because b2’s licenses
were more permissive. His original thought process from 2003 is
described below:
“
What to do? Well, TextPattern looks like everything I could ever
want, but it doesn’t look like it’s going to be licensed under
something politically I could agree with. Fortunately, b2/
cafelog is GPL [GNU General Public License, a free software
license], which means that I could use the existing codebase to
create a fork.[...]
28
https://en.wikipedia.org/wiki/
WordPress
30
http://w3techs.com/tech-
nologies/details/os-ubuntu/
all/all
29
http://www.zdnet.com/
article/as-dbms-wars-contin-
ue-postgresql-shows-most-
momentum/
31
https://www.netmarketshare.
com/browser-market-share.
aspx?qprid=0&qpcustomd=0
3 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
The work would never be lost, as if I fell of [sic] the face of the
planet a year from now, whatever code I made would be free to
the world, and if someone else wanted to pick it up they could.32
If software were developed in a closed, proprietary environment,
developers would have no ability to change that software, unless
they worked at the company. If they tried to build their own
improved version to imitate the original, they might face intellectual
property concerns. With open source software, the developer can
simply change the software him- or herself and release it to the
public, as Mullenweg did. Open source software, then, enables rapid
proliferation of ideas.
Open source gives employees more
bargaining power.
Software takes time to learn, whether it’s a new programming
language or framework. If every company used a proprietary set of
tools, developers would be less inclined to change jobs, because
their technical skills only apply to that one place of employment.
They would have to be retrained in a new technology at their next
place of employment.33
When companies use open source technology, a developer has a
reusable set of skills, which leads to more freedom to work wherever
he or she prefers. For example, multiple companies might use the
same Ruby programming language in their software. In addition, if
the company’s product itself is open source, the output belongs to
the developer as much as it does the company. The developer can
take their work with them if they choose to leave the company
(versus, for example, being constrained by a non-disclosure
32
http://ma.tt/2003/01/
the-blogging-software-di-
lemma/
33
Thanks to Karl Fogel for
reminding me of this benefit.
3 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
agreement, if the code were proprietary). All of these benefits give
the employee more agency than he or she would have had with
proprietary software. Many companies today advertise their use of
open source software as a recruiting tactic, because it favors
the developer.
Open source has the potential to be more
stable and secure.
Theoretically, when a software project has many active contributors
and a thriving community, the code should be less vulnerable to
security flaws and disruptions in service. That’s because more
people would ideally be reviewing the code, looking for bugs and
fixing any problems that they see. By contrast, in a proprietary
software environment, the only people who would see the code
would be the team of people developing it. Instead of, say, 20 em-
ployees looking at the code at Oracle, a popular open source project
could have 2,000 volunteers reviewing the code for vulnerabilities.
(Note that this belief does not always match reality, and has created
the opposite problem: people mistakenly believing that more people
are reviewing open source software than actually are, when in
reality nobody is taking responsibility. This will be discussed in a
later section.)
Open source software clearly has a number of benefits. How do
these projects collectively fit into a broader ecosystem?
How The Current
System Works
"A lot of [our] members work in tech, either on
the web or on software. As a result, they work
on things that don’t last very long."
– Tim Hwang, Bay Area Infrastructure Observatory
3 8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
What is digital infrastructure, and how
does it get built?
Earlier in this report, we compared building software to constructing
a building. Those public software components are what collectively
form our digital infrastructure. To understand this concept, consider
how physical infrastructure works.
Everybody relies upon a number of physical infrastructure projects
to facilitate our day-to-day lives. Turning our lights on, driving to
work, washing dishes: we may not often think about where our
water, roads or electricity come from, but we have physical infra-
structure to thank. Private and public partners work together to
build and maintain our transportation, sewage, water, electric, and
communication systems.
Similarly, although we do not often see or think about the apps and
software we use on a daily basis, all of them rely upon free and
public code to function. Together, in an increasingly digital society,
these open source projects make up our digital infrastructure.
However, there are several major differences between physical and
digital infrastructure, which affect how the latter is built and
sustained. In particular, there are differences in cost, maintenance,
and governance.
Digital infrastructure is faster and
cheaper to build.
Building physical infrastructure is notoriously expensive. These
3 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
projects are physically large in scale and can take months or years
to complete.
The United States federal government spent $96 billion on infra-
structure projects in 2014, and state and local governments spent a
combined $320 billion in the same year. Slightly less than half (43
percent) of that spending went towards new construction; the re-
mainder was spent on operations and upkeep of existing
infrastructure.34
Proposing and funding new physical infrastructure projects can be
an extended political process. Transportation funding has been a
contentious topic in the United States for the past decade, where
the federal government faces a $16 billion shortfall for transporta-
tion funding.35 U.S. Congress recently passed the first multi-year
transportation bill in a decade, setting aside $305B for highways,
after years of political obstacles that prevented funding infrastruc-
ture from being funded more than two years at a time.36
Even after a new infrastructure project has been earmarked and
funded, it can take years to complete, fraught with uncertainties and
unforeseen obstacles. The Central Artery/Tunnel project in Boston,
Massachusetts, also known as the Big Dig, took nine years from
planning to initial construction. Its projected cost was $2.8 billion,
with a scheduled completion date for 1998. In reality, the project
ended up costing $14.6 billion and was not completed until 2007,
making it the most expensive highway project in the United States.37
By contrast, digital infrastructure does not have any of the costs
associated with building physical infrastructure, such as zoning a
location or purchasing materials. This makes it easy for anyone to
34
https://www.cbo.gov/publi-
cation/49910
35
http://thehill.com/policy/
transportation/255264-mc-
carthy-were-going-to-make-
sure-we-get-the-highway-
bill-done
36
http://www.wsj.com/
articles/house-passes-
five-year-transportation-
bill-1449167609
37
https://en.wikipedia.org/wiki/
Big_Dig
4 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
propose a new idea and get started in very little time.
MySQL, the second most popular database in the world38 and part of
a critical collection of tools that helped launch the first tech boom,
was published by its authors, Michael Widenius and David Axmark,
in May 1995. It took less than two years to develop.39
Ruby, a programming language, took less than three years from its
initial conception in February 1993 to public release in December
1995. Its author, computer scientist Yukihiro Matsumoto, decided to
create the language after a conversation with his colleagues.40
Digital infrastructure changes frequently.
Because digital infrastructure is so cheap to build, the barriers to
entry are lower, and software tools change more frequently.
Physical infrastructure is built to last, which is partially why these
projects take so long to plan, fund, and build. The London
Underground, London’s public rapid transit system, was built in 1863;
the underground tunnels dug for the subway system are still in use
today.41 The Brooklyn Bridge, which connects the boroughs of
Brooklyn and Manhattan in New York City, was completed in 1883
and did not undergo any major renovations until 2010, over one
hundred years later.
Digital infrastructure not only requires frequent maintenance and
upkeep to be compatible with other software components, but its
usage and adoption changes frequently as well. A bridge built in the
middle of New York City will have fairly consistent and guaranteed
usage, commensurate with the rise or decline of the city’s
38
http://www.zdnet.com/
article/as-dbms-wars-contin-
ue-postgresql-shows-most-
momentum/
39
https://en.wikipedia.org/wiki/
MySQL
40
https://en.wikipedia.org/wiki/
Ruby_(programming_lan-
guage)
41
https://en.wikipedia.org/wiki/
London_Underground
4 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
population. But a programming language or framework could be
extremely popular for several years, then fall out of favor when
something faster, more efficient, or simply trendier comes along.
For example, the graph below shows activity by source code devel-
opers using several different programming languages. The language
C, one of the most fundamental and widely used languages, has
dropped in market share as newer languages have entered the
market. Python and JavaScript, two currently popular languages, are
seeing a moderate rise over time. And Go, which was developed in
2007, has seen more activity in recent years.42
Tim Hwang, who runs the Bay Area Infrastructure Observatory,
which organizes group visits to physical infrastructure sites,
remarked on the difference in a 2015 interview with California
Sunday Magazine:
“
A lot of [our] members work in tech, either on the web or on
42
Monthly code commits
by language. Commits
including multiple languages
are counted once for each
language. Black Duck’s Open
Hub pulls from over 650,000
open source projects. Data
accessed May 20, 2016.
https://www.openhub.net/
languages/compare
4 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
software. As a result, they work on things that don’t last very
long. Their approach is, ‘We just hacked it, and we pushed it out
live,’ or ‘We just released it, and we can work out bugs later.’ A lot
of infrastructure is built for 100 years. You can’t have bugs. If you
do, the building will fall down. You can’t iterate it. It’s a practice
that exists outside of the members’ day-to-day experience.43
Because digital infrastructure changes so frequently, however, older
projects have a harder time finding contributors, because many
developers prefer to work on new and exciting projects. This phe-
nomenon has been referred to as “magpie developer” syndrome,
where developers are attracted to “new and shiny” things, instead of
the technology that works best for them and their users.44
Digital infrastructure does not have a central
organization to determine what gets
built or used.
Finally, perhaps the most striking difference between digital and
physical infrastructure, and one of the biggest challenges to its
sustainability, is that there is no organizing body to determine what
gets built or used in digital infrastructure.
Transportation, sewage and water projects are generally owned and
managed by the government, whether federal, state or local.
Communication and electric projects tend to be managed by private
companies. In both situations, infrastructure projects are funded by
a mix of private and public actors, either from the federal budget,
private company financing, or metered user fees.
In a stable, developed country, we rarely think about whether or
43
https://story.californiasunday.
com/tim-hwang-infrastruc-
ture-tourist
44
http://blog.codinghorror.
com/the-magpie-developer/
4 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
how a road gets built or a building has electricity. Even for projects
that are privately owned or funded, the federal government has a
vested interest in guaranteeing that physical infrastructure gets built
and maintained.
Digital infrastructure projects, on the other hand, are conceived of
and built from the bottom up. It is akin to a group of citizens getting
together and deciding they want to build a bridge or create their
own sewage system. There is no authoritative body whose formal
permission is required to create new digital infrastructure.
The Internet itself does have two major governing bodies that help
set standards: the Internet Engineering Task Force and World Wide
Web Consortium.
The Internet Engineering Task Force (IETF) helps develop and set
voluntary standards for how information gets passed around the
Internet. For example, they are the reason why URLs start with
“HTTP”. They are also the reason why we have IP addresses—unique
identifiers assigned to your computer when it is connected to a
network. Originally a working group within the United States gov-
ernment in 1986, the IETF became an independent, international
organization in 1993.45 The IETF itself is run by volunteers, and
there are no membership requirements: anyone from the public may
join simply by declaring him- or herself a member.
The World Wide Web Consortium (W3C) helps set standards for the
World Wide Web. It was founded by Tim Berners-Lee in 1994. The
W3C tends to focus more exclusively on web pages and documents
(they are, for example, the reason why web pages use HTML for
basic formatting). They maintain the standards around the markup
45
https://en.wikipedia.org/
wiki/Internet_Engineer-
ing_Task_Force
4 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
language HTML and stylesheet formatting language CSS, two basic
components of any web page. The W3C’s membership is slightly
more formalized, requiring an application and fee, and its members
range from businesses to universities to individuals.
The IETF and W3C help manage standards around the most funda-
mental pieces of the Internet, but the next layer up—choices about
which languages are used to build software, which frameworks to
build them with, or which libraries to include—are entirely self-man-
aged in the public domain. (Certainly, many proprietary software
projects, particularly those with heavy regulation, such as aeronau-
tics or health care, may have requirements on which tools are used.
They may even build proprietary tools for their own use.)
With physical infrastructure, if the government builds a new bridge
between San Francisco and Oakland, that bridge will certainly be
used. Similarly, when the W3C wants to set a new standard, such as
a new version of HTML, it is formally published and announced. For
example, in 2014, the W3C announced HTML5, the first major
revision of HTML since 1997, which had been in development for
seven years.
By contrast, when a computer scientist wants to create a new pro-
gramming language, he or she is free to publish it and it may or may
not be adopted. The bar for adoption is even lower for frameworks
or libraries: because they are easier to build, and easier for a user to
learn and implement, these tools are iterated more frequently.
More importantly, nobody is forcing or even strongly encouraging
anyone to use these projects. Some projects remain more academic
than practical; others are ignored completely. It is difficult to predict
4 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
what gets used until others are actually using it.
Developers like to point to usefulness as an indicator of whether a
new project gets adopted or not. New projects should make an
improvement to an existing project, or solve a chronic problem, in
order to be deemed useful and worthy of adoption. When developers
are asked why their project got so popular, many of them will shrug
and simply say, “It was the best thing out there.”
Not unlike technology startups, new digital infrastructure projects
rely upon network effects for adoption. Getting a core group of devel-
opers excited, or a software company using the project, helps spread
the word. A catchy name, branding, or website can add to the proj-
ect’s novelty factor. A developer’s reputation within their respective
community also helps determine whether a new project
gets noticed.
However, in the end, a new digital infrastructure project can come
from just about anywhere, which means each project is managed
and sustained in very different ways.
4 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w A R E D I G I TA L I N F R A S T R U C T U R E p R O j E C T S m A N A G E D A N D S U p p O R T E D ?
How are digital infrastructure projects
managed and supported?
We’ve established that digital infrastructure is as critical to modern
society as physical infrastructure. Although digital infrastructure is
not subject to the high costs and political obstacles of physical
infrastructure, its decentralized nature also makes it harder to pin
down. Without a central governing body, how do open source
projects find the support they need?
In short, the answer is different for every project. However, there are
several places where projects might originate: within a company, as
a new business, or from an individual or community of developers.
Within a company
Sometimes, the project starts within a company. Here are a few
examples that demonstrate the different ways in which an open
source project might be supported by a company’s resources:
Go, the new programming language previously mentioned, was developed
at Google in 2007 by engineers Robert Griesemer, Rob Pike, and Ken
Thompson, who created Go as an experiment. Go is open source and
accepts contributions from the broader community. However, its core
maintainers are employed full-time by Google to work on the language.46
React is a new JavaScript library that is growing in popularity. React was
created by Jordan Walke, a software engineer at Facebook, for internal
use on Facebook’s news feed. An employee at Instagram (which is
owned by Facebook) wanted to use React, too, and eventually React was
open sourced, two years after its initial development.47 Facebook
46
https://en.wikipedia.org/
wiki/Go_(programming_lan-
guage)
47
https://www.quora.com/
How-was-the-idea-to-devel-
op-React-conceived-and-
how-many-people-worked-
on-developing-it-and-im-
plementing-it-at-Facebook/
answer/Bill-Fisher-17
4 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
dedicated a team of engineers to help maintain the project, but React
also accepts contributions from the public developer community.48
Swift, the programming language used for iOS, OS X, and other Apple
projects, is an example of a project that was only recently open sourced.
Swift was developed internally by Apple for four years and released as a
proprietary language in 2014. Developers could use Swift to write soft-
ware for Apple devices, but not contribute to the language’s core develop-
ment. In 2015, Swift was open sourced under the Apache License 2.0.49
The incentives for a company to maintain an open source project are
numerous. Opening up a project to the public can mean less work
for the company, which is essentially crowdsourcing improvements.
It builds goodwill and awareness among developers, who might then
be incentivized to use other company resources to build things.
Having an active community of developers creates a recruiting
pipeline for talent. And sometimes, open sourcing a project helps a
company strengthen their user base and brand, or even drown out
competition. The more market share a company can capture, even
through tools it gives away, the more influential it becomes. This is
not dissimilar to the “loss leader” concept of business.
Even if a project is created internally, if it is open sourced, that
project is free to use or modify according to the terms of an open
source license, and is not considered company intellectual property
in the traditional sense. Many company projects use standard open
source licenses that are considered acceptable by the broader devel-
oper community, such as Apache License 2.0 or BSD. However, in
some cases, companies add their own clauses. React, for example,
has an additional clause that could potentially cause patent claim
conflicts with React users.50 As a result, some companies and
48
https://en.wikipedia.org/wiki/
React_(JavaScript_library)
49
https://en.wikipedia.org/
wiki/Swift_(programming_
language)
50
https://github.com/face-
book/react/blob/master/
PATENTS
4 8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
individuals are reluctant to use React, and the decision is frequently
portrayed as in conflict with open source principles.
As a new business
Some infrastructure projects take a traditional startup path, includ-
ing venture funding. A couple of examples are as follows:
Docker, perhaps the best-known contemporary example, helps software
applications run inside containers. (Containers provide a clean, tidy
environment for software applications that make them easier to run
anywhere). Docker started as an internal project within dotCloud, a
platform-as-a-service company, but became so popular that the founders
decided to make Docker the main focus of the company. The Docker
project was open sourced in 2013. Docker has raised $180M with an
estimated valuation of over $1B.51 Their business model is based on
support, private plans, and services. Docker’s 2014 revenue was less than
$10 million.52
Npm is a package manager to help Node.js developers share and
manage their projects, released in 2010. Npm raised nearly $11M in
funding since 2014 from True Ventures and Bessemer Ventures, among
others. Their business model focuses on paid features that support
privacy and security.
Meteor is a JavaScript framework that was first released in 2012. It was
incubated by Y Combinator, a prestigious startup accelerator that also
incubated companies like AirBnB and Dropbox. Meteor has received over
$30M in funding to date from firms including Andreessen Horowitz and
Matrix Partners.53 Meteor’s business model focuses on an enterprise
platform called Galaxy, released in October 2015, for operating and
managing Meteor applications.54
51
http://venturebeat.
com/2015/06/13/docker-
now-valued-at-1b-paid-some-
one-799-for-its-logo-on-
99designs/
52
http://www.bloomberg.com/
news/articles/2015-04-14/
docker-said-to-join-1-billion-
valuation-club-with-new-
funding
53
https://www.crunchbase.
com/organization/meteor
54
http://info.meteor.com/blog/
announcing-meteor-galaxy
4 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
The venture funding approach is relatively new, and growing rapidly.
Lightspeed Venture Partners found that from 2010-2015, venture
firms invested over $4B in open source companies, a tenfold increase
over the five previous years.55
Using venture capital to support open source projects has been met
with skepticism from developers (and even some venture capitalists
themselves), due to lack of clear business models and questionable
revenue to justify valuations. Steve Klabnik, a maintainer for the
language Rust, explains venture capital’s sudden interest in funding
open source:
“
I’m a VC. I need a large number of companies to exist to make
my money….I need costs to be low and profits to be high. I need
a healthy open source ecosystem to make this happen. So what
do I do?...VCs are realizing this story, and are starting to invest
in infrastructure. [...]
In many ways, the open source stuff is a loss leader, so that you
get hooked...and then use it for everything, even your closed
source code. This is a great business strategy, but it also places
GitHub at the center of this new universe. So for similar
reasons, a16z needs GitHub to be awesome to bootstrap every
open source ecosystem that will exist into the future….And a16z
has the money to ‘throw away’ on something they won’t get a
direct return out of, because they’re smart enough to invest
some of their fund in ecosystem development.56
GitHub, created in 2008, is a platform for code, available publicly or
privately in an easy-to-read environment. It hosts many popular
open source projects and, most importantly, has become the cultural
55
http://venturebeat.
com/2015/12/06/its-actually-
open-source-software-thats-
eating-the-world/
56
http://words.steveklabnik.
com/is-npm-worth-26mm
5 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
epicenter for open source’s explosive growth (to be discussed later
in this report).
GitHub did not take any venture capital until 2012, four years after
its founding. Before then, GitHub was a profitable company. Since
2012, GitHub has taken $350M in total venture capital funding.57
Andreessen Horowitz (or “a16z”), the $4B venture capital firm who
provided most of the capital in their first $100M round, stated it was
the largest investment they had ever made at the time.58
Steve Klabnik’s thesis, in other words, is that venture capital firms
who invest in open source infrastructure promote these platforms as
a “loss leader,” even when there is no direct business model or
profitability to be had, because it grows the entire ecosystem. The
more resources GitHub has, the more open source thrives. The more
open source thrives, the more startups thrive. If nothing else,
venture capital’s interest in open source, especially given the lack of
clear financial return, validates the critical role open source plays in
the broader startup ecosystem.
(As an aside, it is important to mention that GitHub, the platform
itself, is not an open source project, and therefore is not an example
of venture capital directly funding open source. GitHub is a closed
source platform that hosts open source projects. This is a controver-
sial topic for some open source contributors.)
By individuals or a group of individuals
Finally, many digital infrastructure projects are developed and
maintained entirely by independent developers, or a community of
developers. A few examples are as follows:
57
https://www.crunchbase.
com/organization/github
58
http://www.wsj.com/articles/
SB1000142405270230329220
4577517111643094308
5 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
Python, a programming language, was developed and published by
computer scientist Guido van Rossum in 1991. Van Rossum claimed he
“was looking for a ‘hobby’ programming project that would keep me
occupied during the week around Christmas.” 59 The project took off, and
Python is now considered to be one of the most popular programming
languages today. 60 Van Rossum remains the principal author of Python
(also known as a benevolent dictator for life, or BDFL, among develop-
ers) and is currently employed by Dropbox, whose software relies heavily
on Python. 61 Python is partially managed by the Python Software
Foundation, created in 2001, which has a number of corporate sponsors,
including Intel, HP, and Google.
RubyGems is a package manager that helps distribute programs and
libraries associated with the Ruby programming language. It is a critical
piece of infrastructure for any Ruby developer. Examples of websites that
use Ruby are Hulu, AirBnB and Bloomberg. 62 RubyGems was created in
2003 and is managed by a community of developers. Some development
work is supported by Ruby Together, a foundation that accepts donations
from companies and individuals.
Twisted, a Python library, was authored by a developer named Glyph
Lefkowitz in 2002. Since then, it has achieved widespread usage among
individuals and organizations, including Lucasfilm and NASA.63 Twisted
continues to be run by a group of volunteers. It is supported by corporate
and individual donations; Lefkowitz remains the lead architect and
offers consulting services for income.64
As these examples demonstrate, open source projects can come
from just about anywhere. This is, generally, considered to be a good
thing. It means that useful projects are more likely to succeed,
avoiding both the vacuous hype associated with startups, and the
bureaucracy associated with government. Digital infrastructure’s
decentralized nature also reinforces the open and democratic
59
https://www.python.org/doc/
essays/foreword/
60
http://blog.codeeval.
com/codeevalblog/2015#.
VjvKZhNViko=
63
https://twistedmatrix.com/
trac/wiki/SuccessStories
61
https://en.wikipedia.org/wiki/
Guido_van_Rossum
64
https://twistedmatrix.com/
glyph/
62
http://skillcrush.
com/2015/02/02/37-rails-
sites/
5 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
principles of the Internet, where anybody could theoretically create
the next big project, whether a company or individual.
On the other hand, many useful projects will come from indepen-
dent developers who suddenly find themselves at the helm of a
successful project, facing critical decisions about its future. A 2015
study by the Federal University of Minas Gerais in Brazil looked at
133 of the most actively used projects hosted on GitHub, across
programming languages, and found that 64%, or nearly two-thirds,
relied upon just one or two developers to survive.65 Although there
may be a long tail of casual or infrequent contributors, for many
projects, the major responsibilities of project management fall on
just a few people.
Coordinating international communities of opinionated contributors
and managing the expectations of Fortune 500 companies who use
your project are challenging tasks for anyone. It is truly impressive
how much has already been accomplished in this manner. These
tasks are especially difficult when developers lack clear role models
or institutional support for this work. In interviews for this report,
many developers privately lamented that they have no idea who to
ask for help and would “rather just code.”
Why do they keep doing it? The remainder of this paper will focus on
how and why open source contributors maintain projects of massive
scale and impact, and why it matters to all of us.
65
https://peerj.com/pre-
prints/1233.pdf
5 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
Why do people keep contributing to
these projects, when they’re not
getting paid for it?
Many digital infrastructure projects are maintained by individual
contributors or a community of contributors. In most cases, these
contributors are not being paid directly to work on the project.
Instead, they contribute for reasons that are unique to open source
communities, including building reputation and a public service
mindset. This section will explore some of those motivations in
greater detail.
Contributing to open source builds
one’s reputation.
Building one’s reputation is perhaps the most practical reason why
someone would want to contribute to an open source project. For
developers, technical writers, or others, these projects help them
prove themselves in public, giving them a chance to be part of
something big and useful.
Google runs a program called Google Summer of Code, which
provides a summer stipend to student developers to contribute to
popular open source projects. The program works well because the
developers are students, new to the field of computer science, and
eager to show off their skills.
Developers, in particular, leverage open source contributions to
build a portfolio of their work. In addition, by providing input on
popular projects with active communities, a developer has a chance
5 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
to build his or her reputation by making him or herself “known.”
GitHub, the website previously mentioned, is a popular platform for
collaborating on code. When a developer makes a contribution to a
public software project, those contributions appear in his or her
profile. A developer’s GitHub profile can serve as a portfolio for
software companies, but only contributions to public (i.e., open
source) projects are visible to anyone.
However, reputation-based motivations also come with risks, espe-
cially among junior developers. A developer early in his or her career
may contribute to an open source project for the sole purpose of
getting hired, then stop contributing once this goal has been
achieved. In addition, developers who are solely interested in
building their portfolio may make lower quality contributions to the
project that do not get accepted or even slow down the develop-
ment process. Finally, if the purpose of making a public contribution
is to build one’s reputation, a developer will be motivated to only
contribute to popular or attractive projects (an extension of the
“magpie developer” phenomenon mentioned earlier), which means
that older projects struggle to find new contributors.
The project became unexpectedly popular,
and the maintainer feels obligated to
support it.
A popular open source project can create dependencies for other
companies, individuals or organizations. In other words, the code is
being used in live software, written and deployed by other people,
that could serve any number of purposes, whether online shopping
or health care. This complex set of dependencies (many of which are
not visible even to the project author, since they do not have clear
5 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
user data) can make a maintainer feel ethically obligated to continue
supporting it.
Arash Payan, the developer of Appirater mentioned in the beginning
of this paper, released his project in 2009. Of his decision to
continue maintaining the project, Payan says:
“
It's not terribly exciting stuff, but there are so many people out
there that use (depend, even?) on the project for their apps, that
I feel obligated to be a good steward of it. Personally, I've
moved on from iOS, so maintaining an iOS library isn't exactly
my first choice for a side project.66
Payan estimates the project only takes roughly 1-2 hours per month
to keep up-to-date, so he doesn’t mind the work.
Some projects become unexpectedly popular but take more time to
support. Andrey Petrov is an independent developer who wrote a
Python library called urllib3. He released it in 2008 as a significant
improvement to the existing standard library, and it became popular
among Python developers. Today, every Python user depends on it.67
Andrey made the project open source in hopes that other people
would help support its continued development and upkeep. Andrey
is a freelance developer—although he enjoys maintaining urllib3, he
can only justify doing so in his free time, since he is not paid for his
work. Cory Benfield, who is employed by Hewlett Packard Enterprise
to help maintain critical Python libraries (which HPE uses and
depends on), now works on urllib3 as part of his job. Cory’s arrange-
ment has reduced some of the burden.
67
https://medium.com/@
shazow/urllib3-stripe-and-
open-source-grants-edb-
9c0e46e82
66
Email interview with Arash
Payan
5 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
The project is a labor of love.
Eric Holscher is a creator of Read the Docs, which hosts software
documentation. Documentation is the equivalent of an instruction
manual. Just as one might need an instruction manual to figure out
how to put a piece of furniture together, developers need documen-
tation to figure out how to implement a project. Without proper
documentation, it would be difficult for a developer to know how to
get started.
Read the Docs provides documentation for 18,000 software projects,
including enterprise customers, and serves over 15 million page
views per month.68 Although they make some money from large
business clients, Read the Docs is still mostly funded by donations
from its users. A company called Rackspace sponsors their
server costs.
Eric and his cofounder, Anthony Johnson, maintain the project, and
do not see steady income from it, despite working on the project
full-time. A $48,000 one-time grant from the Mozilla Foundation in
December 2015 will help cover their work for a short time.69 They
are currently experimenting with an advertising model (that does
not involve tracking their users) to reach sustainability.70
Eric notes that the difficulties lie not just in new development work,
but non-coding functions like customer support, for which one of
the maintainers must be on call every weekend in case of an emer-
gency. When Eric explained why he continues to support the project,
he called it a “labor of love”:
68
https://readthedocs.org/
sustainability/
69
https://blog.mozilla.org/
blog/2015/12/10/mozilla-
open-source-support-first-
awards-made/
70
http://blog.readthedocs.com/
ads-on-read-the-docs/
5 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
“
Either humans are irrational or they don’t just follow money.
Clearly there’s another motivation for me here. It’s a labor of
love. I could close this project tomorrow and be done with it if I
wanted to, but I’ve been doing it for 5 years and I don’t want to
see that happen.71
Eric is motivated to work on Read the Docs because he sees the
tangible value it creates for others. For many project maintainers,
impact is a primary motivator, because they see how their direct
efforts positively affect other people’s lives. In this sense, open
source work shares many similarities to the nonprofit sector. Much
like the nonprofit sector, however, this “labor of love” mentality can
make it harder for open source communities to discuss the elephant
in the room: how to sustain projects that require more resources and
attention than current contributors can offer.
71
Skype interview with
Eric Holscher
Challenges Facing
Digital Infrastructure
"Open source has been such an incredible
force for quality and community exactly
because it's not been defined in market terms.
In market terms, most open source projects
should never have had a chance."
– David Heinemeier Hansson, Ruby on Rails
5 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
Open source’s complicated
relationship with money
Money has been a taboo topic for open source projects since the
early days of the free software movement, which arose in direct
response to the practice of commercial, proprietary software.
In the context of the free software movement, the aversion to
money is certainly understandable. Money is what commercialized
software in the 1980s, and it took decades to reverse this mentality
and promote the benefits of building software that is free to use,
distribute, and modify. Although we take free software for granted
today, in the 1980s it was truly a counterculture and revolution-
ary mindset.
Yet even within open source communities, there is a pervasive belief
that money has a corrupting influence on open source. It is indeed
remarkable how much has been created entirely through labors of
love. These days, software development is considered a lucrative
field, with coding schools luring prospective students with the
promise of making a six-figure entry-level salary. By contrast, there
is something pure and admirable about creating a software project
simply for the joy of it.
On a more practical level, open source projects traditionally arise
from a real and identifiable need. Someone decides that a project
could be done better, so they fork the project, make improvements,
then release it for consumption. Pragmatism is core to open source’s
culture, as evidenced by its strategic break from the free software
movement in the late 1990s. Some open source contributors fear,
6 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
perhaps justifiably, that money will introduce bloat into the system,
with developers creating new projects simply to get funding, rather
than because the solution is needed.
David Heinemeier Hansson (also known as DHH), who created the
popular software framework Ruby on Rails, warned in 2013 against
mixing open source with money:
“
Open source has been such an incredible force for quality and
community exactly because it's not been defined in market
terms. In market terms, most open source projects should never
have had a chance.
Take Ruby on Rails. [...] That's a monumental achievement of
humanity! Thousands, collaborating for a decade, to produce
an astoundingly accomplished framework and ecosystem
available to anyone at the cost of zero. Take a second to ponder
the magnitude of that success. Not just for Rails, of course, but
for many other, and larger, open source projects out there with
an even longer lineage and success.
It's against this fantastic success of social norms that we should
be extraordinary [sic] careful before we let market norms
corrupt the ecosystem.72
Structurally, open source’s greatest advantage —its penchant for
democracy— is also its weakness. Many open source projects are
nothing more than a public code repository to which a group of
people contribute regularly: the equivalent of an unofficial social
club on a college campus. There is no legal structure and there are
no clear owners or leaders. “Maintainers,” or the primary
72
http://david.heinemeierhans-
son.com/2013/the-perils-of-
mixing-open-source-and-
money.html
6 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
contributors, often emerge de facto, based on who authored the
project or put in significant time or effort. Even then, however, some
projects are reluctant to introduce hierarchy by clearly favoring one
contributor over another.
In April of 2008, Jeff Atwood, an aforementioned prominent .NET
developer, announced he was donating $5,000 towards an open
source project, ScrewTurn Wiki. ScrewTurn Wiki is a wiki project
developed by Dario Solara, another .NET developer, and maintained
by volunteers. Atwood told Dario that the grant would be “no strings
attached;” Solara could use the money as he saw fit towards
the project.
Several months later, Atwood followed up with Solara to ask how he
decided to spend the donation. Solara replied that the grant money
was “still untouched. It’s not easy to use it….What would you suggest?”
Atwood wrote that he was “crushingly disappointed” by the
response.73 The decentralized nature of open source has made it
what it is: crowdsourced software that anyone can build, share and
contribute to. But when it comes to discussing organizational needs
or sustainability, it can be difficult to make authoritative decisions.
These transitions to long-term sustainability can be drawn out and
painful. One of the more prominent examples is the Linux kernel, an
open source project used in many operating systems worldwide,
including Android and Chrome OS. It was created in 1991 by
computer science student Linus Torvalds.
As the Linux kernel grew in popularity, Linus was reluctant to
discuss how to scale development of the project, preferring to
manage everything himself. Project maintainers grew restless and
73
http://blog.codinghorror.
com/is-money-useless-to-
open-source-projects/
6 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
even angry at Torvalds, sparking “really big fights,” according to
Torvalds. The disputes peaked in 2002 with discussions of a poten-
tial schism.
Torvalds attributed the internal conflict to a lack of organization,
rather than to any technical issues:
“
We had really big fights back in 2002 or so where I was drop-
ping patches left and right, and things really weren't working.
It was very painful for everybody, and very much for me, too.
Nobody really likes criticism, and there was a lot of flaming
going around—and because it wasn't a strictly technical
problem, you couldn't point to a patch and say, ‘hey, look, that
patch improves timings by 15%’ or anything like that: there was
no technical solution. The solution ended up being better tools,
and a work flow [sic] that allowed much more distributed
management.74
The Linux Foundation was created in 2007 to help protect and
maintain Linux and its associated projects. Torvalds does not run the
Linux Foundation himself, preferring instead to receive a steady
salary as a “Linux Fellow” and work on his projects as an engineer.
While open source software is admirably rooted in a culture of
volunteerism and collaboration relatively untouched by extrinsic
motives, the reality is that our economy and society, from multimil-
lion dollar companies to government websites, depends on
open source.
Overall, this is probably a positive development for society. It means
that software is no longer strictly relegated to private, proprietary
74
http://www.datamation.
com/open-source/linus-tor-
valds-and-others-on-commu-
nity-burnout-1.html
and Bridges:
The Unseen Labor Behind
Our Digital Infrastructure
WRIT TEN BY
Nadia Eghbal
Open up your phone.
Your social media,
your news, your
medical records, your
bank: they are all using
free and public code.
2
3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
C O N T E N T S
Preface
Foreword
Executive Summary
Introduction
History and Background of
Digital Infrastructure
How software gets built
How not charging for software
transformed society
A brief history of free and public software
and the people who made it
How The Current System Works
What is digital infrastructure, and how
does it get built?
How are digital infrastructure projects
managed and supported?
Why do people keep contributing to
these projects, when they’re not
getting paid for it?
Challenges Facing Digital Infrastructure
Open source’s complicated
relationship with money
Why digital infrastructure support
problems are accelerating
The hidden costs of ignoring infrastructure
Sustaining Digital Infrastructure
Business models for digital infrastructure
Finding a sponsor or donor for
an infrastructure project
Why is it so hard to fund these projects?
Institutional efforts to support digital infrastructure
Opportunities Ahead
Developing effective support strategies
Priming the landscape
The crossroads we face
Appendix
Glossary
Acknowledgements
Table of Contents
4
5
8
11
18
19
23
29
37
38
46
53
58
59
66
77
89
90
97
106
109
124
125
127
136
139
140
142
Preface
Our modern society—everything
from hospitals to stock markets to
newspapers to social media—runs on
software. But take a closer look, and
you’ll find that the tools we use to build
software are buckling under demand.
5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
F O R E w O R D
Foreword
I stumbled upon the problem described in this report on a hunch.
Having previously worked in startups, and then venture capital, I
saw the enormous amounts of money being poured into software
companies. But as an amateur software developer, I knew that I had
never done any of it alone. I used free and publicly available code
(also known as “open source” code), which I cobbled together and
offered up for personal or commercial purposes. Really, the people
behind those projects, whoever they were, had done most
of the work.
I mulled over this observation for several years, as I watched the
explosion of coding “bootcamps” graduating new software develop-
ers left and right, and as I watched startups raise tens of millions of
dollars selling products which I knew, under the hood, were
probably more public than proprietary code. Having previously
worked in the nonprofit sector, I immediately thought of public
goods and their associated challenges, yet this vocabulary was
strangely absent among my peers in software.
After I left my job in venture capital last year, I set off to explore the
paradox I couldn’t stop thinking about: that there were valuable
software tools that couldn’t be supported by commercial models,
and that they lacked any form of institutional support.
Funnily enough, open source code wasn’t on my original list. I had
mistakenly assumed, as had my peers, that these tools were an
example of a particularly well-supported public good in software.
When I brought up open source to friends and mentors, they gently
dissuaded me from pursuing the topic, encouraging me instead to
6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
F O R E w O R D
find other examples that actually needed the help.
A few open source projects crossed my radar, however, and shat-
tered those assumptions. It turned out that sustainability challeng-
es were well-known among those who contributed to open source.
The more I dug, the more I found blog posts, articles, and frequent
public conversations about the stress and exhaustion felt by those
who maintain open source projects. Everybody knew someone else
I should talk to, and before I knew it, I had collected countless
stories on this topic.
I realized I had walked into a problem with which the producers
(open source contributors) were extremely familiar, but that the
consumers (software companies and other users of open source
code) were seemingly unaware of. That discrepancy made me want
to look more closely.
In addition, it seemed that open source itself was changing, perhaps
even bifurcating. I found myself having completely different conver-
sations with different generations of open source contributors. They
seemed to have divergent philosophies and values; they may as well
not have been using the same terminology. I learned that open
source had seen an explosion of production as well as demand in the
past three to five years, thanks to improvements in developer tools
and workflows. Today’s open source contributor looked very different
from an open source contributor ten years ago, much less thirty years
ago. And yet these different generations weren’t talking to each
other, making productive conversations about sustainability difficult.
7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
F O R E w O R D
“
A chance conversation with Ethan Zuckerman of the MIT
Center for Civic Media gave me an opportunity to share these
findings more widely.
I described to Ethan the problem I was seeing, though I didn’t know
exactly what it all meant or the vocabulary I should be using, and he
kindly put me in touch with Jenny Toomey of the Ford Foundation.
Jenny suggested I aggregate my findings into a report. In the process,
a narrative around our modern digital society, and the hidden infra-
structure that powers it, has emerged.
This report would not have happened without Ethan and Jenny
taking a chance on a half-baked idea that now, through the process
of writing, has been shaped into something more. I am extremely
grateful to both of them for their intuition. I am additionally grateful
to Michael Brennan and Lori McGlinchey for their guidance, perspec-
tive and enthusiasm in the editing process. Finally, and perhaps most
importantly, I am indebted to every person working in open source
who made their stories public for people like me to read, and espe-
cially those who took a moment out of their busy schedules to
humor me with a conversation or an email. This report is a collec-
tion of their wisdom, not mine. I am particularly grateful for early
conversations with Russell Keith-Magee, Eric Holscher, Jan Lehnardt,
Andrey Petrov, and Mikeal Rogers, all of whom continue to inspire
me with their patience and dedication to open source work. Thank
you for your kindness.
8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
E x E C U T I v E S U m m A R y
Executive Summary
Our modern society—everything from hospitals to stock markets
to newspapers to social media—runs on software. But take a closer
look, and you’ll find that the tools we use to build software are
buckling under demand.
Nearly all software today relies on free, public code (called “open
source” code), written and maintained by communities of developers
and other talent. Much like roads or bridges, which anyone can walk
or drive on, open source code can be used by anyone—from compa-
nies to individuals—to build software. This type of code makes up
the digital infrastructure of our society today.
Just like physical infrastructure, digital infrastructure needs
regular upkeep and maintenance. In the United States, over half
of government spending on transportation and water infrastruc-
ture goes just to maintenance.1 But financial support for digital
infrastructure is much harder to come by. Currently, any financial
support usually comes through sponsorships, direct or indirect, from
software companies.
Maintaining open source code used to be more manageable.
Following the personal computer revolution of the early 1980s, most
commercial software was proprietary, not shared. Software tools
were built and used internally by companies, and their products
were licensed to customers. Many companies felt that open source
code was too nascent and unreliable for commercial use. In their
view, software was meant to be charged for, not given away for free.
Today, everybody uses open source code, including Fortune 500
1
https://www.cbo.gov/
publication/49910
9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
E x E C U T I v E S U m m A R y
companies, government, major software companies and startups.
Sharing, rather than building proprietary code, turned out to be
cheaper, easier, and more efficient. This increased demand puts addi-
tional strain on those who maintain this infrastructure, yet because
these communities are not highly visible, the rest of the world has
been slow to notice. Most of us take opening a software application
for granted, the way we take turning on the lights for granted. We
don’t think about the human capital necessary to make that happen.
In the face of unprecedented demand, the costs of not supporting
our digital infrastructure are numerous. On the risk side, there are
security breaches and interruptions in service, due to infrastructure
maintainers not being able to provide adequate support. On the
opportunity side, we need to maintain and improve these software
tools in order to support today’s startup renaissance, which relies
heavily on this infrastructure. Additionally, open source work builds
developers’ portfolios and helps them get hired, but the talent pool
is remarkably less diverse than in tech overall. Expanding the pool
of contributors can positively affect who participates in the tech
industry at large.
No individual company or organization is incentivized to address the
problem alone, because open source code is a public good. In order
to support our digital infrastructure, we must find ways to work
together. Current examples of efforts to support digital infrastruc-
ture include the Linux Foundation’s Core Infrastructure Initiative and
Mozilla’s Open Source Support (MOSS) program, as well as numerous
software companies in various capacities.
Sustaining our digital infrastructure is a new topic for many, and
the challenges are not well understood. In addition, infrastructure
1 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
E x E C U T I v E S U m m A R y
projects are distributed across many people and organizations,
defying common governance models. Many infrastructure projects
have no legal entity at all. Any support strategy needs to accept and
work with the decentralized, community-centric qualities of open
source code. Increasing awareness of the problem, making it easier
for institutions to contribute time and money, expanding the pool of
open source contributors, and developing best practices and policies
across infrastructure projects will all go a long way in building a
healthy and sustainable ecosystem.
1 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
Introduction
In 1998, a group of security experts in the UK got together to build a
free set of encryption tools for the Internet.
Soon everybody was talking about their project, called OpenSSL.
(The developers had used an existing Australian project, called
SSLeay, as their blueprint.) Not only was it comprehensive and
decently reliable, but it was free. Writing cryptography wasn’t easy,
and OpenSSL had solved a major pain point for develop-
ers worldwide.
By 2014, two-thirds of all Web servers were using OpenSSL, enabling
websites to securely pass credit card and other sensitive information
over the Internet.2
Meanwhile, the project continued to be informally managed by a
small handful of volunteers. A security consultant to the U.S.
Department of Defense, Steve Marquess, noticed that one contribu-
tor, Stephen Henson, was working full time on OpenSSL. Curious,
Marquess asked him what he did for income, and was shocked to
learn that Henson made one-fifth of Marquess’s salary.
Marquess had always considered himself to be a strong programmer,
but his skills paled in comparison to Henson’s. Like others, Marquess
had mistakenly assumed that someone as talented as Henson would
have a comfortable salary to match.
Henson had been working on OpenSSL since 1998. Marquess was
newer to the project, joining in the early 2000s, and had worked
with Henson for several years before learning of his income situation.
2
http://news.netcraft.com/
archives/2014/04/08/
half-a-million-widely-trust-
ed-websites-vulnerable-to-
heartbleed-bug.html
1 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
Having worked with the Department of Defense, Marquess saw how
critical OpenSSL was, not just to their software, but to other indus-
tries around the world, from enterprise to aeronautics to health care.
Until that moment, he had “always assumed, (as had the rest of the
world) that the OpenSSL team was large, active, and well resourced.3” In
reality, OpenSSL wasn’t even able to support one person’s work.
Marquess decided he wanted to help. Although he contributed code
occasionally, he realized he could fill a more critical role on the
business side. Marquess started out by arranging small consulting
contracts through an existing nonprofit to help keep OpenSSL alive
in its leanest years.
As the volume of contracts grew, Marquess created the OpenSSL
Software Foundation (OSF) to provide an official vehicle for revenue.
Despite the number of individuals and companies relying on their
software, OSF never received more than $2,000 in donations per
year. Gross revenues (which came from consulting and contract
work) never broke $1M, and much of that went toward security-re-
lated testing (which could cost hundreds of thousands of dollars)
and server costs.
There was enough to pay the salary of one developer, Stephen
Henson. That meant that two-thirds of the Web relied on encryption
software maintained by just one full-time employee.
The OpenSSL team continued to work in relative obscurity until April
2014, when a Google engineer named Neel Mehta stumbled upon a
major flaw in OpenSSL’s software. Two days later, another engineer
at the Finnish company Codenomicon discovered the same problem.
Both of them immediately contacted the OpenSSL team.
3
Email interview with
Steve Marquess
1 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
That bug, nicknamed Heartbleed, had been included in a 2011
update. It had gone unnoticed for years. Heartbleed could allow any
sophisticated hacker to capture secure information being passed to
vulnerable web servers, including passwords, credit card information,
and other sensitive data.
Joseph Steinberg, a cybersecurity columnist for Forbes, wrote that
“some might argue that [Heartbleed] is the worst vulnerability
found...since commercial traffic began to flow on the Internet.” 4
Thanks to wide media reporting, much of the nontechnical world
became familiar with the security bug, at least by name. Major
services like Instagram, Gmail and Netflix were affected by
Heartbleed.5 Reporters also drew attention to OpenSSL itself, and
how its team had struggled for years to support their work. OpenSSL
was a known concern among security experts, but the team did not
have adequate resources or attention to address the issues.
Of Heartbleed, Marquess wrote, “The mystery is not that a few over-
worked volunteers missed this bug; the mystery is why it hasn’t
happened more often.”
People expressed their support by sending donations to the founda-
tion. Although Marquess was grateful for their enthusiasm, the first
round of donations came out to roughly $9,000: not nearly enough
to sustain a team.
4
http://www.forbes.
com/sites/joseph-
steinberg/2014/04/10/
massive-internet-security-
vulnerability-you-are-at-
risk-what-you-need-to-do/
5
http://mashable.
com/2014/04/09/heart-
bleed-bug-websites-affect-
ed/#01gtseEchaqa
1 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
Marquess took to the Internet to make an impassioned public plea
for funding:
“
These guys don’t work on OpenSSL for money. They don’t do it
for fame (who outside of geek circles ever heard of them or
OpenSSL until ‘heartbleed’ [sic] hit the news?). They do it out of
pride in craftsmanship and the responsibility for something
they believe in.
It takes nerves of steel to work for many years on hundreds of
thousands of lines of very complex code, with every line of code
you touch visible to the world, knowing that code is used by
banks, firewalls, weapons systems, web sites, smart phones,
industry, government, everywhere. Knowing that you’ll be
ignored and unappreciated until something goes wrong.
There should be at least a half dozen full time OpenSSL team
members, not just one, able to concentrate on the care and
feeding of OpenSSL without having to hustle commercial
work. If you’re a corporate or government decision maker in a
position to do something about it, give it some thought. Please.
I’m getting old and weary and I’d like to retire someday. 6
After Heartbleed, OpenSSL finally got more of the funding it
needed—at least for now. They currently have enough money to pay
four full-time employees for three years. But a year and a half into
that funding, Marquess isn’t sure what will come next.
Marquess said that Heartbleed was a boon for them, admitting it
was a “little ironic” that publicity had helped elevate their cause. But
after funding runs out and the world moves on, Marquess thinks
6
http://veridicalsystems.
com/blog/of-money-re-
sponsibility-and-pride/
1 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
they could be back in the same situation as pre-Heartbleed, and
perhaps even worse: the client work that took Marquess years to
build has dried up, since the team works full-time on OpenSSL right
now and no longer has time for contracts.7
Marquess himself is approaching retirement. He is the only person
willing to handle the business and operational tasks associated with
OpenSSL, including taxes, sourcing client work, and managing
donors. The rest of his team prefers to focus on writing and main-
taining code. He can’t hire someone else into his position when he
retires, either, because he currently doesn’t take an income.
Marquess remarked, “I don’t know that we can hold this together for
more than a couple of years”.8
OpenSSL’s story is not unique, and in many ways, Marquess thinks
they are the lucky ones. Countless other projects continue to go
unheard of and unsupported. These projects make up the critical
digital infrastructure that powers today’s software, and in turn, every
aspect of our daily lives.
Checking email, reading the news, checking stock prices, shopping
online, going to the doctor, calling customer service—whether we
realize it or not, everything we do is made possible by projects like
OpenSSL. Without them, the technology that modern society relies
upon simply could not function.
Many of these projects are built and maintained by volunteers and
offered to the public for free. Anyone, from Facebook to an amateur
programmer, can use that code to build their own apps. And they do.
If it sounds unbelievable that, as Marquess puts it, a “ragtag group of
7
Phone interview with Steve
Marquess
8
Email interview with Steve
Marquess
1 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
amateurs could outcompete huge corporations with their money and
resources,” 9 consider how this work reflects the rise of peer-to-peer
collaboration around the world.
Unlikely startups like Uber or AirBnB exploded into major corporate
powerhouses in just a few years, challenging longstanding industries
like transportation and hospitality. Musicians make a name for
themselves through YouTube or Soundcloud instead of big record
labels. Creative people fund their ideas through crowdfunding
platforms like Kickstarter or Patreon.
Similarly, these infrastructure projects sprang from passionate,
creative developers who thought “I could do this better,” collaborat-
ing to build and release code to the world. The difference is that
millions of people rely on this code to lead functional daily lives.
Because code is less charismatic than a hit YouTube video or
Kickstarter campaign, there is little public awareness of and appreci-
ation for this work. As a result, there is not nearly enough institu-
tional support for the output that sparked an information revolution.
But we can’t ignore it for much longer.
In the past five years, our reliance on software, and the free and
public code that supports it, has accelerated. Technology has worked
its way into every aspect of our lives. And the more people use
software, the more software gets built, and the more work is
required to maintain it all.
Every successful startup needs public infrastructure to succeed, yet
no one company is motivated to act on its own. As the world blazes
ahead into a modern age of startups, code and technology,
9
Phone interview with Steve
Marquess
1 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
I N T R O D U C T I O N
infrastructure continues to lag behind. The cracks in the foundation
are not obvious right now, but they are widening. After years of
unprecedented growth that propelled us into a new era of wealth
and prosperity, we must act now in order to ensure that the world
we built in such a short period of time does not come unexpectedly
crashing down.
To understand how to protect our future, first we need to understand
software itself.
History and Background
of Digital Infrastructure
"Open source became a movement –
a mentality. Suddenly infrastructure
software was nearly free."
– Mark Suster, Upfront Ventures
1 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
10
https://instagram.com/
about/legal/libraries/
How software gets built
Every website or mobile app we use, no matter how simple, is made
up of many smaller components, just as a building is made up of
bricks and concrete.
For example, imagine you want to post a photo to Facebook. You
open your Facebook mobile app, which triggers Facebook’s software
to show your news feed.
You upload a photo from your phone, add a comment, then hit
“submit.” Another part of Facebook’s software, responsible for storing
data, remembers who you are and posts the photo to your profile.
Finally, a third part of Facebook’s software takes the information
that you typed into your phone and shows it to all your friends
around the world.
Although these interactions take place on Facebook, Facebook did
not actually build all the pieces necessary to make it possible for
you to post to their app. Instead, they use free, public code, made
available on the Internet by volunteers for anybody to use. Facebook
does not publicly list the projects they use, but another company
they own, Instagram, lists and thanks some of these projects on
their homepage and mobile app.10
Using public code is more efficient for a company like Facebook than
building every piece themselves. Building software is like construct-
ing a building. A construction company wouldn’t build its hammers
and drills from scratch, or source and chop all of the lumber them-
selves. Instead, it buys the tools from a hardware store, and the
2 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
lumber from a third-party supplier, to make the job go faster.
Thanks to permissive licenses, companies like Facebook or Instagram
are not obligated to pay for this code, but are free to profit hand-
somely from it. This is not unlike a trucking company (Instagram)
using a highway (public code) to transport goods for commercial
purposes (Instagram’s app).
Mike Krieger, one of Instagram’s cofounders, emphasized this point
in 2013, encouraging other founders to “borrow instead of building
whenever possible. There are hundreds of fantastic [tools]...that can save
you time and let you focus on actually building out your product.” 11
Some tools that a software company uses are:
Frameworks: Software frameworks provide basic scaffolding and struc-
ture. Think of it as the blueprint for the entire application. Like a blue-
print, a framework lays out how the application might look on mobile, or
how information gets saved into the database. Examples include Rails
and Django.
Languages: Programming languages are the communication backbone
of software, like construction workers on a building site using English to
communicate. Languages help different software components perform
actions and talk to one another. For example, if you create an account on
a website and click “sign up,” that application might use the languages
JavaScript and Ruby to tell the database to save your information.
Popular examples of languages include JavaScript, Python and C.
Libraries: Libraries are “prefabricated” pieces of code that make it faster
to write software, just as a construction company might buy prefabricat-
ed windows instead of building them from scratch. For example, instead
11
https://opbeat.com/blog/
posts/picking-tech-for-your-
startup/
2 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
of a developer writing their own user login system for an application,
they can use a library called OAuth. Instead of writing their own code to
visualize data on a website, they can use a library called d3.
Databases: Databases store information (for example, user profiles,
email addresses, or credit card information) so that it can be used
throughout the application. Whenever an application needs to remember
something about you, it stores that information in the database. Popular
examples of databases include MySQL and PostgreSQL.
Web and application servers: Web and application servers facilitate
various requests that users make on the Internet. They can be thought of
as dispatchers or telephone operators. For example, if you type a URL
into your browser bar, a Web server will send back the associated page.
If you send a message to a friend on Facebook, your message first goes
to an application server, which determines who you are trying to contact,
then routes your message to your friend’s account. Popular examples of
Web servers are Apache and Nginx.
Some of these tools, such as servers and databases, cost money,
especially as companies scale. This makes them easier to monetize.
For example, Heroku, a cloud-based platform that offers server and
database support, offers basic services for free, but charges for
higher levels of data or traffic. Heroku powers many major websites,
including Toyota and Macy’s, and was acquired by Salesforce.com in
2010 for $212M.12
Other types of developer tools, such as frameworks, many libraries,
and programming languages, are harder to charge for, and are often
built and maintained by volunteers.
Because these types of tools look more like information goods than
12
http://techcrunch.
com/2010/12/08/breaking-
salesforce-buys-heroku-for-
212-million-in-cash/
2 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w S O F T wA R E G E T S B U I LT
services that can be turned on or off, charging for them would
severely limit their adoption. As a result, anyone—whether a bil-
lion-dollar company or a teenage coder—can use these components
to build their own software for free.
For example, one of the libraries that Instagram uses, according to
its homepage, is Appirater. Appirater is a library that makes it easy
to remind iPhone users to rate a mobile app. It was created in 2009
by Arash Payan, a freelance developer based in Los Angeles. Payan
does not make any income from the project.
It is the equivalent of lumberyards, concrete plants and hardware
stores donating their raw materials to a construction company, then
continuing to support the company’s needs.
2 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
How not charging for software
transformed society
An expected first reaction is: “Why did these developers make their
software free? Why not just charge for it?”
The reasons for public software lie in its rich political and social
history. But first, let’s examine a hard truth: our society wouldn’t be
where it is today if developers hadn’t made it free.
Free software makes it exponentially cheaper
and easier to build software.
Uber, a transportation service, recently announced that some devel-
opers had built a way to request cars through Slack, a team collabo-
ration app, instead of using Uber’s own mobile app. The project was
completed in 48 hours by a team of developers at App Academy, a
coding school.
Uber noted that the team was able to get the project done quickly
because they “implemented open libraries such as rails, geocoder, and
unicorn [sic] to speed up development and build on a solid
foundation.”13
In other words, the amount of coding that the team had to do them-
selves was greatly reduced because they were able to use free
libraries built by others.
Ruby Geocoder, for example, is a library built in 2010 and main-
tained by a freelance developer named Alex Reisner. Geocoder
13
https://devblog.uber.com/
uber-slack-a-weekend-a-sto-
ry-of-open-apis/
2 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
makes it easy for an application to look up street addresses and
geographic coordinates.14
Unicorn is a server, built in 2009, which is maintained by a team of
seven contributors listed on its website and headed by a developer
named Eric Wong.15
It’s easier than ever to build new software, because there are more
prefabricated pieces of code to draw from. To return again to the
construction metaphor instead of constructing every piece of a
building from scratch, one can simply buy a prefabricated framework,
foundation and walls, then put them together like Legos.
As a result, new developers are minted every day, even if they them-
selves don’t necessarily know how to build the tools from scratch.
The Bureau of Labor Statistics expects the number of employed
software developers to rise 22% from 2012 to 2022—much faster
than average, compared to other occupations.16
Free software is directly responsible for
today’s current startup renaissance.
The cost of starting a company has dropped dramatically since the
first dotcom boom in the late 1990s. Venture capitalist and former
entrepreneur Mark Suster reflected on his experience in a
2011 blog post:
“
When I built my first company starting in 1999 it cost $2.5
million in infrastructure just to get started and another $2.5
million in team costs to code, launch, manage, market & sell
our software. […]
14
http://www.alexreisner.com/
about
15
http://unicorn.bogomips.org/
CONTRIBUTORS.html
16
http://www.bls.gov/ooh/
computer-and-informa-
tion-technology/software-de-
velopers.htm
2 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
The first major change in our industry was imperceptible to us
as an industry. It was driven by the introduction of open-
source software, most notably what was called the LAMP stack.
Linux (instead of UNIX), Apache (web server software), MySQL
(instead of Oracle) and PHP. Of course there were variants –
we preferred PostGres to MySQL and many people used other
programming languages than PHP.
Open source became a movement – a mentality. Suddenly infra-
structure software was nearly free. We paid 10% of the normal
costs for the software and that money was for software support. A
90% disruption in cost spawns innovation – believe me.17
The availability of free software components today (as well as
cheaper hosting and cloud services, like Amazon Web Services and
Heroku) means that a technology startup no longer requires millions
of dollars to get off the ground. Entrepreneurs can conceivably
release a product and find a market without spending a single dollar,
then raise money from venture capitalists only after they’ve shown
strong signs of demand.
Alan Schaaf, the founder of Imgur, a popular image-sharing site and
one of the top 50 most-trafficked sites in the world, famously said
that the only money he ever spent to start the company was seven
dollars to purchase the domain name. Imgur was profitable, and
Schaaf did not take any outside money for 5 years before raising $40
million from VC firm Andreessen Horowitz in 2014.18
Venture capitalists and other institutional investors, in turn, have
started writing smaller checks to companies, giving rise to new
17
http://www.bothsidesoft-
hetable.com/2011/06/28/
understanding-chang-
es-in-the-software-ven-
ture-capital-industries/
18
http://articles.latimes.
com/2014/apr/03/business/
la-fi-tn-imgur-40-million-
funding-20140402
2 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
subsets of investing, including:
Seed stage: Venture firms providing the first round of funding, rather
than later-stage growth capital
Micro VCs: Venture firms loosely defined as less than $50 million under
management
Accelerators: Firms that provide small amounts of capital, often less
than $50,000, as well as advice and mentorship to early-stage compa-
nies
$10M can fund a hundred companies today, compared to one or two
in the 1990s.
Free software made it easier for people of all
demographics to learn to code, making
technology accessible to the world.
If you wanted to learn how to code at home today, you might start
by learning Ruby on Rails. Rails is a popular software framework and
Ruby is a programming language. Anyone with Internet access can
install these tools on any computer for free. Because they are free,
they are also very popular, which means there is plenty of informa-
tion online to help you get started, from formal tutorials to ques-
tion-and-answer forums. This means that learning how to code is as
accessible as teaching oneself to read and write English or French.
By comparison, software frameworks and languages that were not
open source required paying for access, using specific operating
2 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
systems or other tools, and agreeing to licensing constraints that
could affect patents for any software built using the framework.
Today, it is difficult to find examples of frameworks and languages
that are not open source. One of the most famous examples of a
proprietary software framework is .NET, developed and released in
2002. In 2014, Microsoft announced that they were releasing a
version of .NET as an open source project, called .NET Core.
Audrey Eschright, a software developer, wrote about how open
source software helped her learn to code as a teenager in the
late 1990s:
“
I wanted to learn to program but I didn’t have money. Not the
college student version of not having money—my family situa-
tion was low-income, but also highly chaotic….This is going to
seem strange to anyone [today], but at the time there were
basically two options for someone who wanted to write real
software: you could use a PC with Windows and pay extra for
Microsoft’s development tools, or you could have access to a
Unix system and use gcc….So my goal became to get access to
accounts on Unix systems so I could learn how to write code
and do cool stuff.19
Jeff Atwood, a longtime .NET developer, described his decision to
use Ruby for a new software project, Discourse, in 2013:
“
Getting up and running with a Microsoft stack is just plain too
hard for a developer in, say, Argentina, or Nepal, or Bulgaria.
Open source operating systems, languages, and tool chains are
the great equalizer, the basis for the next great generation of
19
http://lifeofaudrey.com/
essays/love_and_money.html
2 8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
programmers all over the world who are going to help us
change the world.20
With the explosion of startups have come a number of initiatives to
teach people to code, whether they are children, teenagers, under-
served minorities, women or career switchers. Some examples
include Women Who Code, Django Girls, Black Girls Code, One
Month and Dev Bootcamp.
Some of these organizations are free, while others charge tuition. All
of them rely upon free software to teach their students. For example,
Django Girls has taught over 2,000 women to code, in 49 countries
around the world.21 Although the organization did not develop
Django themselves, they are able to use Django, which students
download and use for free, in their curriculum
Dev Bootcamp teaches career switchers to code, preparing everyone
from English teachers to military veterans to become professional
software developers. The program costs $12-14,000. Dev Bootcamp
teaches Ruby, JavaScript, Ruby on Rails and SQL, among other com-
ponents. All of these components are free for students to download
and use, and Dev Bootcamp does not have to pay to use these mate-
rials. Dev Bootcamp was recently acquired by Kaplan for an undis-
closed sum in 2014.22
If such critical pieces of software were not free, people from all
walks of life would not be able to take part in today’s technology
renaissance. There are still numerous social and economic barriers
that prevent many more from participating, as well as costs associat-
ed with physical equipment like laptops and an Internet connection,
but the programming tools themselves do not cost money.
21
https://djangogirls.org/
22
https://www.edsurge.com/
news/2014-06-25-dev-
bootcamp-no-longer-boot-
strapped-acquired-by-kaplan
20
http://blog.codinghorror.
com/why-ruby/
2 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
A brief history of free and public
software and the people who made it
Now that we’ve covered how making software free benefits society,
let’s look at how the software itself came about.
Although we’ve used the term “free software” to refer to software
that does not cost any money to its users, the term “free software” is
actually a highly contextualized term that refers specifically to the
software’s license properties. Free software advocates emphasize
that “free” refers to a political freedom rather than the price, and
sometimes use the Spanish word libre (meaning freedom, as opposed
to gratis, the Spanish word for free price) to clarify the distinction.
In the 1970s, when computers were still a nascent technology, pro-
grammers had to build their own computers and write custom
software themselves. Software was not yet standardized and was
not considered to be a monetizable product.
In 1981, IBM introduced the “IBM PC,” or “Personal Computer,”
bringing hardware to a mass market. Within a couple of years, custom
computer setups fell away as everybody adopted the IBM standard.
IBM became the dominant computer within a highly fractured
personal computer market, capturing over half of market
share by 1986.23
Along with standardized hardware, then, came an opportunity for
standardized software. Suddenly everyone wanted to turn software
into a business. IBM hired a then-unknown company called Microsoft
to write the operating system for its new PC. That operating system,
23
http://arstechnica.com/busi-
ness/2012/08/from-altair-to-
ipad-35-years-of-personal-
computer-market-share/2/
3 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
MS-DOS, was released in 1981. Other companies began to follow
suit, offering software under commercial licenses. These licenses
prevented the user from copying, modifying or redistributing
the software.
Proprietary software still exists today: for example, Adobe
Photoshop, Microsoft Windows, or GoToMeeting. While proprietary
software can be profitable for the company that builds and licenses
the product, its restrictions also limit its scope and distribution. Any
changes to the software’s design or implementation have to origi-
nate from the company itself. And proprietary software is expensive,
often costing hundreds of dollars and permitting the designated
purchaser to use only that copy.
Understandably, some computer scientists felt concerned about the
closed and proprietary direction that software was taking, believing
that it undermined the true potential of software. Richard Stallman, a
programmer at the MIT Artificial Intelligence Laboratory, felt particu-
larly strongly about the need for software to be free and modifiable.
Over the next couple of years, as several of his colleagues began
working on proprietary software projects, Stallman felt he could not
ignore the situation any longer. In 1983, he launched GNU, a free
operating system, and in doing so sparked what came to be known
as the “free software movement,” which galvanized a group of
people who believed that software could have a greater reach and
benefit to society if it were made freely available. Stallman later
founded the Free Software Foundation in 1985 to support GNU and
other free software efforts.
The Free Software Foundation defines free software as “software
3 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
that gives the user the freedom to share, study and modify it.”24 GNU
defines four freedoms associated with such software:
Freedom 0: The freedom to run the program as you wish, for any pur-
pose.
Freedom 1: The freedom to study how the program works, and change it
so it does your computing as you wish.
Freedom 2: The freedom to redistribute copies so you can help your
neighbor.
Freedom 3: The freedom to distribute copies of your modified versions to
others. By doing this you can give the whole community a chance to
benefit from your changes.25
The free software movement was, and continues to be, deeply
rooted in social advocacy. In 1998, when Netscape released the
source code for its popular browser, the conversation began to shift
from politics to technology.
Some technologists believed that focusing on the practical benefits
of free software would help bring its message to a wider audience.
For example, they pointed out that free software was cheaper to
build and could lead to superior software, because the public can
find bugs and contribute fixes. This type of pragmatism was distinct
from the moral obligation that Stallman and his supporters believed
they had to promote free software.
24
https://www.fsf.org/about/
what-is-free-software
25
https://www.gnu.org/philos-
ophy/free-sw.html
3 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
These technologists gathered in Palo Alto for a strategy session.
Christine Peterson, a nanotechnologist in attendance, suggested the
term “open source.”26 Shortly after, two attendees, Bruce Perens and
Eric Raymond, created the Open Source Initiative.
Software whose source code is publicly available is called “open
source.” It is analogous to being able to open up the hood of a car
and see what's inside, instead of having the engine sealed off from
view. Open source licenses always include a provision that allows
the public to use, modify, and redistribute the code. In this sense,
there is no legal difference between free software and open source
licenses. Indeed, some people have called open source a “marketing
campaign” for free software.
However, the most important distinction is the differing cultures
that each movement created. The open source software movement
broke away from the social and political associations with free
software by instead focusing on the practical benefits of software
development and encouraging wider creative and business applica-
tions. As Stallman himself wrote, “Open source is a development
methodology; free software is a social movement.” 27
Although “free software” and “open source software” are often
discussed together, they are politically distinct, the former being
more closely associated with ethics and the latter with pragmatism.
(The remainder of this paper will use the term “open source” to
emphasize the critical role it plays in software infrastructure.)
Open source created space for growing distinctions and styles of
software development, free from ethical complexities. One organiza-
tion might release its source code to the public, but only accept
26
http://opensource.org/
history
27
http://www.gnu.org/philos-
ophy/open-source-misses-
the-point.en.html
3 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
changes from a couple of contributors. Another organization might
require that the code is developed in public and accept changes
from anyone, so that more people could take part in the process. In
1997, Raymond wrote an influential essay called The Cathedral and
the Bazaar (later published as a book in 1999) which explored
these styles.
Today, open source has become a popular software practice for many
reasons, in terms of both efficiency and cost. It’s also how much of
digital infrastructure gets built. We’ve discussed how making this
software more freely available has benefitted all of society, but
open source has benefits for its creators, as well.
Open source is cheaper to build.
Before open source software existed, technology firms treated
software like any other paid product: a team of employees built
new software internally, then sold it to the public. While this
meant software had a clear business model, it also came with
increased development costs. Proprietary software requires a
full-time paid team to support its development, including develop-
ers, designers, marketers, and lawyers. It’s far cheaper to simply
crowdsource software, built and maintained by a community of
volunteer developers.
Open source is easier to distribute.
People are more likely to adopt software that is free to use and
modify than software that costs hundreds of dollars to license and
was developed in a black box. Not only will developers want to use
it for free, but they might be inclined to tell their friends to use it as
3 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
well, amplifying the effects of its distribution.
Open source is flexible to customize.
Open source software is free to copy and modify for one’s own
purposes, with various levels of permissiveness. This means that if a
developer wants to make improvements to a piece of software, he or
she can copy the project and change it. (This practice is called
“forking.”)
Many popular projects started as a modification of an existing piece
of software, including WordPress (content management system that
powers 23% of the world’s websites28), PostgreSQL (one of the
world’s most popular and fast-growing databases29), Ubuntu (operat-
ing system used by 10% of the world’s websites30), and Firefox (one
of the most popular web browsers in the world31).
WordPress began as an offshoot of an existing blogging project, b2
(also known as cafelog). Two software developers, Matt Mullenweg
and Mike Little, decided they wanted a better version of b2 and
subsequently forked the project. Mullenweg decided to fork b2,
rather than another project called TextPattern, because b2’s licenses
were more permissive. His original thought process from 2003 is
described below:
“
What to do? Well, TextPattern looks like everything I could ever
want, but it doesn’t look like it’s going to be licensed under
something politically I could agree with. Fortunately, b2/
cafelog is GPL [GNU General Public License, a free software
license], which means that I could use the existing codebase to
create a fork.[...]
28
https://en.wikipedia.org/wiki/
WordPress
30
http://w3techs.com/tech-
nologies/details/os-ubuntu/
all/all
29
http://www.zdnet.com/
article/as-dbms-wars-contin-
ue-postgresql-shows-most-
momentum/
31
https://www.netmarketshare.
com/browser-market-share.
aspx?qprid=0&qpcustomd=0
3 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
The work would never be lost, as if I fell of [sic] the face of the
planet a year from now, whatever code I made would be free to
the world, and if someone else wanted to pick it up they could.32
If software were developed in a closed, proprietary environment,
developers would have no ability to change that software, unless
they worked at the company. If they tried to build their own
improved version to imitate the original, they might face intellectual
property concerns. With open source software, the developer can
simply change the software him- or herself and release it to the
public, as Mullenweg did. Open source software, then, enables rapid
proliferation of ideas.
Open source gives employees more
bargaining power.
Software takes time to learn, whether it’s a new programming
language or framework. If every company used a proprietary set of
tools, developers would be less inclined to change jobs, because
their technical skills only apply to that one place of employment.
They would have to be retrained in a new technology at their next
place of employment.33
When companies use open source technology, a developer has a
reusable set of skills, which leads to more freedom to work wherever
he or she prefers. For example, multiple companies might use the
same Ruby programming language in their software. In addition, if
the company’s product itself is open source, the output belongs to
the developer as much as it does the company. The developer can
take their work with them if they choose to leave the company
(versus, for example, being constrained by a non-disclosure
32
http://ma.tt/2003/01/
the-blogging-software-di-
lemma/
33
Thanks to Karl Fogel for
reminding me of this benefit.
3 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
A B R I E F H I S T O R y O F F R E E A N D p U B L I C S O F T wA R E A N D T H E p E O p L E w H O m A D E I T
agreement, if the code were proprietary). All of these benefits give
the employee more agency than he or she would have had with
proprietary software. Many companies today advertise their use of
open source software as a recruiting tactic, because it favors
the developer.
Open source has the potential to be more
stable and secure.
Theoretically, when a software project has many active contributors
and a thriving community, the code should be less vulnerable to
security flaws and disruptions in service. That’s because more
people would ideally be reviewing the code, looking for bugs and
fixing any problems that they see. By contrast, in a proprietary
software environment, the only people who would see the code
would be the team of people developing it. Instead of, say, 20 em-
ployees looking at the code at Oracle, a popular open source project
could have 2,000 volunteers reviewing the code for vulnerabilities.
(Note that this belief does not always match reality, and has created
the opposite problem: people mistakenly believing that more people
are reviewing open source software than actually are, when in
reality nobody is taking responsibility. This will be discussed in a
later section.)
Open source software clearly has a number of benefits. How do
these projects collectively fit into a broader ecosystem?
How The Current
System Works
"A lot of [our] members work in tech, either on
the web or on software. As a result, they work
on things that don’t last very long."
– Tim Hwang, Bay Area Infrastructure Observatory
3 8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
What is digital infrastructure, and how
does it get built?
Earlier in this report, we compared building software to constructing
a building. Those public software components are what collectively
form our digital infrastructure. To understand this concept, consider
how physical infrastructure works.
Everybody relies upon a number of physical infrastructure projects
to facilitate our day-to-day lives. Turning our lights on, driving to
work, washing dishes: we may not often think about where our
water, roads or electricity come from, but we have physical infra-
structure to thank. Private and public partners work together to
build and maintain our transportation, sewage, water, electric, and
communication systems.
Similarly, although we do not often see or think about the apps and
software we use on a daily basis, all of them rely upon free and
public code to function. Together, in an increasingly digital society,
these open source projects make up our digital infrastructure.
However, there are several major differences between physical and
digital infrastructure, which affect how the latter is built and
sustained. In particular, there are differences in cost, maintenance,
and governance.
Digital infrastructure is faster and
cheaper to build.
Building physical infrastructure is notoriously expensive. These
3 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
projects are physically large in scale and can take months or years
to complete.
The United States federal government spent $96 billion on infra-
structure projects in 2014, and state and local governments spent a
combined $320 billion in the same year. Slightly less than half (43
percent) of that spending went towards new construction; the re-
mainder was spent on operations and upkeep of existing
infrastructure.34
Proposing and funding new physical infrastructure projects can be
an extended political process. Transportation funding has been a
contentious topic in the United States for the past decade, where
the federal government faces a $16 billion shortfall for transporta-
tion funding.35 U.S. Congress recently passed the first multi-year
transportation bill in a decade, setting aside $305B for highways,
after years of political obstacles that prevented funding infrastruc-
ture from being funded more than two years at a time.36
Even after a new infrastructure project has been earmarked and
funded, it can take years to complete, fraught with uncertainties and
unforeseen obstacles. The Central Artery/Tunnel project in Boston,
Massachusetts, also known as the Big Dig, took nine years from
planning to initial construction. Its projected cost was $2.8 billion,
with a scheduled completion date for 1998. In reality, the project
ended up costing $14.6 billion and was not completed until 2007,
making it the most expensive highway project in the United States.37
By contrast, digital infrastructure does not have any of the costs
associated with building physical infrastructure, such as zoning a
location or purchasing materials. This makes it easy for anyone to
34
https://www.cbo.gov/publi-
cation/49910
35
http://thehill.com/policy/
transportation/255264-mc-
carthy-were-going-to-make-
sure-we-get-the-highway-
bill-done
36
http://www.wsj.com/
articles/house-passes-
five-year-transportation-
bill-1449167609
37
https://en.wikipedia.org/wiki/
Big_Dig
4 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
propose a new idea and get started in very little time.
MySQL, the second most popular database in the world38 and part of
a critical collection of tools that helped launch the first tech boom,
was published by its authors, Michael Widenius and David Axmark,
in May 1995. It took less than two years to develop.39
Ruby, a programming language, took less than three years from its
initial conception in February 1993 to public release in December
1995. Its author, computer scientist Yukihiro Matsumoto, decided to
create the language after a conversation with his colleagues.40
Digital infrastructure changes frequently.
Because digital infrastructure is so cheap to build, the barriers to
entry are lower, and software tools change more frequently.
Physical infrastructure is built to last, which is partially why these
projects take so long to plan, fund, and build. The London
Underground, London’s public rapid transit system, was built in 1863;
the underground tunnels dug for the subway system are still in use
today.41 The Brooklyn Bridge, which connects the boroughs of
Brooklyn and Manhattan in New York City, was completed in 1883
and did not undergo any major renovations until 2010, over one
hundred years later.
Digital infrastructure not only requires frequent maintenance and
upkeep to be compatible with other software components, but its
usage and adoption changes frequently as well. A bridge built in the
middle of New York City will have fairly consistent and guaranteed
usage, commensurate with the rise or decline of the city’s
38
http://www.zdnet.com/
article/as-dbms-wars-contin-
ue-postgresql-shows-most-
momentum/
39
https://en.wikipedia.org/wiki/
MySQL
40
https://en.wikipedia.org/wiki/
Ruby_(programming_lan-
guage)
41
https://en.wikipedia.org/wiki/
London_Underground
4 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
population. But a programming language or framework could be
extremely popular for several years, then fall out of favor when
something faster, more efficient, or simply trendier comes along.
For example, the graph below shows activity by source code devel-
opers using several different programming languages. The language
C, one of the most fundamental and widely used languages, has
dropped in market share as newer languages have entered the
market. Python and JavaScript, two currently popular languages, are
seeing a moderate rise over time. And Go, which was developed in
2007, has seen more activity in recent years.42
Tim Hwang, who runs the Bay Area Infrastructure Observatory,
which organizes group visits to physical infrastructure sites,
remarked on the difference in a 2015 interview with California
Sunday Magazine:
“
A lot of [our] members work in tech, either on the web or on
42
Monthly code commits
by language. Commits
including multiple languages
are counted once for each
language. Black Duck’s Open
Hub pulls from over 650,000
open source projects. Data
accessed May 20, 2016.
https://www.openhub.net/
languages/compare
4 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
software. As a result, they work on things that don’t last very
long. Their approach is, ‘We just hacked it, and we pushed it out
live,’ or ‘We just released it, and we can work out bugs later.’ A lot
of infrastructure is built for 100 years. You can’t have bugs. If you
do, the building will fall down. You can’t iterate it. It’s a practice
that exists outside of the members’ day-to-day experience.43
Because digital infrastructure changes so frequently, however, older
projects have a harder time finding contributors, because many
developers prefer to work on new and exciting projects. This phe-
nomenon has been referred to as “magpie developer” syndrome,
where developers are attracted to “new and shiny” things, instead of
the technology that works best for them and their users.44
Digital infrastructure does not have a central
organization to determine what gets
built or used.
Finally, perhaps the most striking difference between digital and
physical infrastructure, and one of the biggest challenges to its
sustainability, is that there is no organizing body to determine what
gets built or used in digital infrastructure.
Transportation, sewage and water projects are generally owned and
managed by the government, whether federal, state or local.
Communication and electric projects tend to be managed by private
companies. In both situations, infrastructure projects are funded by
a mix of private and public actors, either from the federal budget,
private company financing, or metered user fees.
In a stable, developed country, we rarely think about whether or
43
https://story.californiasunday.
com/tim-hwang-infrastruc-
ture-tourist
44
http://blog.codinghorror.
com/the-magpie-developer/
4 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
how a road gets built or a building has electricity. Even for projects
that are privately owned or funded, the federal government has a
vested interest in guaranteeing that physical infrastructure gets built
and maintained.
Digital infrastructure projects, on the other hand, are conceived of
and built from the bottom up. It is akin to a group of citizens getting
together and deciding they want to build a bridge or create their
own sewage system. There is no authoritative body whose formal
permission is required to create new digital infrastructure.
The Internet itself does have two major governing bodies that help
set standards: the Internet Engineering Task Force and World Wide
Web Consortium.
The Internet Engineering Task Force (IETF) helps develop and set
voluntary standards for how information gets passed around the
Internet. For example, they are the reason why URLs start with
“HTTP”. They are also the reason why we have IP addresses—unique
identifiers assigned to your computer when it is connected to a
network. Originally a working group within the United States gov-
ernment in 1986, the IETF became an independent, international
organization in 1993.45 The IETF itself is run by volunteers, and
there are no membership requirements: anyone from the public may
join simply by declaring him- or herself a member.
The World Wide Web Consortium (W3C) helps set standards for the
World Wide Web. It was founded by Tim Berners-Lee in 1994. The
W3C tends to focus more exclusively on web pages and documents
(they are, for example, the reason why web pages use HTML for
basic formatting). They maintain the standards around the markup
45
https://en.wikipedia.org/
wiki/Internet_Engineer-
ing_Task_Force
4 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
language HTML and stylesheet formatting language CSS, two basic
components of any web page. The W3C’s membership is slightly
more formalized, requiring an application and fee, and its members
range from businesses to universities to individuals.
The IETF and W3C help manage standards around the most funda-
mental pieces of the Internet, but the next layer up—choices about
which languages are used to build software, which frameworks to
build them with, or which libraries to include—are entirely self-man-
aged in the public domain. (Certainly, many proprietary software
projects, particularly those with heavy regulation, such as aeronau-
tics or health care, may have requirements on which tools are used.
They may even build proprietary tools for their own use.)
With physical infrastructure, if the government builds a new bridge
between San Francisco and Oakland, that bridge will certainly be
used. Similarly, when the W3C wants to set a new standard, such as
a new version of HTML, it is formally published and announced. For
example, in 2014, the W3C announced HTML5, the first major
revision of HTML since 1997, which had been in development for
seven years.
By contrast, when a computer scientist wants to create a new pro-
gramming language, he or she is free to publish it and it may or may
not be adopted. The bar for adoption is even lower for frameworks
or libraries: because they are easier to build, and easier for a user to
learn and implement, these tools are iterated more frequently.
More importantly, nobody is forcing or even strongly encouraging
anyone to use these projects. Some projects remain more academic
than practical; others are ignored completely. It is difficult to predict
4 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
w H AT I S D I G I TA L I N F R A S T R U C T U R E , A N D H O w D O E S I T G E T B U I LT ?
what gets used until others are actually using it.
Developers like to point to usefulness as an indicator of whether a
new project gets adopted or not. New projects should make an
improvement to an existing project, or solve a chronic problem, in
order to be deemed useful and worthy of adoption. When developers
are asked why their project got so popular, many of them will shrug
and simply say, “It was the best thing out there.”
Not unlike technology startups, new digital infrastructure projects
rely upon network effects for adoption. Getting a core group of devel-
opers excited, or a software company using the project, helps spread
the word. A catchy name, branding, or website can add to the proj-
ect’s novelty factor. A developer’s reputation within their respective
community also helps determine whether a new project
gets noticed.
However, in the end, a new digital infrastructure project can come
from just about anywhere, which means each project is managed
and sustained in very different ways.
4 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w A R E D I G I TA L I N F R A S T R U C T U R E p R O j E C T S m A N A G E D A N D S U p p O R T E D ?
How are digital infrastructure projects
managed and supported?
We’ve established that digital infrastructure is as critical to modern
society as physical infrastructure. Although digital infrastructure is
not subject to the high costs and political obstacles of physical
infrastructure, its decentralized nature also makes it harder to pin
down. Without a central governing body, how do open source
projects find the support they need?
In short, the answer is different for every project. However, there are
several places where projects might originate: within a company, as
a new business, or from an individual or community of developers.
Within a company
Sometimes, the project starts within a company. Here are a few
examples that demonstrate the different ways in which an open
source project might be supported by a company’s resources:
Go, the new programming language previously mentioned, was developed
at Google in 2007 by engineers Robert Griesemer, Rob Pike, and Ken
Thompson, who created Go as an experiment. Go is open source and
accepts contributions from the broader community. However, its core
maintainers are employed full-time by Google to work on the language.46
React is a new JavaScript library that is growing in popularity. React was
created by Jordan Walke, a software engineer at Facebook, for internal
use on Facebook’s news feed. An employee at Instagram (which is
owned by Facebook) wanted to use React, too, and eventually React was
open sourced, two years after its initial development.47 Facebook
46
https://en.wikipedia.org/
wiki/Go_(programming_lan-
guage)
47
https://www.quora.com/
How-was-the-idea-to-devel-
op-React-conceived-and-
how-many-people-worked-
on-developing-it-and-im-
plementing-it-at-Facebook/
answer/Bill-Fisher-17
4 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
dedicated a team of engineers to help maintain the project, but React
also accepts contributions from the public developer community.48
Swift, the programming language used for iOS, OS X, and other Apple
projects, is an example of a project that was only recently open sourced.
Swift was developed internally by Apple for four years and released as a
proprietary language in 2014. Developers could use Swift to write soft-
ware for Apple devices, but not contribute to the language’s core develop-
ment. In 2015, Swift was open sourced under the Apache License 2.0.49
The incentives for a company to maintain an open source project are
numerous. Opening up a project to the public can mean less work
for the company, which is essentially crowdsourcing improvements.
It builds goodwill and awareness among developers, who might then
be incentivized to use other company resources to build things.
Having an active community of developers creates a recruiting
pipeline for talent. And sometimes, open sourcing a project helps a
company strengthen their user base and brand, or even drown out
competition. The more market share a company can capture, even
through tools it gives away, the more influential it becomes. This is
not dissimilar to the “loss leader” concept of business.
Even if a project is created internally, if it is open sourced, that
project is free to use or modify according to the terms of an open
source license, and is not considered company intellectual property
in the traditional sense. Many company projects use standard open
source licenses that are considered acceptable by the broader devel-
oper community, such as Apache License 2.0 or BSD. However, in
some cases, companies add their own clauses. React, for example,
has an additional clause that could potentially cause patent claim
conflicts with React users.50 As a result, some companies and
48
https://en.wikipedia.org/wiki/
React_(JavaScript_library)
49
https://en.wikipedia.org/
wiki/Swift_(programming_
language)
50
https://github.com/face-
book/react/blob/master/
PATENTS
4 8
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
individuals are reluctant to use React, and the decision is frequently
portrayed as in conflict with open source principles.
As a new business
Some infrastructure projects take a traditional startup path, includ-
ing venture funding. A couple of examples are as follows:
Docker, perhaps the best-known contemporary example, helps software
applications run inside containers. (Containers provide a clean, tidy
environment for software applications that make them easier to run
anywhere). Docker started as an internal project within dotCloud, a
platform-as-a-service company, but became so popular that the founders
decided to make Docker the main focus of the company. The Docker
project was open sourced in 2013. Docker has raised $180M with an
estimated valuation of over $1B.51 Their business model is based on
support, private plans, and services. Docker’s 2014 revenue was less than
$10 million.52
Npm is a package manager to help Node.js developers share and
manage their projects, released in 2010. Npm raised nearly $11M in
funding since 2014 from True Ventures and Bessemer Ventures, among
others. Their business model focuses on paid features that support
privacy and security.
Meteor is a JavaScript framework that was first released in 2012. It was
incubated by Y Combinator, a prestigious startup accelerator that also
incubated companies like AirBnB and Dropbox. Meteor has received over
$30M in funding to date from firms including Andreessen Horowitz and
Matrix Partners.53 Meteor’s business model focuses on an enterprise
platform called Galaxy, released in October 2015, for operating and
managing Meteor applications.54
51
http://venturebeat.
com/2015/06/13/docker-
now-valued-at-1b-paid-some-
one-799-for-its-logo-on-
99designs/
52
http://www.bloomberg.com/
news/articles/2015-04-14/
docker-said-to-join-1-billion-
valuation-club-with-new-
funding
53
https://www.crunchbase.
com/organization/meteor
54
http://info.meteor.com/blog/
announcing-meteor-galaxy
4 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
The venture funding approach is relatively new, and growing rapidly.
Lightspeed Venture Partners found that from 2010-2015, venture
firms invested over $4B in open source companies, a tenfold increase
over the five previous years.55
Using venture capital to support open source projects has been met
with skepticism from developers (and even some venture capitalists
themselves), due to lack of clear business models and questionable
revenue to justify valuations. Steve Klabnik, a maintainer for the
language Rust, explains venture capital’s sudden interest in funding
open source:
“
I’m a VC. I need a large number of companies to exist to make
my money….I need costs to be low and profits to be high. I need
a healthy open source ecosystem to make this happen. So what
do I do?...VCs are realizing this story, and are starting to invest
in infrastructure. [...]
In many ways, the open source stuff is a loss leader, so that you
get hooked...and then use it for everything, even your closed
source code. This is a great business strategy, but it also places
GitHub at the center of this new universe. So for similar
reasons, a16z needs GitHub to be awesome to bootstrap every
open source ecosystem that will exist into the future….And a16z
has the money to ‘throw away’ on something they won’t get a
direct return out of, because they’re smart enough to invest
some of their fund in ecosystem development.56
GitHub, created in 2008, is a platform for code, available publicly or
privately in an easy-to-read environment. It hosts many popular
open source projects and, most importantly, has become the cultural
55
http://venturebeat.
com/2015/12/06/its-actually-
open-source-software-thats-
eating-the-world/
56
http://words.steveklabnik.
com/is-npm-worth-26mm
5 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
epicenter for open source’s explosive growth (to be discussed later
in this report).
GitHub did not take any venture capital until 2012, four years after
its founding. Before then, GitHub was a profitable company. Since
2012, GitHub has taken $350M in total venture capital funding.57
Andreessen Horowitz (or “a16z”), the $4B venture capital firm who
provided most of the capital in their first $100M round, stated it was
the largest investment they had ever made at the time.58
Steve Klabnik’s thesis, in other words, is that venture capital firms
who invest in open source infrastructure promote these platforms as
a “loss leader,” even when there is no direct business model or
profitability to be had, because it grows the entire ecosystem. The
more resources GitHub has, the more open source thrives. The more
open source thrives, the more startups thrive. If nothing else,
venture capital’s interest in open source, especially given the lack of
clear financial return, validates the critical role open source plays in
the broader startup ecosystem.
(As an aside, it is important to mention that GitHub, the platform
itself, is not an open source project, and therefore is not an example
of venture capital directly funding open source. GitHub is a closed
source platform that hosts open source projects. This is a controver-
sial topic for some open source contributors.)
By individuals or a group of individuals
Finally, many digital infrastructure projects are developed and
maintained entirely by independent developers, or a community of
developers. A few examples are as follows:
57
https://www.crunchbase.
com/organization/github
58
http://www.wsj.com/articles/
SB1000142405270230329220
4577517111643094308
5 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
Python, a programming language, was developed and published by
computer scientist Guido van Rossum in 1991. Van Rossum claimed he
“was looking for a ‘hobby’ programming project that would keep me
occupied during the week around Christmas.” 59 The project took off, and
Python is now considered to be one of the most popular programming
languages today. 60 Van Rossum remains the principal author of Python
(also known as a benevolent dictator for life, or BDFL, among develop-
ers) and is currently employed by Dropbox, whose software relies heavily
on Python. 61 Python is partially managed by the Python Software
Foundation, created in 2001, which has a number of corporate sponsors,
including Intel, HP, and Google.
RubyGems is a package manager that helps distribute programs and
libraries associated with the Ruby programming language. It is a critical
piece of infrastructure for any Ruby developer. Examples of websites that
use Ruby are Hulu, AirBnB and Bloomberg. 62 RubyGems was created in
2003 and is managed by a community of developers. Some development
work is supported by Ruby Together, a foundation that accepts donations
from companies and individuals.
Twisted, a Python library, was authored by a developer named Glyph
Lefkowitz in 2002. Since then, it has achieved widespread usage among
individuals and organizations, including Lucasfilm and NASA.63 Twisted
continues to be run by a group of volunteers. It is supported by corporate
and individual donations; Lefkowitz remains the lead architect and
offers consulting services for income.64
As these examples demonstrate, open source projects can come
from just about anywhere. This is, generally, considered to be a good
thing. It means that useful projects are more likely to succeed,
avoiding both the vacuous hype associated with startups, and the
bureaucracy associated with government. Digital infrastructure’s
decentralized nature also reinforces the open and democratic
59
https://www.python.org/doc/
essays/foreword/
60
http://blog.codeeval.
com/codeevalblog/2015#.
VjvKZhNViko=
63
https://twistedmatrix.com/
trac/wiki/SuccessStories
61
https://en.wikipedia.org/wiki/
Guido_van_Rossum
64
https://twistedmatrix.com/
glyph/
62
http://skillcrush.
com/2015/02/02/37-rails-
sites/
5 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
H O w N O T C H A R G I N G F O R S O F T wA R E T R A N S F O R m E D S O C I E T y
principles of the Internet, where anybody could theoretically create
the next big project, whether a company or individual.
On the other hand, many useful projects will come from indepen-
dent developers who suddenly find themselves at the helm of a
successful project, facing critical decisions about its future. A 2015
study by the Federal University of Minas Gerais in Brazil looked at
133 of the most actively used projects hosted on GitHub, across
programming languages, and found that 64%, or nearly two-thirds,
relied upon just one or two developers to survive.65 Although there
may be a long tail of casual or infrequent contributors, for many
projects, the major responsibilities of project management fall on
just a few people.
Coordinating international communities of opinionated contributors
and managing the expectations of Fortune 500 companies who use
your project are challenging tasks for anyone. It is truly impressive
how much has already been accomplished in this manner. These
tasks are especially difficult when developers lack clear role models
or institutional support for this work. In interviews for this report,
many developers privately lamented that they have no idea who to
ask for help and would “rather just code.”
Why do they keep doing it? The remainder of this paper will focus on
how and why open source contributors maintain projects of massive
scale and impact, and why it matters to all of us.
65
https://peerj.com/pre-
prints/1233.pdf
5 3
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
Why do people keep contributing to
these projects, when they’re not
getting paid for it?
Many digital infrastructure projects are maintained by individual
contributors or a community of contributors. In most cases, these
contributors are not being paid directly to work on the project.
Instead, they contribute for reasons that are unique to open source
communities, including building reputation and a public service
mindset. This section will explore some of those motivations in
greater detail.
Contributing to open source builds
one’s reputation.
Building one’s reputation is perhaps the most practical reason why
someone would want to contribute to an open source project. For
developers, technical writers, or others, these projects help them
prove themselves in public, giving them a chance to be part of
something big and useful.
Google runs a program called Google Summer of Code, which
provides a summer stipend to student developers to contribute to
popular open source projects. The program works well because the
developers are students, new to the field of computer science, and
eager to show off their skills.
Developers, in particular, leverage open source contributions to
build a portfolio of their work. In addition, by providing input on
popular projects with active communities, a developer has a chance
5 4
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
to build his or her reputation by making him or herself “known.”
GitHub, the website previously mentioned, is a popular platform for
collaborating on code. When a developer makes a contribution to a
public software project, those contributions appear in his or her
profile. A developer’s GitHub profile can serve as a portfolio for
software companies, but only contributions to public (i.e., open
source) projects are visible to anyone.
However, reputation-based motivations also come with risks, espe-
cially among junior developers. A developer early in his or her career
may contribute to an open source project for the sole purpose of
getting hired, then stop contributing once this goal has been
achieved. In addition, developers who are solely interested in
building their portfolio may make lower quality contributions to the
project that do not get accepted or even slow down the develop-
ment process. Finally, if the purpose of making a public contribution
is to build one’s reputation, a developer will be motivated to only
contribute to popular or attractive projects (an extension of the
“magpie developer” phenomenon mentioned earlier), which means
that older projects struggle to find new contributors.
The project became unexpectedly popular,
and the maintainer feels obligated to
support it.
A popular open source project can create dependencies for other
companies, individuals or organizations. In other words, the code is
being used in live software, written and deployed by other people,
that could serve any number of purposes, whether online shopping
or health care. This complex set of dependencies (many of which are
not visible even to the project author, since they do not have clear
5 5
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
user data) can make a maintainer feel ethically obligated to continue
supporting it.
Arash Payan, the developer of Appirater mentioned in the beginning
of this paper, released his project in 2009. Of his decision to
continue maintaining the project, Payan says:
“
It's not terribly exciting stuff, but there are so many people out
there that use (depend, even?) on the project for their apps, that
I feel obligated to be a good steward of it. Personally, I've
moved on from iOS, so maintaining an iOS library isn't exactly
my first choice for a side project.66
Payan estimates the project only takes roughly 1-2 hours per month
to keep up-to-date, so he doesn’t mind the work.
Some projects become unexpectedly popular but take more time to
support. Andrey Petrov is an independent developer who wrote a
Python library called urllib3. He released it in 2008 as a significant
improvement to the existing standard library, and it became popular
among Python developers. Today, every Python user depends on it.67
Andrey made the project open source in hopes that other people
would help support its continued development and upkeep. Andrey
is a freelance developer—although he enjoys maintaining urllib3, he
can only justify doing so in his free time, since he is not paid for his
work. Cory Benfield, who is employed by Hewlett Packard Enterprise
to help maintain critical Python libraries (which HPE uses and
depends on), now works on urllib3 as part of his job. Cory’s arrange-
ment has reduced some of the burden.
67
https://medium.com/@
shazow/urllib3-stripe-and-
open-source-grants-edb-
9c0e46e82
66
Email interview with Arash
Payan
5 6
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
The project is a labor of love.
Eric Holscher is a creator of Read the Docs, which hosts software
documentation. Documentation is the equivalent of an instruction
manual. Just as one might need an instruction manual to figure out
how to put a piece of furniture together, developers need documen-
tation to figure out how to implement a project. Without proper
documentation, it would be difficult for a developer to know how to
get started.
Read the Docs provides documentation for 18,000 software projects,
including enterprise customers, and serves over 15 million page
views per month.68 Although they make some money from large
business clients, Read the Docs is still mostly funded by donations
from its users. A company called Rackspace sponsors their
server costs.
Eric and his cofounder, Anthony Johnson, maintain the project, and
do not see steady income from it, despite working on the project
full-time. A $48,000 one-time grant from the Mozilla Foundation in
December 2015 will help cover their work for a short time.69 They
are currently experimenting with an advertising model (that does
not involve tracking their users) to reach sustainability.70
Eric notes that the difficulties lie not just in new development work,
but non-coding functions like customer support, for which one of
the maintainers must be on call every weekend in case of an emer-
gency. When Eric explained why he continues to support the project,
he called it a “labor of love”:
68
https://readthedocs.org/
sustainability/
69
https://blog.mozilla.org/
blog/2015/12/10/mozilla-
open-source-support-first-
awards-made/
70
http://blog.readthedocs.com/
ads-on-read-the-docs/
5 7
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
wH y D O pEOpLE k E E p CON T R I BU T I N G TO T H ESE pROjEC TS , wH E N T H E y ’R E N OT GE T T I N G pA I D FOR I T ?
“
Either humans are irrational or they don’t just follow money.
Clearly there’s another motivation for me here. It’s a labor of
love. I could close this project tomorrow and be done with it if I
wanted to, but I’ve been doing it for 5 years and I don’t want to
see that happen.71
Eric is motivated to work on Read the Docs because he sees the
tangible value it creates for others. For many project maintainers,
impact is a primary motivator, because they see how their direct
efforts positively affect other people’s lives. In this sense, open
source work shares many similarities to the nonprofit sector. Much
like the nonprofit sector, however, this “labor of love” mentality can
make it harder for open source communities to discuss the elephant
in the room: how to sustain projects that require more resources and
attention than current contributors can offer.
71
Skype interview with
Eric Holscher
Challenges Facing
Digital Infrastructure
"Open source has been such an incredible
force for quality and community exactly
because it's not been defined in market terms.
In market terms, most open source projects
should never have had a chance."
– David Heinemeier Hansson, Ruby on Rails
5 9
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
Open source’s complicated
relationship with money
Money has been a taboo topic for open source projects since the
early days of the free software movement, which arose in direct
response to the practice of commercial, proprietary software.
In the context of the free software movement, the aversion to
money is certainly understandable. Money is what commercialized
software in the 1980s, and it took decades to reverse this mentality
and promote the benefits of building software that is free to use,
distribute, and modify. Although we take free software for granted
today, in the 1980s it was truly a counterculture and revolution-
ary mindset.
Yet even within open source communities, there is a pervasive belief
that money has a corrupting influence on open source. It is indeed
remarkable how much has been created entirely through labors of
love. These days, software development is considered a lucrative
field, with coding schools luring prospective students with the
promise of making a six-figure entry-level salary. By contrast, there
is something pure and admirable about creating a software project
simply for the joy of it.
On a more practical level, open source projects traditionally arise
from a real and identifiable need. Someone decides that a project
could be done better, so they fork the project, make improvements,
then release it for consumption. Pragmatism is core to open source’s
culture, as evidenced by its strategic break from the free software
movement in the late 1990s. Some open source contributors fear,
6 0
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
perhaps justifiably, that money will introduce bloat into the system,
with developers creating new projects simply to get funding, rather
than because the solution is needed.
David Heinemeier Hansson (also known as DHH), who created the
popular software framework Ruby on Rails, warned in 2013 against
mixing open source with money:
“
Open source has been such an incredible force for quality and
community exactly because it's not been defined in market
terms. In market terms, most open source projects should never
have had a chance.
Take Ruby on Rails. [...] That's a monumental achievement of
humanity! Thousands, collaborating for a decade, to produce
an astoundingly accomplished framework and ecosystem
available to anyone at the cost of zero. Take a second to ponder
the magnitude of that success. Not just for Rails, of course, but
for many other, and larger, open source projects out there with
an even longer lineage and success.
It's against this fantastic success of social norms that we should
be extraordinary [sic] careful before we let market norms
corrupt the ecosystem.72
Structurally, open source’s greatest advantage —its penchant for
democracy— is also its weakness. Many open source projects are
nothing more than a public code repository to which a group of
people contribute regularly: the equivalent of an unofficial social
club on a college campus. There is no legal structure and there are
no clear owners or leaders. “Maintainers,” or the primary
72
http://david.heinemeierhans-
son.com/2013/the-perils-of-
mixing-open-source-and-
money.html
6 1
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
contributors, often emerge de facto, based on who authored the
project or put in significant time or effort. Even then, however, some
projects are reluctant to introduce hierarchy by clearly favoring one
contributor over another.
In April of 2008, Jeff Atwood, an aforementioned prominent .NET
developer, announced he was donating $5,000 towards an open
source project, ScrewTurn Wiki. ScrewTurn Wiki is a wiki project
developed by Dario Solara, another .NET developer, and maintained
by volunteers. Atwood told Dario that the grant would be “no strings
attached;” Solara could use the money as he saw fit towards
the project.
Several months later, Atwood followed up with Solara to ask how he
decided to spend the donation. Solara replied that the grant money
was “still untouched. It’s not easy to use it….What would you suggest?”
Atwood wrote that he was “crushingly disappointed” by the
response.73 The decentralized nature of open source has made it
what it is: crowdsourced software that anyone can build, share and
contribute to. But when it comes to discussing organizational needs
or sustainability, it can be difficult to make authoritative decisions.
These transitions to long-term sustainability can be drawn out and
painful. One of the more prominent examples is the Linux kernel, an
open source project used in many operating systems worldwide,
including Android and Chrome OS. It was created in 1991 by
computer science student Linus Torvalds.
As the Linux kernel grew in popularity, Linus was reluctant to
discuss how to scale development of the project, preferring to
manage everything himself. Project maintainers grew restless and
73
http://blog.codinghorror.
com/is-money-useless-to-
open-source-projects/
6 2
R O A D S A N D B R I D G E S : T H E U N S E E N L A B O R B E H I N D O U R D I G I TA L I N F R A S T R U C T U R E
O p E N S O U R C E ’ S C O m p L I C AT E D R E L AT I O N S H I p w I T H m O N E y
even angry at Torvalds, sparking “really big fights,” according to
Torvalds. The disputes peaked in 2002 with discussions of a poten-
tial schism.
Torvalds attributed the internal conflict to a lack of organization,
rather than to any technical issues:
“
We had really big fights back in 2002 or so where I was drop-
ping patches left and right, and things really weren't working.
It was very painful for everybody, and very much for me, too.
Nobody really likes criticism, and there was a lot of flaming
going around—and because it wasn't a strictly technical
problem, you couldn't point to a patch and say, ‘hey, look, that
patch improves timings by 15%’ or anything like that: there was
no technical solution. The solution ended up being better tools,
and a work flow [sic] that allowed much more distributed
management.74
The Linux Foundation was created in 2007 to help protect and
maintain Linux and its associated projects. Torvalds does not run the
Linux Foundation himself, preferring instead to receive a steady
salary as a “Linux Fellow” and work on his projects as an engineer.
While open source software is admirably rooted in a culture of
volunteerism and collaboration relatively untouched by extrinsic
motives, the reality is that our economy and society, from multimil-
lion dollar companies to government websites, depends on
open source.
Overall, this is probably a positive development for society. It means
that software is no longer strictly relegated to private, proprietary
74
http://www.datamation.
com/open-source/linus-tor-
valds-and-others-on-commu-
nity-burnout-1.html