Decentralized, Bounty-Driven Software Development — Envisioning the Possibilities

Benjamin Goertzel
Ben Goertzel on SingularityNET
2 min readNov 14, 2017

A SingularityNET volunteer and enthusiast has pointed out to me recently a number of projects aimed at rewarding contributors to open source software with cryptographic tokens, for instance Colony, GitToken and MachineETH.

We were already planning on doing something vaguely like this in SingularityNET — using AGI Token “bounties” to reward contributors. But these tools suggest something more systematic and extensive.

Regarding the particulars of giving bounty rewards for development, one can envision a couple extremes:

  • Put a very specific requirements-list out there, and give a reward to the first party to create code that fulfills it
  • Generally give token rewards to anyone doing OSS software development that contributes to SingularityNET

and then various levels between these extremes. The possibilities here will be quite interesting to explore.

Hypothetically, down the road after SingularityNET is a bit more mature, this might end up being the main way that SingularityNET software development gets done.

It is also interesting to think about the transition from humans doing the programming to AIs doing the programming, in this context.

In the first couple years of SingularityNET development, there will be heavy reliance on a core team of knowledgeable developers, who already understand relevant code and ideas thoroughly and can execute quickly. But if the decentralized-AI vision underlying SingularityNET is to be fully realized, there will need to be a transition to a more decentralized development methodology as represented in the projects indicated above (or quite possibly, future initiatives in the spirit of these projects).

There is a lot to be discovered in this direction. How can one make coordinated development according to rigorously defined software designs work, without some level of top-down coordinated management? There is a lot of literature exploring the way these things have worked in the OSS community, e.g. documenting the degree of centralized and essentially oligarchic control operative in the Linux kernel team.

However, for something as big and heterogeneous as SingularityNET, there may well be the potential for multiple quasi-oligarchic teams analogous to the Linux kernel team to handle different aspects of the network design and implementation — along with a large pool of independent developers working on other system aspects in a more fully decentralized way. The social and intellectual dynamics of the developer community will both reflect and guide the structure and dynamics of the AI system being developed. The community and its development methodologies, like the code and algorithms, may end up evolving and changing rapidly.

--

--