Materialize would not exist without open source technologies. After all, our core incremental computation engine that started it all (Timely and Differential Dataflow) is a set of open source projects. From our cloud orchestration framework (Kubernetes) to the nearly one thousand Rust crates providing functionality like networking, cryptography, and serialization, open source technologies lie at the heart of our product.

Despite the immense value these open source technologies provide to us and other entities, many of these technologies are under-resourced and maintained by volunteers.

That’s why we established our Community Sponsorship Program: to give back to the open source community in a small way. For the past three years, Materialize has contributed monthly donations to more than a dozen open source projects and individual open source contributors. Today, we wanted to share a quick rundown of how our program works and what we’ve learned along the way.

Our Selection Process

Our selection process is designed to ensure that we’re contributing to a diverse set of tools used by a range of teams within Materialize. Here’s how it works.

  1. Nominations: We send out a survey to all engineers, product managers, and designers at Materialize, where they can nominate a ranked list of projects or contributors with a justification for why they believe each one should receive support.

  2. Team representation: We ensure that projects from various domains such as the Rust language ecosystem, Kubernetes deployment infrastructure, testing, frontend, design, and even some IDEs are represented in the nomination set.

  3. Annual selection: Once nominations are in, a list of recipients and their corresponding monthly contribution amount is selected for the year. See our current list of recipients on GitHub Sponsorships and Open Collective.

Above, you can see our contributions so far to the rust-analyzer project. We’ve made it to the top four!

Why It Matters

Open source contributions are an important part of keeping the ecosystem alive. By financially supporting the projects we depend on, we’re actively ensuring their longevity.

Image Source: xkcd

Many of the tools we sponsor bring significant value to our workflows, and our sponsorship helps ensure developers have the resources to maintain them.

What We’ve Learned

We saw that opening the nomination process to folks across the company empowers the team to advocate for the projects that are most valuable to their work. It fosters a sense of ownership and is rewarding to be able to financially thank those who have made our lives easier.

As an added bonus, by seeing which projects receive the most nominations, the annual process helps us understand which open source projects are providing the greatest value to our teams. A few projects were obvious standouts this year:

  • rust-analyzer, a Rust compiler front-end for IDEs

  • k9s, a CLI to assist in navigating Kubernetes

  • tokio-rs, a runtime for writing reliable asynchronous applications with Rust

  • rust-postgres, a native PostgreSQL driver for the Rust programming language

By identifying our most valuable dependencies, we can prioritize opportunities to meet the authors and attend their talks, subscribe to updates, and incorporate education on these projects into our onboarding process. We also increased our contribution amount correspondingly.

For the long tail of nominations, the program has increased knowledge sharing internally. Since the recipient list is composed of tools that their peers find valuable enough to nominate, it can serve as a de-facto recommendation list, inspiring team members to try those tools out. For example, our sponsorship of the Helix editor is correlated with increased adoption within the company.

Lastly, we observed that smaller projects with fewer sponsors are especially appreciative of our support. Expressing our appreciation for their work via sponsorship can go a long way in encouraging contributors of smaller projects to continue maintaining them. As a result, we now factor in the relative impact of our support on the project’s sustainability when selecting recipients.

Start a Community Sponsorship Program at Your Company!

Even small community sponsorship budgets can make a large impact. If your company doesn’t have a Community Sponsorship Program, we’d encourage you to talk to your engineering leadership team about starting one! 

The flip side of many open source projects having only a handful of maintainers is that even a few companies contributing $100 per month can make a meaningful dent in covering the costs of maintaining the project. If you have any questions about starting your own program, please reach out on our Community Slack — we’d be happy to chat!

At the end of the day, we are so grateful to have an avenue for supporting the open source projects and contributors that power the technologies we depend on, even if in a small way. Materialize is proud to be part of a community supporting the future of the open source ecosystem.

And, hey, it always feels good to get a shoutout on X.

More Articles

Conceptual Article

Zero-Staleness: Like using your primary, but faster

Materialize can respond faster than your primary database, with results that are at least as fresh as your primary would provide.
Frank McSherry

Sep 13, 2024

Technical Article

Solving the Cache Invalidation Dilemma with Materialize and Redis

In this post, we’ll explore the difficulties of cache invalidation, how Materialize and Redis address them, and when this solution is most effective.

Seth Wiesman

Sep 17, 2024

Technical Article

Real-Time CDC from Oracle to Materialize Using Estuary Flow

In this tutorial, we’ll connect Oracle CDC to Materialize in just a few minutes using Estuary Flow’s Dekaf.
Dániel Pálma
Kevin Bartley

Sep 24, 2024

Try Materialize Free