beeware / paying-the-piper

A project for discussing ways to fund open source development.
343 stars 14 forks source link

Central non-profit to collect and distribute funds #57

Open nedbat opened 8 years ago

nedbat commented 8 years ago

Reading about the various ideas here "with teeth," they all sound like they would be culturally unpopular, and difficult to implement. To my mind, there's plenty of good will out there. If we can encourage the idea that companies should voluntarily support OSS, and make it simple for them to do it, then we can start some money flowing.

What I'm picturing is a single organization that could collect money on behalf of projects. Companies could make a donation, and indicate what member projects they use. One simple way to indicate that is to upload a requirements.txt file :)

Some divvying-up algorithm would be needed, but roughly speaking, the more money that came from companies using Project X, the more money Project X would be entitled to. (BTW: Project X could in turn donate some of their proceeds to the projects they use.)

Lots of big companies make charitable donations for no other reason than the tax write-offs and image building they provide. These donations would be no different. If we can publicize the donations that companies make, it will encourage other companies to similarly donate.

And a simple economic argument can be made ("You paid X for New Relic? Isn't Django worth at least Y?") We can make some suggested guidelines for donations also.

Maybe I'm an optimist, but I believe companies would want to support OSS projects if they had a simple way to do so. Today, they can donate to the PSF and DSF, but what about the rest of the software they use? If there were one place that would cover all their OSS funding, they wouldn't have to chase down all the ways to donate money to all the long-tail projects they use.

(Sorry if this is duplicative of other ideas here, I read the ones that seemed similar.)

freakboy3742 commented 8 years ago

For me, the focus on the "with teeth" options comes because simply asking for money hasn't been especially successful for Django. This is probably, at least in part, because we haven't been especially effective at asking; but it's also because the SF startup mindset is especially rife with the "I've got mine" mentality that doesn't give back - witness blog posts like this one where the founder of Instagram talks about all the great open source software you can use. However, Instagram hasn't given anything back to Django.

If we're going to use the carrot, rather than the stick, I agree that having a single focus organization would be helpful for fundraising purposes. My concern would be that "OSS" is a broad target - there are already several of these organizations (Apache Foundation, Linux Core Infrastructure Initiative, and others) - having yet another "OSS" foundation might not help. However, having an organization with some focus - e.g., "the Python web stack" - might be more helpful. That would give a distinct narrative to the fundraising effort - i.e., we're trying to make one specific ecosystem vibrant, with a specific group of people on board to make that happen.

nedbat commented 8 years ago

I definitely agree that a focus for the organization would be important. "Python web stack" sounds reasonable, as long as we recognize that all sorts of generic Python things (like coverage.py!) would get rolled up into that. The other big part of Python these days is the "Python data stack", which might be good to include.

I think to get the giving started, we'd need to find a well-known organization to be a donor, and be willing to talk loudly about why they did it. It won't work unless giving becomes part of what "good" organizations do. And part of the push will be getting the engineers working at the organizations to advocate from within.

freakboy3742 commented 8 years ago

Completely agreed that "Python Web Stack" doesn't just mean "Django" - it means everything you need to make web development possible - Python itself, signficant libraries, developer tool - even resources like Read the Docs.

The launch strategy for something like this will be critical. Having clear launch sponsors on board, a few developers who will take up the banner, a clear messaging and branding effort - all these things will be needed.

nayafia commented 8 years ago

I've been talking to software companies about some version of this, and am surprised to find they aren't nearly as enthusiastic about giving as I'd thought.

There are any number of reasons why that might be the case, but a couple of things I've noticed:

-- Companies aren't even aware of OSS funding issues; perception that OSS is a "solved problem" (b/c of companies like Docker, WordPress, etc - and then I hear a lot of "doesn't Apache/GSOC/etc do that already?") -- Pervasive belief that OSS is meant to be free, it's done out of goodwill, as a hobby, in someone's spare time. The work will get done no matter what. -- "What's in it for me?" No one company wants to step up and finance OSS without a direct benefit to them (marketing/branding, hiring/recruiting, etc). If they don't fund it, somebody else probably will, so why bother?

It's also tough to pitch to companies using examples of tools they already use b/c that info isn't public (StackShare picks up bigger projects like jQuery but misses a lot).

My new theory on this is there's a lot of awareness raising that needs to be done first, so that it becomes a no-brainer for companies to donate to this sort of thing. Agreed about your launch strategy - get one or two companies to be advocates, and the rest will follow. Who's on the short list?

ericholscher commented 8 years ago

@nayafia This is really good information. I wonder if doing an OSS survey that asked devs if they wanted more support, etc. and if their OSS projects would be better with funding might be a good way to quantify the problem.

I also want that knowledge about how companies view the problem to be widely distributed. It definitely seems like a mismatch in views on the world, and we need to find ways to close that gap.

freakboy3742 commented 8 years ago

@nayafia Thanks for collecting that info - it certainly meshes with the more ad-hoc asking that I've done over the years. Speaking to C-level people who have a company that built entire companies on open source and hearing them say "Yeah, but what will I get for my money" is particularly galling. And I agree that an information/awareness campaign may well be the first step.

Out of interest - how big is your sample size here? And were they all SFO-based? I'm partially wondering if this is a "Silicon Valley culture" problem. While startups are obviously aligned with OSS because they actively use the tech, larger, more traditional organisations are also users of OSS, but with a more developed sense of altruism (through corporate giving programs) and risk mitigation.

I'm also wondering if selling the specific might be easier than selling the abstract. Rather than treating this as a "please donate to XYZ foundation - they do good work for OSS" pitch, sell the specific individuals doing the work. If you gathered a small team of well known, established developers, and "sold" them as a package, it might be easier to rationalise spending money on "1/Nth of a really valuable employee", rather than an open ended donation. That group could also explicitly commit to mentoring/internship roles, so you can sell the idea that they're investing in diversity, providing a brand they, as a corporate entity, can associate with.

tomchristie commented 8 years ago

I'm also wondering if selling the specific might be easier than selling the abstract. Rather than treating this as a "please donate to XYZ foundation - they do good work for OSS" pitch, sell the specific individuals doing the work.

Agree. From my standpoint the difficulties there are as much around "how do we help OSS contributors get into a flexible working position that allows them to open up development time" as it is about "how do we market this".

nedbat commented 8 years ago

I'm also frustrated by the "what do I get for my money?" mindset, considering how much they have already gotten.

But, if we can show something tangible, we'll have an easier time. We can put their names and logos on a "good guys" page. We can encourage OSS developers to pay attention to that registry when triaging support work. Hiring is always a concern, will having this badge of honor be an advantage when hiring?

In terms of companies' stacks being private, their careers pages are good ways to peek behind the curtain at what they are using.

The first name I think of that might be willing to contribute is Dropbox. Surely Guido has some pull there? Before contribution though, it would be good to get corporate insiders to join the cause of crafting this in a way that will work with other corporate insiders.

tomchristie commented 8 years ago

I'm also frustrated by the "what do I get for my money?" mindset

If we talk in terms of donations for work already done, then it's actually a valid outlook. If we talk in terms of investing in ongoing support and development and can back that up with "here's exactly what collaborative funding is making possible, month-by-month", then it's an easy question to answer.

The other aspect of this is that it's important that we frame these conversations in terms of what the collaborative funding as a whole has allowed, rather than specifically the input of any individual organization. Presenting the reward in terms of the aggregate result is super important, because that's where collaborative development and funding of open software can beat the reward-on-investment when measured against internally developed software.

nedbat commented 8 years ago

One thing to look at is NumFocus: http://www.numfocus.org/open-source-projects.html How do they get sponsors? Do they offer something that gets Microsoft on board?

ariddell commented 8 years ago

I'd be willing to get details on the NumFocus case if there aren't people here with direct knowledge.

twneale commented 8 years ago

Was just talking to @nchammas about this the other day. I think this would work will if it followed a model similar to mutual funds. With a mutual fund, i give my money to fund administrator at a trusted organization and they invest it in a custom portfolio of funds that ostensibly meet my investment objectives. There are tons of different mutual funds for people of all profiles, but what if there were different opeon-source "funds" that people could make tax-deductible donations too. Say I use tons of python and web tools--i could deliberately pick a fund administered by people or a community I trust, and they would decide what percentage goes to django, flask, coverage.py, etc. Some of these funds are bound to be stupidly designed and skewed to one project or the other, but if there are enough of them, people can just vote with their wallets, and the market will decide which deserve money and which don't.

Will people donate? My current employer actually has a program where it will match tax-deductible donations made by employees to non-profits up to a certain limit. I think people in general (though I speak mainly for myself) would be more inclined to donate to open source if it was simple and they wouldn't have to initiate hundreds of transactions to spread their donations to all the worthy projects in an equitable fashion. Managing many donations is difficult from an entering-you-credit-card-too-many-times-on-the-web perspective and also when you need to file your taxes later and claim deductions on them all. But a big organization could engage some accountants and hide most of that complexity from average joes like me who want to donate and single lump sum and have it distributed in an intelligent way.

nayafia commented 8 years ago

@freakboy3742 Admittedly a small sample size - about 10 companies so far, various sizes, all SF-based. I think you are absolutely correct about "please donate to XYZ foundation that tackles OSS" being way too broad, that was another big learning for me. OSS funding feels like such a big issue that without a targeted strategy the impact is unclear.

I LOVE the idea of pulling together a corps of developers. I think companies would feel more excited to support them as well (ala RubyTogether). Someone I spoke with recently called OSS infrastructure work "deep engineering" (i.e. people tinkering below the surface to make stuff work for the rest of us) and I loved that as a more palatable term.

Another idea to think about: someone else suggested that a centralized nonprofit, in addition to collecting/distributing funds, should also have an overarching community role. So you have a team of developer advocates who are point people for different aspects of OSS, say someone who's been in Ruby for awhile, or someone who works a lot with JavaScript libraries, and they work with the community to make sure needs are being heard and the right work gets done. And they make grant recommendations. I think funders would be excited for something that's more about building community/infrastructure than pure grantmaking, as well. Speaks to that idea of funding a "team" with impact rather than pure money-in-money-out.

@ericholscher I'm gonna test the waters on a survey like this! From the company side. I would LOVE if, say, 15 top software companies are willing to share which OSS projects they use and how they support OSS, if at all (not just financially but also contributing their time, what do employee policies look like, etc). I think the data would be interesting and could help spark conversation around what's needed. Open to suggestions/ideas around this.

@nedbat Hadn't seen NumFocus - can't believe it hasn't come up yet. Maybe @karissa knows something about how it works?

nchammas commented 8 years ago

Just to add another example of "prior art" here, The OpenBSD Foundation has successfully been following this model of "One organization, many projects" for years.

nedbat commented 8 years ago

@nayafia when you make a survey, I can help spread it around the Boston area.

nayafia commented 8 years ago

@nedbat awesome! much appreciated.