Dev payment rewards structure


On chatting with a friend we were curious to know - how is the reward structure for the dev team/pods laid out? Which account(s) are the safecoins one earns for core development deposited into, and how is quality of work weighted and quantified?


I would like to know if finally 5% of Safecoin will be allocated for Core devs. Or it will be reduced as I read before?



From the safecoin whitepaper: (3.2 Core Development and Building Applications)

It is also possible for core developers to earn safecoin by fixing bugs and developing new features for the underlying network. At the time of writing, this process has not yet been finalised. It is possible that code bounties will be raised by the core development team in conjunction with the SAFE project community. There are a number of existing platforms that facilitate the advertisement and management of code bounties, such as Bountysource and Bountify.


Where did you read that it will be reduced ? Never heard anything about that.


OK, so not quite hammered out yet, I appreciate that :slight_smile: Will be interesting to see how the reward structure is designed such that it is shielded from general shenanigans; and how the network itself is made to be ‘unfuckable with’ (technical term) even if said shenanigans were successful.



Seems to me that David is talking about the core dev safecoins that Maidsafe might earn and that he wants more core developers so the coins would be more spread out to more people instead of Maidsafe receiving a big part.


100% I want to see MaidSafe having to innovate to survive as soon as possible, I wish this for everyone asap :wink: It is vital


It’s hard to see how the payment of core devs could be automated, however, an initial manual solution
could be that members of the community vote on which features or bugs are to be the priority. Bounties are then raised for each task (based on time/effort involved) and advertised via a SAFE/Existing Internet web page/app. Developers then undertake the work and the first developer(s) to complete the task to the satisfactory conclusion (merging the pull request) of the reviewer is paid the bounty. I’m sure there are probably plenty other/better ways to achieve this.


Do you mean its hard to think of an automated way to “Divvy up” the 5%? I would find it hard to think of a way take the 5% without it being automated - is this aspect automated?


I mean core dev when not only MaidSafe are earning the 5%, when all the individuals within the pods start contributing


Ah… I see, so it’s the divvying up part…and the 5% is automated and goes to a specific wallet, to be divided up by some future process once more pods involved?


I thought the 1% was something not enforced but suggested. I like the model where everything is open and available and after the fact people contribute what they think stuff is worth to encourage future works from people on a one click micro payment basis. Kind of like flattr.


Not sure what 1% you mean. 5% goes to those devs that maintain the core (whoever that may be). It is hoped to delegate some of the work to other pods and spread the 5% wider, sooner, rather than later.
Your suggestion would maybe be something for the devs to consider in the future, along with any other suggestions as to how to allocate funds. I would expect that in the future, the eventual system will evolve into something more Democratic once we have voting. I would also expect that the 5% may not be fully needed for maintenance of the core and we can start to think about using part for other community directed projects…more of a Society could develop…dunno though, just crystal ball gazing.


Possible initially until more pods are working on core if ever perhaps we can use some of this 5% to encourage new users (give aways ) It’s a seeding thing so not costing really just igniting and I like the sound of it.

Of course we need to get testnet3 up and we are going like the clappers in a couple of ways to not only do that but to make it much simpler for others to help and importantly increase speed of development a lot.

ASAP I want to get to a new release per week during testnet3/beta and I know Viv wants to get an app a week. So all this work is well worth it, albeit very very infuriating for us and the community to have this period now. In house we are incredibly aware of the waiting hands and roving eyes and we will make sure it’s worth it, testnet1 and 2 gave us great feedback and this is the result of that with the new language.


A devils advocate question here, but who’s wallet will the ongoing payments for core dev updates go to?

ps If the answer is we’ll find out in testnet 3 I understand

pps If you need someone to volunteer their wallet to look after all these funds I’m available :slight_smile:


I’m not sure yet @Luke, things will become clearer in test net 3. Thanks for the kind offer of your wallet, you’re really taking one for the team :smiley:


Practising some voodoo here by reviving old mummified topics.

Anyway, I was thinking about this, and searching for answers and came upon this topic.

Some questions I have:

  • What more do we know since these posts, about the payment structure for core developers?

  • How can code contribution be rewarded?

  • Are rewards recurring, giving sort of royalty on the code as long as it is used?
    One time payment? Combination of both?

  • Is reward voted on - and by whom?

  • Is reward based on some metric - which?

  • Who/what manages the reward fund?

Initial thoughts on those questions:

Having humans managing the fund seems perilous to me. And automating makes it dependent on metrics, which is absurd (mathematically determining code value, is… hm, not yet invented).

Remains voting then.
Who votes, when, how, based on what?
Could only be other core developers, no one else could ever know the value of the contribution.
Initially, this means they would vote on rewarding themselves, before the ecosystem has grown.

Is anyone seeing this in a clearer way, seeing more solutions and less unsolved(able?) questions than I do?


I think it must be a fuzzy and somehow random thing to make it fair in its unfairness.

Like farming.

While any code you committed is part of current version, you are eligible for reward.
The more code, and the more recent, the higher the weight. (Having it accepted at all to the code base, should prevent LOC over quality misguidance).
The rest is just random sprinkle.

Maybe metrics wouldn’t be so bad after all, considering there has already been some form of “voting” and human judgement involved as to get the code accepted in the first place.

But… as devil’s advocate:
If you are a corrupt bunch of contributors, in a distant gloomy future, you could vote on/accept each other’s spam spaghetti code into the code base, to reap some short sighted gains before the network collapses due to code rot.
I guess it would rely on a large enough core developer community, to make it resilient to such corruption.


There are quite a few people working on ways to distribute value among groups of contributors, and there have been some quite detailed proposals discussed on the forum going back write a while.

@chadrickm was very keen on this but didn’t have the time and non of the schemes discussed here made it off the drawing board AFAIK. @Travis was also active in those discussions.

I haven’t looked at this in depth myself, but those discussions piqued my interest and along the way I found CollectiveOne. They seem to have a system and working app, but I’ve not tried it. Food for thought maybe:


Shouldn’t this be a discussion between developers and the maidsafe foundation in the end? That is, humans deciding who should be awarded and when.

Granted, this has complexity, but it would be more like how grants etc are awarded. It could be influenced by some automation or voting.

Given what has value is subjective, I don’t think we can have an objective algorithm to capture this.