Quantcast
Channel: Recent posts across whole site
Viewing all articles
Browse latest Browse all 49199

Community funding (or 'kickstarter for drupal')

$
0
0

Okay I am super-nervous about posting this. First time I've made a big post like this. Please be kind.

I am not an expert in UX or anything like that so I'm not going to go into the detail of how this could be implemented. I just want to get a conversation going in a place where guys that do know their stuff can see it and contribute.
I'm not going to outline a complete solution, I'm just starting the discussion and tossing some ideas out there.

Right. So what I want to propose is that Drupal.org gets a clear and easy-to-use system for helping folks get together and fund development of the modules/features/ports-to-the-next-version-of-drupal/fixes/others that they care about.

But what's so wrong with how it works right now?

Well, not a huge amount is 'wrong' exactly. Most of it just 'could be better':

  • We frequently see people say 'I would give $x for this feature/fix/port/whatever (to be referred to as awesomesauce as of now) but they have no clear way of making this happen or for a developer reading it to know that that pledge is going to make good.
  • We frequently see developers say 'I will do this awesomesauce eventually but due to lack of time I just can't get round to it right now without funding'. They can make a chipin but it's not especially visible and donators may not feel confident that their money is going to get something done as the 'target' amount might not be reached.
  • You also get those developers that are less well off than others that simply can't afford to work on their awesomesauce, instead having to take work from paying clients because they have bills to pay (extension of the previous point, really)
  • If a company wants some awesomesauce they might be put off contributing the sweaty wads of cash they want to give a developer by the fact that it isn't clear who they should be contacting about it.

That list isn't comprehensive and the last point is really just speculation (particularly the sweaty wads bit), but hopefully you will agree that things are not ideal.

So, what could we do differently?

I'd like to see this approached from both ends of the problem - the point of view of the users seeking the awesomesauce and the point of view of the developer wanting funding for their awesomesauce.

Users should be able to create bounties: they will be able to pledge $x into a pot that grows until a developer provides the requested awesomesauce and claims the bounty.
Developers should be able to create funding targets: they will be able to say they need $x before they will provide the awesomesauce.

It feels like there's a lot of cross-over between bounties and targets - I think they are really just implementations of the same thing.
A developer creating a funding target for their awesomesauce is really just creating a bounty for it but specifying that they are the ones that will claim it and that they have a minimum funding requirement for them to do it.
Similarly, a developer might see an already open bounty and want to say they will give the awesomesauce if $x is pledged.
So we're probably just looking at the same thing with a few options for flexibility.
I'm gonna be calling these bounties from now on because that technically makes developers into bounty hunters, which is cool. The actual name would probably be something more funding-oriented.

How would we place these bounties then?

There are two main areas of awesomesauce: Changes to an existing module and brand-spanking-new modules.
For the existing module, I think the simplest thing to do would be to link bounties to issues.
You want to fund a new feature? Raise a feature request, make sure the maintainer is cool with it and then place a bounty on the issue.
Have a bug that's been languishing in a poorly-maintained module that you really need fixing? Place a bounty on the issue.
For new modules, we could have a new way of creating a formalised 'module idea' that could have a bounty request linked to them in the same way as the issues.

How do we stop the system being gamed?

This is where things could get a little messy. For this to work, donators must feel safe that pledging towards a bounty is going to achieve results that are of a sufficient standard.
What's the point in a new feature if its been slapped together by someone looking for a quick buck? So we need some form of QA.
There will no doubt be a bunch of different ideas on how to tackle this but here's mine: We have a bounties team whom have 2 main duties a) Arbitrating disputes and b) Code reviews.
Now I know a lot of you will be thinking 'You want to add more code reviews? Have you seen the size of the project application queue!?' but there would be a couple of significant differences to project approvals.
First off, I would expect drupal to take a small percentage of all bounties made through this process, which means this would generate revenue that could be used to compensate the bounties team for their time - so it wouldn't be a purely voluntary thing.
Secondly, I think this is something that'd tie in nicely with leisa's rep/exp system idea.
It'd be good if - when creating a bounty - a minimum experience/reputation could be set for any would-be bounty hunter. Then we'd only do code reviews on developers that didn't meet the minimum, so bounty team workload would be reduced.
There's going to be a risk of the system being gamed but I'm confident we can make that risk very small indeed.

Final thoughts

I just want to say that I acknowledge that this would come with the risk of making our awesome community more money-driven.
I think as a community we can handle that risk. However, I am not going to bother justifying that right now - I think this is going to spark some debate and I'm going to leave that to others to hash out.

Also, I'd like to point out that this could help out a lot of developers when they need to make a little money and they aren't able to find regular work.
Another thing that could happen is the creation of a nice little niche for freelancers - it might well become possible to support yourself financially as an awesomesauce-delivering bounty hunter.

TL;DR

It'd be cool if we could all get together and give some money to developers so that they'll work on the thing we want and everyone can be happy together - yay!



I know I didn't cover everything and there are a lot of issues to address but this is really just meant to be a starting point for discussions.
Oh and whilst I kept referring to developers I mostly did it out of the convenience of using one word. Themers, documentation-writers, etc. all count too, it just depends on the type of person required for the awesomesauce in question.
Finally, tsvenson made a pretty nice post on drupal mill that I pinched some ideas from.



Note on contributing to this discussion: Whilst a 'drupal app store' is a related topic, it is not the topic of this discussion. Please do not bring talk of such things into this discussion!


Viewing all articles
Browse latest Browse all 49199

Trending Articles