Drupal Funding via Gittip Teams
Drupal's growth means that community dynamics are changing.
In the past, it was possible to maintain a popular module solely in your spare time.
But several things have now changed:
-
Additional complexity in the code means that working on Drupal part-time is harder, and less efficient.
-
Growth in the community means that more users want support, taking up more of the maintainers' time.
Following this, there has been talk in the Drupal community about how crowd funding could be used to support essential modules and improve the quality of the long tail of modules (used by thousands of websites).
A lot has been said about Gittip, but few have been talking about Gittip Teams.
This is a means of using Gittip to fundraise as a group, and I believe it is better for both the donor and receiver.
Perceptions of a funding black hole
Whilst I support sustainable monetory funding for individual contributors, at the moment it doesn't feel like there is a perfect solution.
It can feel like funding is disappearing into a "black hole" with no guaranteed return on investment. Funders understandably want something back.
We have to realise this if businesses and organisations are to contribute more (its a bigger potential source of money), as these entities need to be able to justify their investments.
But more broadly, when giving voluntarily donors need to know what they will receive in return.
Therefore, I want to urge maintainers to think about how to ensure that funding does not appear to go into a black hole. This means describing what funds will be used for, and expected deliverables if applicable.
Fund a module*, not a maintainer
I bet that you could name 5-10 modules that are essential for your website.
Could you name one maintainer for each of those modules? Maybe not?
For contrib modules, we should associate funding with the module, not individual maintainers.
Association with the module will aid recognition, but also link the funding more closely with the product (module) that websites are using meaning an implicit link to deliverables.
Furthermore, it actually allows more flexibility to share the funding between multiple contributors, or to flex funding according to the time being invested at that time.
For developers that work on several projects, it means a way to understand why the funding is being received.
* It isn't just modules, but that's an easy example to talk about. The same could apply for Drupal support forums, documentation, themes or even projects such as the testbots.
Gittip Teams as one step towards a solution
Gittip is a way to give small weekly cash gifts to those you love and are inspired by (their official spiel).
It provides a balance between transparency (everyone knows how much others are getting), whilst also providing anonymity (you don't know the specific people who contribute towards you in particular.
There are some success stories from the Drupal community on Gittip, such as Alex Pott who currently receives $543.75 per week (the highest amount of any Gittip user). This has enabled him to work full time on Drupal core (although he is now hoping for this to increase to be able to continue doing so).
But taking a cynical perspective - what if Alex suddenly stopped wanting to work on Drupal core? How long would his 135 contributors take to realise and move their donations elsewhere?
I believe using teams will work better.
Teams allow any number of other Gittip users to be added as members of the team, and divvies up donations publically each week based on how much each member wishes to draw.
For modules, this means that any substantial contributor could be added as a member of the team, and receive donations via the team. If you're working hard, the draw can increase, and when other priorities pull, the draw can be decreased to allow others to take more.
Furthermore, this allows a contingency to be built up for larger tasks (such as the port to Drupal 8). This contingency is not held with any single developer, but under the name of the module, and draws are publically visible.
If necessary (and if funds permitted), paid Drupal developers could be used for certain tasks when there are funds available, but no volunteer time available.
This solution is still not perfect, but seems like a step foward to me.
What else could help?
- Organisations such as the Drupal Association could provide a re-giving service. Give to them, and they will redistribute to parties that currently need funds (and manage the deliverables expected where necesary).
- More traceability of who controls team accounts (currently it can be anyone who creates a twitter account in that name).
- Ability for conditional donations, which require a certain level of work on an ongoing basis to continue receiving the donations.
What do you think?
Category: WebsitesTags: Drupal PlanetDrupalOpen Source FundingGittipGittip Teams