decredcommunity / issues

Decred community issue tracker
5 stars 0 forks source link

Finding paid work #104

Open xaur opened 5 years ago

xaur commented 5 years ago

This community issue tracker serves to coordinate people's activity.

Finding what you can get paid for is even more interesting than what you can just do. It is reasonable to try and evolve issue tracker into a platform where you can find paid work.

Actionable tasks with defined scope, discoverability via search/tags/linking, assignability to workers, decomposition via subtasks - are standard features of issue trackers that perhaps can be extended to coordinate funding.

The problem boils down to matching people willing to pay with people willing to work. The end goal is to get more great stuff built sooner.

What we look for looks like some combination of crowdfunding and crowdsourcing.

Search the space, there must be existing workflows, software and platforms we can learn from or even use directly.

TODO: formulate task, write simple description of what this system does, find a name for it.

Heavily overlaps with #33.

Things to look at:

Discussions:

s-ben commented 5 years ago

The problem boils down to matching people willing to pay with people willing to work.

I think there are some fundamental questions that need to be answered first.

  1. Who are the "people willing to pay"? If it's a P2P kind of thing (DCR holder A (or DCR holders A, B and F) really want this, and are looking for a contributor B to do the work), then it starts looking more like a bounty or crowdsourcing model. Gitcoin is executing the bounty model really well. Best practices and UI could be borrowed. Or we could just use Gitcoin as part of the solution (in fact part of their value prop is that it's a good recruitment tool). If it's the "community as a whole" that's looking to pay, we need some way for the community to signal funding priorities. Politeia seems to be working great for large proposals. But most tasks current and potential contractors are looking to take on (and be paid for) are smaller, including most tasks in this repo. This looks more like the crowdfunding model, where contributors go around the community raising funds. This seems promising from a signaling point of view, but presumably we haven't seen this at scale in the wild for a reason. Like Politeia, doing a Kickstarter for each little task you do is too much work for all parties involved. Tipping bots are kind of somewhere in the middle. They seem to be effective at increasing community engagement, but I'm not sure they'd provide the level of decision-making bandwidth we need here.
  2. How do we categorize people? Right now, we have contractors and non-contractors. And contractors first come on (afaik) as part-time contractors, who maybe have a different status and less visibility into the system (I believe that's where I am, though am not sure actually). Is this system open to anyone, or just contractors? If this is only for contractors, is it for part-time as well as full-time? Do they need a DCC? What are the barriers to entry?
  3. Who evaluates work output?
  4. Is there a potential bottleneck? Do a group of people need to manually review ideas/finished work product for DCR to be paid? Potentially creating unwanted management work (not a lot of wannabe managers around here)? Or does that group of people need to manually intervene or veto to block funds that a system automatically sends out?
s-ben commented 5 years ago
  1. Is the pricing static or dynamic. E.g. is there a set rate per work category (dev = $x/hr), or is there some dynamic mechanism (price set by person who posts bounty, or dynamic price discovery by some mechanism).
xaur commented 5 years ago

Great questions @s-ben, it will be a long journey to figure all this out.

If it's the "community as a whole" that's looking to pay, we need some way for the community to signal funding priorities. Politeia seems to be working great for large proposals. But most tasks current and potential contractors are looking to take on (and be paid for) are smaller, including most tasks in this repo.

This exactly is the subject of #33 .

Is this system open to anyone, or just contractors? If this is only for contractors, is it for part-time as well as full-time? Do they need a DCC? What are the barriers to entry?

I think in many cases DCC will be required, especially when the work has more impact and costs more money. But in the end, it is up to the paying entity who would "micro-hire" worker for a "micro-job".

Who evaluates work output?

Some combination of experts in a given domain and the paying entity or its agents.

Is there a potential bottleneck? Do a group of people need to manually review ideas/finished work product for DCR to be paid?

The bandwidth is definitely limited by humans accepting the work. Some automation will be possible, but we'll need to start in full manual mode. Similar to Politeia/DAE.

Is the pricing static or dynamic. E.g. is there a set rate per work category (dev = $x/hr), or is there some dynamic mechanism (price set by person who posts bounty, or dynamic price discovery by some mechanism).

No idea, all I see at this point is there needs to be a coordination/negotiation mechanism between payers and workers. There are multiple possible workflows to test. I feel this will involve some signaling tech discovered in #33.

xaur commented 5 years ago

crowdfunding is when the crowd is funding you. As a worker you have an idea what the crowd needs, but lack funding. You formulate and make an offer, raise funds, execute and deliver. 3rd escrow entity (e.g. Kickstarter) stimulates good behavior of both parties.

crowdsourcing is when you outsource to the crowd. As a product owner you have an idea what is needed, you have funding but lack workers. In our case, "product owner" represents, and acts on behalf of the "stakeholders crowd", and outsources work to the "workers crowd".

The models are similar in both having an active intermediate coordinator role who is responsible for delivery, but are different in starting conditions: in one case the deliveryman has workforce but lacks funding, in the other case the deliveryman has funding but lacks workforce.

xaur commented 5 years ago

Somewhat relevant:

s-ben commented 5 years ago

Saw this. Didn't realize the GitHub program allowed you to integrate Patreon, Open Collective, etc. This is related to the contractor model in my mind, as it also provides a means to stable, recurring income (something that can't be attained (easily) with bounties, grants, and other one-time payments). Being a Decred contractor is similar to having patrons on Patreon, but where you get paid per piece of work instead of a flat support fee every month.

xaur commented 5 years ago

In topic of funding models, from an article

Another such idea [inspired by 2018 book "Radical Markets"] experimented on by open-source bounties platform Gitcoin since as early as February is Capital-constrained Liberal Radicalism (CLR). CLR is based on a separate idea called quadratic voting presented in “Radical Markets” and iterated on in a paper written by Buterin, Weyl, and Harvard PhD student Zoë Hitzig.

In essence, the CLR mechanism suggests a way by which to optimally distribute a public goods fund such that fund distribution is "credibly mutual and not biased towards specific organizations," as explained by Buterin in a past interview in Unchained podcast.

The first CLR experiment hosted by Gitcoin distributed a total of $38,242 across 26 different projects in the ethereum space. As specified in a blog post, over 130 different individuals participated in this experiment.

Some notes from the mentioned blog post:

  • The top three projects in matching funding for this round were Prysmatic Labs, Moloch DAO, and Uniswap
  • $13,242 was contributed by 132 unique contributors across 26 projects
  • The top 10 projects all received over $1,000 in matching donations from the CLR fund
  • A total of $38,242 was contributed to Ethereum OSS infrastructure in two weeks

As described in the CLR paper, projects which receives more unique [funding] contributions would likely receive a higher portion of the $25,000 pool than projects which receive a few large contributions.

Immediately I thought "wouldn't people game this?". And yes, reading further:

In our experiment, we originally set the contribution matching period from 2/1–2/15. While at ETHDenver, we announced the extension of matching to 2/17. However, the results in this period skewed towards one project, which we believe was the result of collusion. Likely unintentionally, this undermined the CLR matching mechanism.

For this reason, we decided to retain the results through 2/15, which we felt were a more accurate depiction of the match. This was a decision we unilaterally made, and one which ideally could be more transparent & decentralized in future rounds.

In our post-mortem, we’ll be considering stronger mechanisms for sybil and collusion resistance. Thus far, we use aged Github accounts to ensure one person cannot break their identity into multiple accounts. In the future, we may require stake or suggest a penalty to CLR matching if collusion can be proven.

To further explore Gitcoin:

xaur commented 5 years ago

Looks like this issue becomes part of Funding Models research :)

xaur commented 5 years ago

In March Gitcoin went on with the second round of "experiments with Liberal Radicalism". If I read it right, the goal was to distribute $50K to 42 Ethereum projects if these conditions are met:

The announcement did not explain how they plan to address the collusion/sybil resistance, and I could not find a post with results of the 2nd round.

s-ben commented 5 years ago

Right. In their first trial run there was a sibyl attack. More will happen if they don't solve for that. Weighting votes based on actual donations does introduce skin-in-the-game though. That identity problem..

Related, the founder of GitCoin (mostly reliant on EF grants) posted a pollyesterday asking users if they would upload resumes to GitCoin if they got a cut of the fees charged to employers to access that data.

image

The answer leading response was 'Yes, if it paid well', which is interesting. Bounties are a great idea, but are not sustainable source of income. They are a great way to engage with potential workers before hiring them, similar to the Decred contractor model (#AllRoadsLeadtoDecred).

xaur commented 5 years ago

Interesting. Why wouldn't people want open resumes?

Rather than re-engineering another resume/credentials-based system I would rather like to see some reputation system build on web of trust (#46).

s-ben commented 5 years ago

Interesting. Why wouldn't people want open resumes?

They don't. This is just Gitcoin trying to pivot to profitability before the EF grants (root source of most of the bounties) dry up.

Web of trust is an interesting application (reputation system for the DEX, etc.). Yesterday on Twitter someone posted this poll floating the idea of a reputation system for Politeia. image

Myself and @RichardRed0x both weighted in with a tentative no.

Reputation systems are definitely going to be important moving forward; already they form the base value of many big centralized platforms (e.g. Lyft, AirBnB, Yelp, Ebay, etc.). I would argue the current contractor model relies on an informal web of trust of sorts, lightly codified in a few rules. E.g. a contractor can come on if they find two (or three?) other contractors willing to "vouch" for them (express their trust of the individual). Reviewing invoices involves pinging trusted people, etc. A logical start would be to automate existing informal processes that are working (as is being done with the CMS right now), or to extend the process or principles that have already been proven. Likewise, look at other systems that are working (e.g. some dark market reputation systems might already fulfill some of your criteria).

xaur commented 5 years ago

Great idea, I feel DNMs had to solve this challenge years ago.

s-ben commented 5 years ago

I think they're pioneering it, but they still got those trusted humans at the center...as evidenced recently. Maybe they'll be the first to fully automate with a smart contract and we'll see what works.

xaur commented 4 years ago

Found something, not about finding paid work but related:

https://this-week-in-rust.org/blog/2020/01/07/this-week-in-rust-320/

Call for Participation

Always wanted to contribute to open-source projects but didn't know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!

Some of these tasks may also have mentors available, visit the task page for more information.

  • (...)

If you are a Rust project owner and are looking for contributors, please submit tasks here.

What can we take from this:

Very interesting.

xaur commented 4 years ago

https://www.reddit.com/r/Monero/comments/i2escy/announcing_the_launch_of_monerojobscom/

xaur commented 4 years ago

Just discovered the Horizen Developer Environment - it's a task / bounty system that has been integrated into Github's API and pulls through open issues.

This makes more sense of how a work flow for something like this would work e.g. create open issues around various small Decred community building tasks then create a tasks board specific to particular domains (reddit)