This website was archived on July 21, 2019. It is frozen in time on that date.

Sonya Mann's active website is Sonya, Supposedly.

Middlemen Are Crucial: Open-Source Software & Economic Growth

Disclaimer: I’m open to disagreement that is expressed respectfully. If you have an argument against my interpretation, please share it. (Of course, I can’t guarantee that I’ll agree with your critique.)


I want to elaborate on a conversation about the economics of code from Hacker News. User wrong_variable said:

“Programmers get no respect — and its our own fault.
The computing industry is directly responsible for 1/3 of global GDP in 2016.
Its time that this is reflected in our paycheck.”

Leaving aside the assertion that programmers aren’t paid well, I responded:

“Keep in mind that code is not useful or economically impactful without business and community management surrounding it.”

User overgard chimed in:

“I think that’s demonstrably untrue — open source and free software has had a massive economic and cultural impact with precious little of that originating from the involvement of business people or community leaders. (For instance, the GNU project or the linux kernel — not to mention how many commercial products must use zlib). Business support almost always comes after the value has been created.”

I disagree. There are two threads here that I want to tease out:

  1. Writing and testing code on the scale of a project like Linux or Ruby requires a community. Some people in the community, even if they are adept programmers, will be needed to support the project in other ways.
  2. Once a program / framework / whatever is ready, it can’t promote economic growth unless it’s deployed by a business. In other words, software for its own sake is economically pointless. (By the same principle, outside of the open-source world, managers, salespeople, and marketers exist for a reason.)

People who make things tend to underestimate the importance of middlemen. I mean “middlemen” broadly — anyone in between production and consumption. In this case, programmers are production and regular end-users are consumption. However, before any product can be consumed, you need distribution.

Photo by Florian Pircher.
Photo by Florian Pircher.

Prior to the internet, distribution was limited by physical location and thus geographically specific. Particular companies controlled particular regions; they maintained relationships with individual stores. On the internet this dynamic is fundamentally different because the cost of distribution is negligible. Digital goods are effectively free to replicate, meaning there is no marginal cost. (Ben Thompson’s “Aggregation Theory” describes the consequences: value comes from being the layer that users interact with, which compels suppliers or advertisers to use your platform.)

When it comes to software, distribution is simple but difficult. It consists of two crucial functions:

  1. Making people aware of the software’s existence.
  2. Convincing them to use it by providing a compelling value proposition.

For the most part, those things don’t happen spontaneously. You need evangelists (as much as I hate that word). And those evangelists need incentives. The creators and proponents of open-source software are usually not paid directly for their labor (there are exceptions) but they are rewarded with social capital that can be leveraged into professional remuneration. You need people to write documentation and blog posts, organize / host meetups, and generally nurture the project’s ecosystem. This is the “community” part of the “business and community management” that I cited as being vital.

Even more saliently, free and open-source software projects only have an economic impact when businesses exploit comparative advantage by using them. For example, Super Body Fuel’s online store was made with WooCommerce, which sits on top of WordPress. The owners didn’t have to hire a developer to build a site for them. Using PayPal [1] as their payment processor also lowered the up-front cost and hassle.

Because of this, businesses like Super Body Fuel need less capital to get started. The owners can spend more time focusing on factors that differentiate their business (in SBF’s case, formulating a healthier and less expensive competitor to Soylent). In terms of investment and payoff, growing their business is a higher-return activity than setting it up in the first place. Efficiency increases, which result from technological innovation, are the only impetus of non-zero-sum economic activity. In a word, growth.

Of course, none of this could happen if the Super Body Fuel owners didn’t know about WordPress and WooCommerce, or if they didn’t have access to the intermediary tools necessarily to deploy them. Some amount of information seeps around without anyone making an effort, but awareness and resources that will reach thousands of people almost always require intentional promotion. Thus, coding is not enough to propel the open-source world. Other types of labor are needed to keep attracting more contributors and users.


[1] Like every large software company, PayPal both uses and develops OSS. For example: OpenStack and Linux.

Design as an Attitude

The design process consists of making conscious decisions about how to set up a creation. Design’s defining ethos is thinking deeply about a system before planning to implement it. Even a simple object can be considered a system, or perhaps an interface, because it will be touched and used. Therefore even the most basic product should be designed in the way I’m describing. Something complex like a computer operating system requires extensive mental energy.

Free menu icons by The Open Dept.
Free menu icons by The Open Dept. Pretty generic.

One of my least favorite aspects of the world — of reality — is that you can’t simply intuit things. The human brain is frequently irrational and instincts are often wrong, so we need evidence and research to guide us. Humans were able to invent algebra but we certainly don’t follow the rules of logic in our day-to-day mental processing — hence Wikipedia’s long list of cognitive biases.

Design is how we combat our mental quirks when building a product. Instead of throwing things together willy-nilly, we try different combinations, test the results, and eventually settle on a functional configuration. Hopefully the best option is also beautiful! This method produces better results than following random impulses and calling it good.

Theoretically, anyway — sometimes I’m baffled by the choices of very high-status manufacturers.

Wanna use Apple's Magic Mouse while charging it? TOO DAMN BAD. Photo by Roman Loyola; via Macworld.
Wanna use Apple’s Magic Mouse while charging it? TOO DAMN BAD. Photo by Roman Loyola via Macworld.

Sign up for my newsletter to stay abreast of my new writing and projects.

I am a member of the Amazon Associates program. If you click on an Amazon link from this site and subsequently buy something, I may receive a small commission (at no cost to you).