Tip jars and open source

[This essay was originally titled "Why I finally joined Gittip and why you should, too", but with the demise of Gittip (later Gratipay), I've retitled and amended it to make a more general point.]

I was a Gittip skeptic.

Heck, I still am. But I signed up anyway and I’ll tell you why.

But first, I want to talk about money and altruism. Most people contribute to open source for free. They don’t do it for money. They do it for fun or self-satisfaction.

The danger of offering money to a volunteer is that they might revalue their contributions in light of the money. Put differently, it’s possible that getting a little bit of money might be more demotivating than none.

Consider shareware as a related example. You bust your ass writing some software and then typically find (a) few people download it and (b) even fewer bother to pay.

Now think about that from the open source “tip jar” perspective. For one, lots of work doesn’t even have a download count. And given that it is typically “free” (in both the “speech” and “beer” sense), I would expect New York City Subway "Showtime” Panhandlers to get more in tips than the typical open source developer.

The fallacy in that argument is that shareware – and subway panhandling – is transactional. It’s cash (or not) for a product or performance.

Open source is a community.

Or possibly, it’s like an iterated prisoners-dilemma game.

In a community, like in an iterated game, you participate over time and your self-reward can be reinforced or diminished a little bit in every interaction.

If you’re totally self-motivated and only the challenge of the code matters to you, then community isn’t a big deal. But if you’re like most of us, positive feedback from the community, whether karma points, or “+1” clicks, or thanks, or tips, all contribute to the feeling of self-reward.

For me, someone recognizing my efforts is a huge boost. Even a bug report tells me that someone used my code and it helped them enough that they’d try to make it better. That motivates me to fix more bugs and write more code.

Recently, I’ve seen arguments that Gittip makes consistent reward easy and that even chump change adds up over time. Others have argued that just raising a project’s visibility via Gittip benefits the community.

To some extent, I agree and to some extent I think both are missing the larger point. It’s not about the money and it’s not about the marketing.

In a community, everyone should be looking for ways to reinforce behaviors that improve the community. Thus, every extra way to say thanks is worth pursuing.

Thank with email? Patches? Gittip? Flattr? Awards? Karma points?


Whatever methods you find motivating to thank others are the ones you should use.

  • If you have more free time than mad money, find ways to produce things the community needs. Write code, write articles, give talks, answer questions on Q&A sites and so on.

  • If you have more mad money than free time, find economic ways to support those producing. Donate to projects or software foundations. Or, if you want to make your support personal, donate via Gittip or something similar.

Either way, try to make sure your efforts are reinforcing those around you. Sending bug reports and patches or even just a thank-you email benefit the recipient much more than you might think and might even do more good for the community than your own next bit of code or authorship.

Thanks comes in many forms. The more we have in any form, the better off we all are.

Maybe Gittip is a flash in the pan. But maybe not. If that kind of personal, consistent, monetary thank you appeals to you – whether as a donor or as a recipient – don’t think about it, just do it. More is better.

If you’re motivated to tip me on some platform, great! Or just shoot me an email sometime.

•      •      •

If you enjoyed this or have feedback, please let me know by or