Presented at SFScon in Bolzano, Italy on 12 November 2021

Recording

Abstract

Free Open Source Projects often grow into or are designed to become Products. Much has been said about the difference between Project and Product and the challenge of navigating the intersection of the two, however, less has been considered around what happens to the code after it is productized.

In this talk, I will explore the issues that arise when the open-source code used in your Product gets re-compiled and re-distributed. Setting clear expectations in this situation is critical to avoid problems down the road.

Talk Description

The talk proposes a rule of thumb for companies commercializing open source: Look Up, Not Down.

A Product sits between the upstream Project (where the code comes from) and downstream Rebuilds and Forks (who consume the product’s code). Products do two things: develop code in the open, contributing close to the source, and perform productization by layering non-code value – support, certifications, lifecycle guarantees – on top of that code.

Projects are surrounded by a Community that follows the 99-1 principle: for every 100 people, 90 consume, 9 report bugs, and 1 contributes code. Products are surrounded by an Ecosystem of partners with focused interest and investment – chip manufacturers, ISVs, the OS vendor – all aligned so the whole solution is the best it can be.

Looking Up means focusing on your customers and the upstream project. That is where you do your work, tap into community innovation, and propose solutions. Looking Down – spending energy on downstream rebuilds – risks funding your own competition, hiding internal problems (bad pricing, broken legal terms) behind a free alternative, and wasting investment on use cases that are not yours to solve.

The bottom line: do not throw glass in your downstream’s path, but do not focus your gaze there either. A healthy open source space comes from looking up.