freedomsponsors / www.freedomsponsors.org

Crowdfunding Free Software, one issue at a time.
https://freedomsponsors.org
GNU Affero General Public License v3.0
190 stars 76 forks source link

Add "checkpoints" feature for issues. #97

Open MaddieM4 opened 11 years ago

MaddieM4 commented 11 years ago

A lot of issues are complex, requiring a lot of smaller steps to get to the end result. FS should model that in the following way:

Any issue can enable a "checkpoints" feature by adding other issues to a list of checkpoints. This represents a step-by-step overview of the steps necessary to achieve the final goal. These checkpoints, as separate issues, can be sponsored individually.

What makes this cool is that the first issue page, the one for the big issue at the top of the heirarchy, displays the completion status of all the checkpoints, and for its bounty, displays a total of its own funding plus that of all its checkpoints. So if I sponsor "Fix automatic font retrieval" for $20, and that issue is listed as a checkpoint for both "Interface upgrade" and "Get rid of all WTFPL-licensed code", the total sponsorship for all three will go up by $20 (though it is the same $20).

Optional feature for discussion

Splitting up a big issue's bounty among its component steps. So if the big issue has its own bounty of $300, not counting checkpoints, then that $300 is split up between the component issues equally, or proportional according to their own sponsorship. This would be a complex undertaking though, and probably not too good an idea for that reason alone.

tonylampada commented 11 years ago

Idea from Jarl Arntzen:

I suggest linking one main issue with one sub issue for each step. That way, you can target the money at individual sub issues or just on the main issue if you would rather let the dev manage the monetary contribution.

jarlarntzen commented 11 years ago

This is essentially the same as campadrenalin described above, although I think he did a better job :) :+1:

henriquebastos commented 11 years ago

Interesting thoughts.

Sharing my 2 cents, I think an issue in FS should be a "project" in the sense that it's one initiative with it's scope, discussions, etc.

Even if it has multiple steps, or multiple tasks, or multiple references on the web, it should not be scattered around.

On Tuesday, December 11, 2012, Jarl Arntzen wrote:

This is essentially the same as campadrenalin described above, although I think he did a better job :) [image: :+1:]

— Reply to this email directly or view it on GitHubhttps://github.com/freedomsponsors/www.freedomsponsors.org/issues/97#issuecomment-11241757.

Henrique Bastos http://henriquebastos.net

Curso Welcome to the Django http://welcometothedjango.com.br Aprenda Python e Django na Prática!

Twitter: @henriquebastos http://twitter.com/henriquebastos Skype: henriquebastos.net +55 21 9618-6180

tonylampada commented 11 years ago

Thanks @henriquebastos. I think this type of issue (I mean an issue like Add other samplers that properly reduce (downsample) and warp images) should really be modeled differently from original issues.

I agree the name "issue" might even not be right for it. Calling it a "project" might be a bit confusing because FS already has things called projects (Hibernate, Gimp, FreedomSponsors, all are projects) I'm still not sure what to call them though. :P

henriquebastos commented 11 years ago

I like the name issue for FS, all my comments are related to the FS website behavior. Although it seems more like a "bid" that might involve one issue, or many issues, or many steps/payments for one issue.

For me it seems a false premise to say that 1 issue means 1 payment. Like in coding 1 issue doesn't necessary mean 1 task.

The semantic is tied to the project's culture.

I don't like the name "project" either (that's why I used quotes ;)).

okdistribute commented 11 years ago

How about "upgrade" or "enhancement"?

I just recently got word of freedomsponsors, and saw this issue as something to perhaps get my feet wet into the code base. I like the idea of having an umbrella term that encapsulates multiple issues. This not only makes it easier on the back end, but also gives the chance for multiple developers to work together towards a larger goal by sharing the bounty by working on many issues on the way to that goal.

I'll poke around the code, think of some mockups, and go from there in the next while..

tonylampada commented 11 years ago

Hi Karissa, I'm very happy you want to collaborate! Looking forward to see those mockups. If you want we can schedule a Skype call to talk about this - I think this issue deserves to be carefully planned, in terms of user experience.