This is the second post in a series of The internet of Work if you want to read part 1 you can find it here.
Principles of The Internet of Work protocol:
The race principle
When a Customer creates a task it will public and can be picked up by anyone. A provider either tries to execute a task and delivers on time in the time frame given, and gets paid or he or she doesn't. There is no hiring or firing process. The person who gets all the acceptance criteria checked first is the one that the task budget (time locked transaction) will be released to. A customer can therefor focus on the quantification of input and quality of output of tasks instead of wading through his or her biases in deciding who can or can't do the job. The only person who can do the job is the one who gets it done first.
The reputation principle
The protocol system of reputation will only focus on the feedback given and on nothing else. After the task is done the Customer and Provider must leave feedback with either a thumbs up or down which will eventually lead to a rating of ( number of thumbs up / number of jobs completed ) 5/6 ( 83% ) . The ratings are stored in a feedback object on the blockchain per transaction and are locked to the multisig (main public key) address of the Provider and the Customer.
The self executing task principle
Like I mentioned before there will be no selection process therefor there will be no needs of qualifications of any kind. There will be no need for diplomas, work history or portfolios. Providers are just to find tasks that meet their skills and pick it up if the acceptance criteria are clear, if not they can contact the Customer via comments for further clarification or so that the Customer can adjust the task.
The anonymity principle
Work should be universally available to anyone who wants it. The person who gets to decide who gets to work should be as blind and as fair as lady justice. There will be no support for user accounts like in traditional freelance websites. Because the bitcoin, race and reputation principles tasks can be executed trustlessly which makes the person behind the Provider is irrelevant. The same multisig addresses that bitcoin uses will be used here for identification. A provider should be able to work anonymously on tasks if so desired that said he or she can also enrich the feedback with any social links like Facebook, Twitter or LinkedIn.
The bitcoin principles
- 96 million coins. (21 mln is just too small for our usecase, 42 mln premined to be allocated to investors and ico, 21 mln mineable via PoW, and 21 mln as reward in PoS)
- No censorship: Nobody should be able to prevent valid txs from being confirmed.
- Open-Source: Bitcoin source code should always be open for anyone to read, modify, copy, share.
- Permissionless: No arbitrary gatekeepers should ever prevent anybody from being part of the network
- Pseudonymous: No ID should be required to own, use Bitcoin.
- Fungible: All coins are equal and should be equally spendable.
- Irreversible Transactions: Blockchain History should be immutable.
Task: The Unit of Work protocol.
A task describes the unit of work of the protocol and for a task to be valid it should include the following:
- A brief description of what needs to be done in 160 characters or less. The description will support twitter style hash tags.
- A budget expressed in USD/EUR/BTC
- A list of acceptance criteria which are like sub-tasks that need to be checked before this task can be set to completed. These checks are very important and will be hashed with the Customer's public key and coded into the final transaction. So, they cannot be changed after delivery by anyone.
- A service level which can be one of the following: 1Hour, 1Day, 1Week. This describes how long someone is expected to work on a task. This is has special meaning later on the protocol.
- A required start by date.The last possible start date plus the service level makes the max date before that task hast to be delivered.
- An Input URL: (like a GitHub repository) where the files needed can be downloaded from.
- An Output URL: (like a GitHub repository) where the files needs to be uploaded to.
- A list of jobs in progress. A list of people who have picked up this task and are currently working on it with an optional part of what acceptance criteria that person will be delivering.
- A list of skill tags. The required skills needed in order to complete this task.
- A Completed flag.
If you think I have missed something or if you have suggestions let me know in the comments. If you think if this might or might not work leave it in the comments. If you like my posts and want to see how I evolve my idea into a working prototype upvote this article and follow me please. Thanks!
Interesting
I will follow you to see your future posts!
Congratulations @wendellmva! You have received a personal award!
1 Year on Steemit
Click on the badge to view your Board of Honor.
Do not miss the last post from @steemitboard!
Participate in the SteemitBoard World Cup Contest!
Collect World Cup badges and win free SBD
Support the Gold Sponsors of the contest: @good-karma and @lukestokes
Congratulations @wendellmva! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Vote for @Steemitboard as a witness to get one more award and increased upvotes!