Indeed's Open Source Sustainability Strategy
During the last SustainOSS in London, Duane O'Brien let slip a comment that made me super happy, Indeed was piloting a FOSS Sustainability Fund. A way to institutionalize corporate open source support, and even better, decentralize the decision making to their engineering force.
I don't know if he remembers, but I met Duane for the first time, years ago, when Tim O’Reilly helped Xavier (my co-founder at Open Collective) and me crash an open source sustainability meeting so we could chat to folks about what was then the idea Open Collective. We then reconnected at the first SustainOSS in SF and from then onwards we only grew our collaboration &, dare I say, friendship :)
Can you tell me what the FOSS Contributor Fund is?
The FOSS Contributor Fund gives all Indeed employees the ability to nominate and vote for an Open Source project we use to receive a monetary donation from Indeed. Each month, anyone at Indeed who makes an open source contribution is allowed to vote on which one of our dependencies they think should receive the donation. The project that receives the most votes gets a $10,000 donation from Indeed.
This program enables us to democratize the decision making process by giving our employees a voice in how we support the open source technologies that allow us to develop, protect, and maintain the digital infrastructure that supports our products and helps people get jobs.
Why democratizing? What made you prioritize that?
Similar to how the open source community operates, we wanted to create a program that encouraged participation and was transparent, but also allowed us to make it easy for every employee at any level to advocate for software they believe we should be supporting.
Can any project be supported? Do you have any criteria to approve them?
Any project can be nominated as so long as it meets the following criteria.
- The project must be in use by the Indeed or one of its subsidiaries
- The project must use an OSI-approved license
- The project must have some mechanism for receiving funds
- The project cannot be employee-owned
Is this criteria public somewhere? I’d be super interested in tracking how you evolve this.
On the Indeed engineering blog we just published a post that includes more information on our criteria and other insights on the program that may be helpful for others looking to learn more about the fund and how we operate it.
You can find it here: https://engineering.indeedblog.com/blog/2019/07/foss-fund-six-months-in/
(Adding main takeaways from the blog post below)
What could go wrong with this experiment?
Since starting the program six months ago, we have noticed well-known projects tend to be the ones who are currently gaining the most votes at the end of each voting cycle. As an organization we are committed to helping sustain the projects we depend on no matter the size of the community of contributors and supporters, which is why we still feel it is important to donate to these organizations. But we also want to make sure that other open source projects, those that may be lesser known and could also benefit a one-time donation from Indeed, and new contributors, are able to be recipients of the FOSS Contributor Fund.
This program has already given us increased visibility into a wider range of projects, and we are continuing to research ways to ensure open source projects of all sizes and notoriety are beneficiaries of the fund. One of the stipulations we have already put in place to assist with this is to only allow projects to receive a donation once within a 12 month period.
What are the results to date?
Since launching the program, participants have engaged from groups like Engineering, QA, Site Reliability Engineering, and Technical Content Management. We’ve also seen strong employee engagement with open source since announcing the fund: over 3,000 contributions from Indeed employees. Indeed has distributed funds to five open source projects: Django, Git, Homebrew, pandas, and pytest. We’ve also selected ESLint to receive future funds.
Do you see this as a blueprint for other companies to take on?
If other companies are interested in creating a fund similar to ours we would be flattered! We are happy to share our insights with other organizations looking to do so as it is a great way to support the growth and sustainability of open source and to increase open source engagement internally.
In fact, we have already released the voter eligibility tool that we use to run the program, called Starfish, and are developing a CC-licensed document that outlines more of the program as a way to provide other companies who may be interested in following this model resources that can help them create their own version. Anyone interested in learning more can also email us at opensource@indeed.com.
Nice! I'll check that out. (You can find the voter eligibility tool here.)
How did you get this approved up the chain?
Indeed’s leadership understands that giving back to the open source community is crucial to its sustainability and believes that if we are using these technologies we must be making meaningful contributions to the ecosystem on an ongoing basis. Because of those beliefs, they were very supportive of implementing a program that not only encourages our internal community to contribute to the open source projects Indeed uses but also allows our open source contributors to have a voice in which open source projects we support.
Thanks Duane! Looking forward to seeing it grow and seeing others follow your lead.
You can check out Duane's talk about the fund at FOSDEM 2019 here.
Takeaways
Taken from Indeed's blogpost on the subject.
After launching the fund, we learned that all Indeedians wanted to participate. Here are some takeaways for encouraging that wider participation.
Open up the nominating process to all employees, not just those who’ve registered their GitHub IDs or self-identified their work in open source. If an employee believes a project is important enough to your company that you should support it—and they nominate it—that is enough.
Be aware of the parameters that you set for project nominations. You want to ensure a smooth donation process on the backend. You don’t want to create roadblocks and discourage participation. Essential: the nominated project must have a mechanism for receiving funds. A small number of our nominations required a support contract or a subscription. Because the fund operates within a fixed budget, recurring payments were not possible. Yet, these nominations did provide visibility into projects that we would not have known about otherwise.
Continue asking which projects would benefit most from a one-time injection of funds. Our initiative has highlighted dependencies about which people have strong feelings. Yet, the initiative does not necessarily show which projects are in most need of financial support. To date, the projects we support are reasonably well known. They generally have a community of contributors and supporters. These projects need support, but there are many other lesser-known projects that need support too. We continue to dig deeper as we work to identify and highlight projects that will benefit the most from these donations.
Use nominated projects as a starting point for getting more involved in open source. Figuring out where to start is often the biggest barrier to making that first open source contribution. Picking from a list of known dependencies helps us by narrowing the list to projects nominated during the initiative. It allows us to send new contributors to projects that someone believes Indeed should be supporting.
The SustainOSS breakout session on Corporate Funding, when I learnt about the fund! The OSS Corporate Index prototype also came out of this meeting. We'll provide chairs for SustainOSS 2020! ;)