4 ms·
I've been broadly thinking about ways to take a bite out of this challenge. I've visited a couple of 1% for the planet[1] companies and been really inspired by
I've been broadly thinking about ways to take a bite out of this challenge. I've visited a couple of 1% for the planet[1] companies and been really inspired by what I've seen. In short, these companies pledge 1% of revenue to environmental causes. As the company scales it has a massive effect on their culture. I visited New Belgium Brewing (makers of Fat Tire) for instance, and a huge number of their employees are solely responsible for thoughtfully putting that money into action and funneling it into worthy causes. Imagine the impact that a double-digit percentage of the workforce of your successful company whose job it is to stand up for the things you decided were important _besides profit_. It's really incredible.
I really like the idea of setting up guard-rails like this to embody cultural values early on in ways that keep the organization accountable to them at scale and I wonder if something similar could help OSS. It's not hard to imagine a similarly structured pledge being adopted by companies and being popular with developers. It could be structured in hours or money, executed with developer time, donations, or hosting OSS developers like Stripe has done.
If I allow myself the thought exercise of what happens if something like this started to see adoption, I imagine we'd see projects beginning to license themselves favorably to companies who make this pledge in a variety of ways.
At any rate. That's roughly what I've been noodling around with regard to this problem.
[1] http://onepercentfortheplanet.org/ http://onepercentfortheplanet.org/ and I highly recommend Yvon Chouinard's book Let My People Go Surfing, which was where I was first exposed to the idea http://www.patagonia.com/us/product/let-my-people-go-surfing-paperback-book?p=BK501-0 http://www.patagonia.com/us/product/let-my-people-go-surfing...
I've visited a couple of 1% for the planet[1] companies and been really inspired by what I've seen. In short, these companies pledge 1% of revenue to environmental causes.
Interesting approach, but I bet those companies also aren't high growth tech startups/companies. The only goal at a growing tech company is reduce costs, increase revenue. They aren't looking for new ways to pay for things they legally get for free.
My favorite example is Redis at Twitter: Twitter has over 30,000 Redis servers deployed around the world using a total of over 500 terabytes of RAM (half a petabyte!), and they certainly have no interesting in paying for Redis. If Redis were typical "commercial software" licensed per-core or per-other-shennigans, they'd be paying over $70 million per year for Redis.
(Redis is a unique position because the core dev team of Redis has always been small so it's easier to measure the direct exploitation involved versus other projects with thousands of amorphous developers like Linux or Hadoop or Apache.)
Many open source projects are essentially corporate welfare. We work, make products companies use to make money/become more efficient/grow faster, the companies use the software for free to get richer, then nobody contributes back any of the gains.
I don't want to argue your point and you should read heavily into the "tragedy of the commons" problem that plagues many open source communities, but companies can give back in many ways, in terms of bug fixes, features and improvements to the projects they use (at least wise companies do).
In Twitter's case, we've also contributed to the Redis ecosystem via twemproxy: https://github.com/twitter/twemproxy https://github.com/twitter/twemproxy
Twemproxy helps scale some of the traffic for the top websites in the world: https://github.com/twitter/twemproxy#users https://github.com/twitter/twemproxy#users
can give back in many ways
The standard way society compensates persons for useful goods and services is by exchanging currency, not by bartering favors or by saying "look! we made a billion dollars using your software, here, have these free 40 lines of code as a bug fix. thx."
Unrelated note: every time I see these (needlessly?) optimized string compare statements, I fall out of my chair laughing and/or crying: https://github.com/twitter/twemproxy/blob/a36fdae2a8a3c166d9d580fc5973f35c02713c39/src/proto/nc_redis.c#L1044 https://github.com/twitter/twemproxy/blob/a36fdae2a8a3c166d9...
I do want to argue the point. :)
The strange miracle of open source software is that when companies use something like Redis to make a lot of money, they end up investing in it, they contribute work to the project, and the community does gain from their contributions. In other words, the whole point of OSS is that exactly the thing you say never happens, happens all the time.
Most open source development is commercial.
To take an example from my day job: Bloomberg (the financial media giant) sponsored Andy Wingo (of Igalia, that guy is a genius) to contribute support for ES6 generators to both Mozilla's JS engine and Chrome's. An example of his amazing work:
http://wingolog.org/archives/2014/11/14/generators-in-firefox-now-twenty-two-times-faster http://wingolog.org/archives/2014/11/14/generators-in-firefo...
Companies use all things to get richer. That's the operating principle of companies. The competing model to open source is commercial software, in which the company owning the software has a monopoly over it and uses it to get richer... and the companies licensing it still use it to get richer.
In corporate welfare, the money given to companies is taken from someone else's pocket. Open source software is cheap because it eliminates the artificial costs of copyright monopolies.
In other words, the whole point of OSS is that exactly the thing you say never happens, happens all the time.
It's a matter of project scale too. Nobody cares about exploiting Hadoop because it's millions of lines of low quality code written by thousands of day-job developers.
But, if a project is clearly the work of, say, 2-5 individual developers, it's easier to see how those individuals are creating much more value than anybody is possibly compensating them for.
The main complaint seems to be "offering things for free then expecting good things to happen" doesn't work. So the only solution is "offer things for free and also provide support/services/hosting/accoutrement to companies with big pockets."
The trick is: how do you incentive companies to pay in the first place? There's the mongodb model: market, popularize, and aggressively sell broken software so people must buy support or else nothing works at all, or there's the RedHat model: target big companies and become their source of trust/knowledge for complicated things the buying company doesn't want to manage/understand themselves.
It can be difficult to sell highly popular, non-broken, simple software. It works, people use it, there are no problems, so, why pay, even when it runs your multi-billion dollar company (especially when the free support resolves all issues in less than 20 minutes anyway)?
But, if a project is clearly the work of, say, 2-5 individual developers, it's easier to see how those individuals are creating much more value than anybody is possibly compensating them for.
I think this is true of anything worth doing.
I like your characterization of the mongodb model and the RedHat model. (I don't see anything wrong with RedHat's model, by the way. More power to them.)
But your complaint would have made a lot more sense fifteen years ago. Now there are a lot of other models. There are even other models that work really nicely!
There are consultancies, like Igalia. Some companies hire open source developers because they use the project and want to make sure active development continues (antirez's day job might be an example of this; at a guess that's why Google once hired GvR, the creator of Python). Some use OSS projects as a recruiting tool; smart ones use it as a signal of quality in hiring. If you selectively hire engineers with OSS on their resumes, you are unwittingly paying returns to OSS development.
Companies can also use OSS to reduce the cost of external efforts that are strategically important to them, and they can win a developer mindshare benefit from doing so. This is why Microsoft open-sourced the .NET platform (under a good license!).
I'm no VC but the bazaar seems healthier financially than it's ever been.
the bazaar seems healthier financially than it's ever been.
Well, it's the difference between getting paid (salary, fixed, no logical incentive to grow/improve) versus getting paid (percentages of benefit, the more benefit you create the more you make, growing non-linearly with your actual output).
All of this is really just complaining around the fact it's not easy to reap rewards proportional to the benefit of software without creating a company and all the overhead required therein.
Another great example: memcached. It's well known facebook uses memcached heavily. The creator of memcached doesn't see any benefit from their usage of his software. Modern high-growth, multi-billion dollar companies are built on top of the work of individuals they don't even attempt to compensate.
Some of these arguments also apply to modern exploitation of musicians a la spotify/steal-my-music-ify, etc.
That's pretty much exactly the point. I think this is a commitment that probably ought to be baked in from the beginning, before a company scales. It's hard for a large company to make a commitment like this commensurate with it's size without making the commitment early and scaling it along with everything else.
As for size, NBB is the second largest craft brewer in the country and Patagonia is a very large player in outdoor apparel.
>The only goal at a growing tech company is reduce costs, increase revenue.
Right. Fuck that, because that's not actually (ever) really the goal. Money's always a means to some end, so another way of looking at this is to put a stake in some particular end that you want to share with everyone at the company. That's culture. Culture is shared values, and this is a way to make culture measurable and something the organization is held accountable for over time.
Yet another way to look at this is what happens if when Larry and Sergey decided on "Don't be Evil" someone told them "That's adorable, but why don't you think harder about how to turn this into something measurable".
> Many open source projects are essentially corporate welfare.
You say "many", implying not all. What differentiates the "corporate welfare" category of OSS in your mind?
> We work, make products companies use to make money/become more efficient/grow faster, the companies use the software for free to get richer, then nobody contributes back any of the gains.
It seems more complex than that to me. I contribute to OSS, but I also owe my career to OSS. I learned to program using an OS language, an OS database, an OS editor, etc, and still use such tools. I never would have started learning if all that had cost money. So the "welfare" goes to companies, but also to individuals, who may come back and contribute.
Companies have also hired me based on my OSS contributions, which incentivizes me to do more.
"We give, they get" is oversimplified, at least in my case. I got, I gave, I got more, I continue giving.
Well, it's the difference between getting paid (salary, fixed, no logical incentive to grow/improve) versus getting paid (percentages of benefit, the more benefit you create the more you make, growing non-linearly with your actual output).
(postlude)
It occurred to me this morning that even in theory, market economies don't pay to the seller a percentage of the buyer's benefit. They never do: it's not how they work. The full area under the demand curve, above the line indicating price, accrues to the buyer. Buyers that get a very great benefit (tangible or intangible) out of buying a pencil, a gallon of gas, or a computer generally pay the same price as those for whom the benefit is very slim; and there is no limit to that benefit.
This is mostly beside your point, I know. I just thought it was a nice idea, worth sharing.