Ideas for worker proposals

SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

We should start to think what kind of projects should be funded with the worker proposal mechanism. Most of this money should go for public goods and other features that benefit the whole ecosystem.

Worker proposals shouldn't be used to subsidies for individual businesses. They need to get their own funding from somewhere else.

To start the discussion, I'll list some of my ideas. All of these are not pure public goods. They could be created and run by private organizations or individuals. If that seems to be happening, it's not necessary to use worker funds for those projects. And of course, Block.one might do some of these, too. I'll guess that Block.one won't ask for money for their development efforts, at least in the beginning, because they have raised so much money from investors and profited from the token sale.

Some of these might be also very good learning projects for new developers who want to get familiar with EOS and show what they can do.

Please add your own ideas here, too. If you want to actually start doing something to implement a particular idea, you should probably open a new topic for it.

When evaluating an idea, please try to think if it's going to add benefits for the whole ecosystem (instead of a small group of users). It's also important to think how much it makes sense to spend on a particular feature (is it worth the money that developers are asking for implementing it).

Comments

  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Public price feeds and price-stable currencies (stablecoins)

    I'll list this first because it's important to start as soon as possible. People have been skeptical about price-stable cryptocurrencies, and for a good reason. There have been several projects which have failed. The longer project has existed and kept the peg, the more it is trusted by people. That's why it should be launched quickly after the mainchain is launched.

    Dan has indicated that he has plans for stablecoins. I'm guessing it will be similar to Bitshares. So we are going to need reliable price feed oracles. In Bitshares, this is handled by witnesses (blockproducers). In EOS there will be 100 followup BPs and this might be a good job for them to get paid a little bit more.

    Public price feeds are beneficial not only for stablecoins but they can be used by other smartcontracts, too.

    I suggest that we start by subsidizing a few stablecoin markets in the beginning to bootstrap them. Bitshares made a mistake of trying to launch too many stablecoins in the beginning which caused the problem of having very low liquidity for all of them. It's better to focus on one or a few at first, and after they start to be successful, add others. First three stablecoins should be USD, CNY and EUR. In my estimation, those will have the largest demand. I think we could see a huge demand from cryptocurrency traders who want to have a better alternative for Tether.

    Why not gold, silver, oil, shares of companies, etc? Well, they can be nice, but I just don't see a big demand for them in the beginning. Gold and silver are great, but people who believe in them will buy physical coins. They are not interested in financial derivatives on a blockchain.

    Why not bitcoin and other cryptocurrencies? That's just stupid. You should use their own blockchains, it doesn't make any sense to create financial derivatives that tracks the value of bitcoin when you can just buy a bitcoin yourself. This is especially useless for cryptocurrencies with small market caps. When you buy a derivative, you are not buying the real thing, which means that it doesn't have any effect on price.

    While we shouldn't have other stablecoins than a few fiat-currencies on a blockchain (in the beginning), we can have price feeds for other currencies, shares and commodities. Price feeds are a public good, they can be used by all other smartcontracts if they happen to need the information.

    Todo:

    • Code for price feed plugins. Open source so all BPs, candidates and nodes can use it.
    • Code for stablecoin smartcontract. Dan might be doing it but we don't know when he has time for it. We might get it faster if somebody else does it.
    • Worker proposal for funding a few of the most important price feeds. A smartcontract which pays for a certain amount of BPs and candidates to make sure that there always will be enough trusted feeds. Some BPs might publish feeds even without compensation, so it's not necessary to pay for everyone.
    • Worker proposal to fund a liquidity pool for kickstarting a stablecoin. In the long run, all stablecoins should function on their own without subsidies, but it's probably a good idea to provide extra profits for a while when it's launched to help it become successful as soon as possible.
  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Tax report tool

    It would be great to have an easy way to generate all the necessary information for tax authorities. If the goal is to be blockchain for open and legal usecases, paying taxes will be necessary. Being government-friendly in this regard is an advantage. If we are transparent enough, the authorities won't claim that EOS a blockchain is for drug dealers and terrorists.

    I guess most people just report their total income from cryptocurrencies, but it's very possible that the taxman wants to have more information from where exactly you did get all that money, especially if it's a lot. For example, Steemit.com's wallet sucks, it doesn't show transactions in a normal bookkeeping format.

    Todo:

    • Wallet plugin that can be configured by user to show and print nice and clear list of all transactions that have monetary value.
  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Account creation coupons/codes

    I'm not completely sure how account creation will happen in EOS, but I assume it's similar to Steem. Anybody can create an account, and when it's done, a small amount of core tokens are staked (so that the new user can use the blockchain).

    If you want to create an account for your friend, you need to have a wallet that can do it. Your friend tells what username he wants and you use that to create the account. Then you need to send the private key for him using encrypted chat or some other secure communication channel. Then your friend needs to change the private key so that only he knows it. This is not very userfriendly.

    Better way would be a code number that gives a right to create a new account. There might be several ways how to implement this, like with a multisig controlled smartcontract or as a built-in blockchain feature. Most important thing is that this is a universal feature, it's not depending on one particular individual or organization to function.

    How it should work in practice: If you want to create an account for your friend, you just use your wallet or other app to get the code (at the same time, the wallet reserves a small amount of tokens to be staked for the new account). Your friend can then use the code to create a new account whenever he has time to do so (this is important because he needs to secure the private key).

    This is also an easy way to print paper coupons to give to people at conferences or other events.

    I haven't been using Steemit.com for a while, but earlier it did have problems with creating accounts for new users. Steemit insisted that it wants to create basically all of the new accounts for free, which caused bots hoarding the namespace, and at the same time a lot of genuine new users either had to wait in line or their application got denied.

    In order to avoid the same mistakes than Steemit.com, EOS needs a way for organic growth. The proposal I've explained here should be sufficient. This helps us to let the userbase grow at the grassroots level.

    Todo:

    • Find out what's the best way to implement this feature. There might be several different technological solutions.
    • Create both the backend and UI code. UI code should be open source so that all wallet providers can easily implement it.
  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Offline signing of transactions

    Users who really want to take care of their valuable tokens and accounts need a wallet that can sign transactions offline.

    How it works: User has two machines, one online and another offline. He creates a transaction in the online wallet. Then he moves the transaction with memory stick (or some other tool) to the offline machine and signs the transaction. Then this signed transaction is moved back to the online machine and its wallet can now transmit the signed transaction to the EOS network.

    Benefit is that private keys are always stored in a computer that's not connected to the internet. The possibility of losing them for hackers is very low.

    Another usecase is Qubes OS. It works with virtual machines which can be configured to use or not use the internet. While not as secure as a separate airgapped computer, a Qubes offline VM is still a lot better than normal online machine. It's easy and fast to move files between VMs so Qubes computer is great choice for a secure cryptocurrency wallet.

    Todo:

    • Wallet that can create a transaction and then get it signed by another wallet on a separate computer which holds the private key.
  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Bug bounty program

    To incentivize bug finding we should have a fund that is used to pay for people who find bugs.

    How it works? Token holders vote to elect a committee which consist of professionals, like developers ans security experts who can evaluate how meaningful the bugs are that are reported. The committee decides how much the bug finder gets paid. Anybody can submit bugs, but there should be a small fee to prevent spam.

    In the beginning Block.one will probably take care of bug bounties. But in the long run we need to decentralize the ecosystem so that we are not depending on Block.one for everything. So this could be just a proof of concept with very small fund, where we try how it could work in practice. Over time, the fund will get more money and the operation can be scaled.

    This concept can be easily applied to other stuff, too. For example, an insurance dapp could easily use the same codebase with small modifications. Instead of bugs, users report insurance claims, and the committee consists of people who decide whether or not the person gets paid from the insurance fund.

    Todo:

    • A smartcontract which can hold money and distribute it based on a decision of a committee. Committee members are chosen by voting by token holders.
  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Marketplace for complex calculations

    One of the shortcomings of blockchains is unability to make complex calculations. It's not feasible to run smartcontracts that need a lot of computing power.

    TrueBit is one solution to this problem. It creates a marketplace for complex calculations with good gametheoretic foundation. Any user or dapp can ask for a solution for a calculation and anybody can solve it offline and publish the result in the blockchain. User who asks for the solution will pay for whoever published it first. There are also verifiers who check if the solution is right, and if it's not, they can challenge the solution and if they are right, they will get paid instead of the original solver who was wrong.

    To be honest, I'm not aware of any promising blockchain project that would absolutely need this feature. But I can understand how it can help to create a new kind of decentralized applications that haven't been possible earlier. Maybe developers will start to use this when it's implemented in the blockchain.

    I haven't done any extensive research into this, so I don't know if the solution TrueBit uses it's the best or whether it makes sense to use it in EOS blockchain. But it's pretty good and should work quite well.

    To bootstrap the markets for complex calculations, it might be useful, for a limited period of time, to offer extra rewards for performed calculations (funding from worker proposal system).

    TrueBit uses WebAssembly, which might make it easy to port for EOS.

    More information:
    Website: https://truebit.io/
    Wiki: https://github.com/TrueBitFoundation/wiki

    Todo:

    • Research different solutions for performing complex calculations. There might be other good choices besides TrueBit.
    • Create the smartcontract for a complex calculation marketplace. EOS arbitration system could be used in the case of dispute of a solution.
  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Alert service

    There is a lot of stuff happening in the blockchain. Many of these events need human attention, for example if something unexpected happens or something doesn't happen that should.

    A service for automatic alerts is necessary. I guess many BPs and dapps will write their own so they can run their business better. But ordinary users might have also a need for this. That's why it makes sense to create an opensource software so that anybody can run it.

    What we need is a configurable notification service, something like IFTTT. When a trigger event happens, the service performs an action (user will get a notification). The notification can have several different ways to be delivered: wallet, smartphone app, email, sms, rss feed, etc.

    Usecases:

    • BP gets notified when they stop producing blocks (node has went offline).
    • User gets notified when private key is changed. In the case of losing your private key for hackers, you need to know as soon as possible to get your account back.
    • Tokens are de-staked. If hacker gets control of your account and de-stakes your tokens, you have 3 days to prevent the theft. To do that you need to know as soon as possible that de-staking has happened.
    • Merchant gets notified when a payment that he is expecting hasn't happened. For example, a customer has promised to sent money in a few days, but after a week it hasn't happened.
    • Games can use this to notify their players when something important happens in the game. Or players can set up a service for themselves to be updated continously what happens in the game.

    Todo:

    • Plugin for EOSIO node that can be triggered to perform actions. Triggers are "when a certain kind of transaction happens" and "when a certain kind of transaction doesn't happen in a given time period". Actions are plugins for the alert service. Users can enable which they are going to use.
    • Lots of different action plugins: wallet, smartphone app, email, sms, rss feed, etc.
    • Documentation how everyone can set up a EOSIO node with alert service and configure it for their needs. Probably a lot of users want to run their own service so that they don't need to give their contact information (like email) to anybody else. Or they don't want to expose what triggers they will set up.
  • mjhombmjhomb Posts: 13 Jr. Member - 1/5 EOS Tokens
    edited May 21

    Universal Basic Income

    Paid in Eos tokens - equally or perhaps modified by current holdings - to all Eos accounts with strong identity (need to define that!)

    Advantages

    1) improve distribution
    2) bring people into the ecosystem
    3) explore radical transparency

    Part of the proposal would need to fund new accounts for people who are radically transparent. Proposal should target third world in particular.

  • mjhombmjhomb Posts: 13 Jr. Member - 1/5 EOS Tokens
    edited May 21

    Bitcoin Lighting Network Hub

    Bitcoin off chain = Eos on chain. As a gift to btc/crypto - perhaps with minimal fees to make it self funding after the initial development. Great marketing and will also pull lots of people into the Eos ecosystem.

    Obviously needs to be worked out quite a bit...

  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    Proof of Physical Location

    As you probably know, GPS lacks a way to use to to prove that somebody/something has been on a certain place at certain time. FOAM is a Ethereum-based blockchain service which intends to solve this and let users prove that they have been on a certain location.

    I haven't looked into it very deeply, but it looks very promising. Something we could have on EOS, too.

    It came to my mind that in cases like this, where there is already a promising project on another blockchain, the WP could be used to pay for them to adopt EOS blockchain instead.

    Usecases:

    • Games like Pokemon Go, Ingress.
    • Navigation without GPS signal.
    • Tracking for goods, vehicles, animals, etc.

    More information:
    Website: https://foam.space/
    Blog: https://blog.foam.space/
    Whitepaper: https://foam.space/publicAssets/FOAM_Whitepaper.pdf
    Interview at Epicenter: https://epicenter.tv/episode/229/

  • TeddyTeddy Posts: 9 Brand New

    This is very small description of my idea. I will update this steadily.

    Context : In Korea, coupon system is very popular among coffee shop, barber shop or generic stores. They give paper coupon with 10 or 20 empty slot for stamp. If someone visit and buy some goods from that store, then they give stamp on that coupon.

    Problem statement : There are so many paper base coupon issued by many shops(e.g. coffee shop, restaurant, stores and so forth).

    1. this consume real trees to make paper, that meant it harms nature and causes many disaster due to the lack of trees, eventually.
    2. Even they issues coupon, it only can be used issued shop.
    3. Sometimes, they forget to give new coupon or stamp on the coupon.

    Solution :
    Providing new DAPP to replace the paper-based coupon. Actually, new EOS based token will replace the role of coupon. Even people can collect token as a coupon.

    They can use or exchange that coupon with goods(e.g. a cup of coffee). Or they can sell or buy issues token through exchange or peer to peer.

    Also a certain shop uses blockchain crypto currency as a real currency as like as fiat. That is automatically recorded to blockchain, and DAPP can observe that information. After then DAPP automatically issue new token to the user as a coupon.

    This can be realized we can use EOS main net because it has no transmission free. or transmission fee should be acceptably small comparing to coupon value.

    Thanks for your reading.

  • JohncJohnc Posts: 6 Brand New

    @Samupaha said:
    We should start to think what kind of projects should be funded with the worker proposal mechanism. Most of this money should go for public goods and other features that benefit the whole ecosystem.

    Worker proposals shouldn't be used to subsidies for individual businesses. They need to get their own funding from somewhere else.

    This is going to be interesting, have you seen the video in which Dan described a worker proposal for a Steemit type of app ? imagine if that would have an reward pool topped up by inflation and that rewards curators. To me, such an app would kind of fall into the individual business category you've described above. What should and shouldn't be a worker proposal isn't for me to say but I would think some kind of criteria or categorizing would be helpful.

  • SamupahaSamupaha Posts: 52 Member - 2/5 EOS Tokens

    @Johnc said:
    This is going to be interesting, have you seen the video in which Dan described a worker proposal for a Steemit type of app ? imagine if that would have an reward pool topped up by inflation and that rewards curators. To me, such an app would kind of fall into the individual business category you've described above.

    Yes, this would be a business app. I think there will be many different social media apps on EOS ecosystem so there shouldn't be any need to pay for any of them.

    What should and shouldn't be a worker proposal isn't for me to say but I would think some kind of criteria or categorizing would be helpful.

    I'd say the first question is "does it benefit the whole ecosystem?"

    A business app can benefit the whole ecosystem, but if we pay for one, it wouldn't be fair for other similar apps. The result would be continuous fighting over which apps get paid. It's much easier to say "if you are going to do business, your app should fund itself".

    But there might be sometimes a need for little bit of extra incentives. For example, some kind of bootstrap funding might be a good idea. If the community wants a certain kind of app, but there are no developers who would like to do it, a worker proposal could be created to subsidize the app for a period of time. After that, the app should find its own funding. This could be a case when there is a great app that's build on another blockchain and a subsidy would incentivize it to move to EOS blockchain.

Sign In or Register to comment.