- Collapsing the Modern Data Stack with Ry Walker
- Posts
- CMDS 006: Everlasting Open Source Gobstopper
CMDS 006: Everlasting Open Source Gobstopper
Exploring the layers around an open source core
Last week, we went over the typical trajectory for startups: they develop a project with a permissive open source license, and then, when revenue pressure grows too intense, everything changes. The “business bros” make a short term play to maximize revenue, thus damaging their underlying OSS project, and the whole company just isn’t the same anymore. The community revolts, users clearly see the lock-in and higher prices on the horizon, and before long, the open source core of the company decays. This week, we’ll talk a little more about how this happens, and how we’re trying to safeguard Tembo from that future.
How do open core projects begin their decline? Let’s start with the structure of most companies. The company is like a jawbreaker, with three layers of value: a community open source project as the center core; a second layer consisting of a branded open source project (that could become proprietary with time); and a proprietary outer shell. Take Confluent, for example. Their center core is Apache Kafka, their middle layer was an open source project called Confuent, and they always had Confuent Enterprise and Confluent Cloud as the proprietary outer shell. Over the years, they have put much less innovation into the core project (Apache Kafka) vs. their proprietary outer shell, and changed the license of their middle layer.
This isn’t unreasonable or bad - jawbreakers are designed to change over time, after all. It’s no secret that you have to have some differentiation in order to sell, and everyone should be allowed to build great proprietary software. The problem is the decay. Developers want that middle layer—the thing that got them excited about the company in the first place—to stay open source. When the license changes, it feels personal, almost like you’re changing the rules in the middle of a game of Monopoly.
At Tembo, we aren’t going down that road, ever.
How? Well, we have to take steps to ensure that any future company leaders can’t cannibalize our middle layer (our captive open source projects) in favor of our proprietary offering. It’s about integrity: we need to keep that middle layer intact in order to protect our differentiated open core - while still supporting the proprietary crust. Our middle layer has a name (Tembo Stacks) and a permissive Postgres license. To keep future leaders from “messing with” Tembo Stacks, we have two options…neither of which, transparently, are all that great.
We could donate our middle layer to a foundation, à la the Apache Software Foundation or the Cloud Native Computing Foundation. We would no longer own Tembo Stacks, nor would we have final say over the core of it. The problem with this approach is that the Tembo Stacks open source project shares our brand - and we want to keep using that branding for our outer layer suite of products. I’ve heard people from Confluent say that it was a mistake to name both their middle layer and commercial products “Confluent” because they couldn’t easily differentiate their commercial products from their open source offering.
Can we do anything else to protect our open source middle layer from our future leaders? Potentially. We could set up a branded company foundation for Tembo Stacks, but in theory, future leaders could blow that up, but they couldn’t do it subtly. Alternatively, we could create a foundation just for Postgres projects, and donate Tembo Stacks to it, with an agreement related to sharing the brand. This would protect the Tembo Stacks open source project, along with other Postgres-related open source projects.
This last idea is my favorite so far. One of our key goals at Tembo is to leave the Postgres ecosystem much better than how we found it, and this is one way we could do that. We may succeed, and we may fail. But either way, we’d like to benefit the developer & Postgres community in the long run.
It’s going to be a wild ride 🙂
Ry’s Weekly Resources
Revised Tembo Manifesto is live — would love to have you try Tembo if you use databases.
What are the biggest open source projects in the world? Check out https://ossrank.com, which I created last year. We'll be going on a journey to migrate it completely over to Tembo, too 😃
Did you know I have a podcast too? Check out Hacking Postgres on Apple Podcasts, or wherever you consume podcast content.
Want to take things further?
Tembo is the Postgres developer platform for building every data service. Our mission is to collapse the database sprawl of the modern data stack with a unified developer platform. With Tembo, developers can quickly create and deploy specialized data services using Stacks, pre-built Postgres configurations, and deployments without complex builds or additional data teams.
Join our private beta waitlist here