DEV Community

Shawn Gordon
Shawn Gordon

Posted on • Originally published at Medium on

Announcing Bento, the open-source fork of the project formerly known as Benthos

by Richard Artoul

tl;dr

Redpanda announced yesterday that they’ve acquired Benthos and immediately made sweeping changes to the project: commercially licensing some of the most important integrations, redirecting all Benthos sites to Redpanda sites, and rebranding the Discord community to Redpanda. So TL;DR — we are (reluctantly) forking the Benthos project, and maintaining it as a 100% free MIT-licensed open-source project, just like Benthos was before the acquisition.

Love at First Blob

I first discovered the Benthos project serendipitously. I was browsing the /r/apachekafka subreddit and someone mentioned that they were using Benthos — a lightweight stream processing framework written in Go — as a simpler and more lightweight alternative to Kafka Connect. I was immediately intrigued. Kafka Connect is one of those projects in the data streaming space that everyone uses and everyone hates. A simpler and more performant alternative written in Go, WarpStream’s native language, immediately piqued my interest.

I Googled the project and fell in love with it pretty much right away. Unfortunately benthos.dev now redirects to a Redpanda docs site, but if you’ve never seen the original Benthos docs before, do yourself a favor and check out the old site. The home page (to me at least) is perfect: crystal clear concise messaging with a clear explanation of the value proposition, but also cute and hilariously entertaining in the best way. If that doesn’t immediately make you a fan of the project’s primary author Ashley Jeffs, then check out his Benthos rap video:

After meeting Ashley in person at Kafka Summit London, we decided to bet on Benthos as the connect layer for WarpStream. We sponsored the project for the maximum amount allowed and (after asking and receiving Ashley’s explicit permission) embedded Benthos directly into the WarpStream Agents to make it easy to integrate WarpStream with other systems and perform common lightweight stream processing tasks without needing to run any extra infrastructure. Then, a few weeks later, we launched Managed Data Pipelines, which brings a fully-managed model for managing streaming pipelines end to end, using the Benthos framework that we had already embedded into the Agents’ single Go binary.

We know Ashley well and loved working with him. He’s done an incredible amount of work over the last 7 years to build and maintain Benthos. He personally made nearly 3,500 commits on the Benthos repo, built a strong community, and most importantly, wrote some amazing software. He’s earned every cent that Redpanda paid him for the acquisition, and we couldn’t be happier for him.

The Acquisition

When we heard that Redpanda was going to acquire Benthos, we thought they were going to continue developing the project the same way (and under the same license) that Ashley had for the last 7 years, and that they would incorporate the already-proprietary Benthos Studio into their product. Instead, in less than 12 hours they:

  • Changed the name of the project from Benthos to “Redpanda Connect”, and prohibited anyone from using the term “Benthos.” 1
  • Posted messages in both the Benthos Discord server and the #benthos channel in the Gophers Slack community encouraging community members to migrate to Redpanda’s Slack community instead.
  • Rebranded the Benthos Discord server to “Redpanda”.
  • Moved the Benthos Github repo to Redpanda’s repo, and split it into two repos with two different licenses.
  • Started relicensing some of the most critical integrations and connectors as proprietary2 under a completely different license, including some of the integrations that were written by open source contributors who were not involved in the acquisition.

In just a few hours, Redpanda took a 7 year old open source project with nearly 8,000 stars on GitHub, hundreds of contributors, and thousands of users and began transitioning it to a proprietary software model.

We don’t really care what the GitHub repository is called, or how the Discord server is branded. In fact, if you go to our docs, you’ll see Redpanda Console displayed prominently as an integration because it’s a great product that helps our users get the most out of WarpStream, and we’re not afraid to give credit where credit is due_._

But we do care about the license change, and making sure that we’re not infringing on any trademarks (real, or imagined). And perhaps most importantly…Benthos rocks. People should be able to continue to use it freely without worrying about when the commercialization bell might toll.

Back to WarpStream, though: our unique BYOC deployment model means that our customers deploy our code and binaries into their environments. Some of the code in the core Redpanda Connect repo is still MIT-licensed, and we technically could have kept using some of it, but we couldn’t wait around to find out what the next change would be. We have to ensure that one of our most critical dependencies is being stewarded in a thoughtful and responsible manner. We also cannot, in good conscience, include any software dependencies containing mixed or muddled licensing that could be subject to change (again) at a moment’s notice. Our customers deserve more stability and predictability than that.

The Fork

When we started WarpStream, we didn’t see ourselves becoming the maintainers of a major open-source project. In fact, we explicitly decided to not make WarpStream “open core” or “source available” from Day 1 because we hated the perverse incentives of that business model: hack distribution under the umbrella of “open source” for zero to one, and then pull the rug later by gating features, changing licenses, or crippling the open source project after the fact once critical mass has been achieved.

I’ll say it explicitly: We really didn’t want to create a fork. But we think that this is the only responsible thing to do given what’s happened already in just a few hours since the acquisition was announced.

So, we’re forking Benthos. We’ll be maintaining our fork as a free, open source, 100% MIT licensed project, just like Benthos was before.

Benty the Bento Box is not happy about the fork.

We’re calling our fork Bento3, an homage to the Benthos name but separate and distinct from what is now called Redpanda Connect. We were proud to sponsor the Benthos project when it was an independent open-source project, and now we’re looking forward to fostering a new project to carry on where Benthos left off.

We hope Bento becomes a place where the Benthos community can land and contribute to the project in the same spirit that the Benthos project once had — but if that doesn’t happen, that’s fine by us. We’ll keep maintaining it because our product, WarpStream Managed Data Pipelines, relies on it.

You can find the new Bento repository here, as well as a hosted version of the original docs in all their glory.

You might be thinking, “Wait a minute, isn’t WarpStream just another corporation? Why should I spend my time contributing to their project if they can just take my contributions at any time and commercialize them?”. Bento is 100% MIT licensed and will stay that way forever. In addition, we want to move to a shared governance model, with other official maintainers, and create an independent structure. However, before we can do that, we first need to find some other maintainers!

So, if your company has any commercial interest in Benthos (even if you’re a competitor!) and is worried about the recent ownership and licensing changes, please let us know. We’d love to collaborate on contributions, bring you in as an official maintainer, create an independent Github organization with dedicated CI/Docker infrastructure, and establish a formal governance structure.

So please, join us: check out the new repository, docs website (new domain coming soon), or even just get in touch if you want to learn more about Bento or participate in stewarding the project.

P.S we hate that Benty is an ai-generated mascot. If you’re a talented illustrator with some ideas, please reach out as well (we pay well!).‍

Footnotes

  1. We’re pretty sure this isn’t how copyrights, software licensing, and trademarks work (like, at all), but we also didn’t feel like arguing about it, or getting the lawyers involved.
  2. This relicensing was done with the justification that “all the users that are using those services are used to paying for the integration with those services.” This seemed to us like a clear signal of more potentially hostile things to come.
  3. Yes, this is the best we could come up with. If you’re good at naming things, we’re hiring our first Product Marketer!

Top comments (0)