I hope this question isn't too forward - but my main question is 'how did you afford to do this?'

I have had plenty of fun little side projects (some finished some not), but my main project is my salaried position. Aside from being independently wealthy, how can one create and maintain a long term open source project as a full time job. Consulting on the side? Donations? Something else?

P.S. Thanks for Redis :)

Unfortunately I've no good answer for your question, since I'm sponsored by Pivotal, but if we consider the percentage of open source software created, only a small percentage is sponsored. Many developers simply do it for free, as I did it in the first year of Redis developments, because I had an alternative stream of money to pay the bills. So, my point of view, is that the IT ecosystem is broken and IT companies are leveraging a huge value from OSS without providing enough back to pay developments of more OSS. It is one of the biggest injustices currently happening in the "rich world", but there is no easy fix.

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/ 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...

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

Twemproxy helps scale some of the traffic for the top websites in the world: https://github.com/twitter/twemproxy#users