Up until this point I have not been taking a side on the Founders Reward debate, acting as a Mod I try to remain neutral in most conversations while spurring debate with threads like this one. However with a topic as important as this I realize that expressing no opinion is basically the same as a vote to let the code remain as-is: letting the founders reward expire.
[ UPDATE: I have decided not to submit this as a full ZIP proposal due to the likely hood it could be gamed based on feedback I received below]
obligatory disclaimer: my opinions are my own and don’t reflect those of ECC or the Zcash Foundation
—How did we get here?
As you may have heard me saying before, the Zcash launch was not an easy one with no such thing as ICOs and a total of $3M had to be raised to effectively get Zcash Company started. Back then nobody had ever heard of zkSNARKs and didn’t know if Zcash would be successful. According to stories I have heard from Matthew Green and Eran Tromer, they got rejected by many potential VC investors and had to pledge a good portion of the rewards/company (16.4%) just to raise the $3M.
—So in the almost 3 years since Zcash launched what has the Founders Reward been used for?
- From barely working proof-of-concept academic Zerocash code to production ready Zcash code (if you’re not sure of the difference listen to Sean Bowe explain)
- Establishment of the Zcash Foundation
- Listing on just about every major exchange, including the most strict ones like Coinbase, Gemini and even OTC NYSE markets through Grayscale and Galaxy Digital trusts.
- Acceptance by the strictest state crypto regulator in the US
- Tons of Code improvements including squashing inflation bugs and denial of service
- Hiring top level developer/engineer talent for the ECC team
- Hiring top level developer/engineer for the Foundation team
- Ongoing work with regulators about the need for acceptance of privacy preserving technology like Zcash
- Sapling , the huge performance improvement Zcash badly needed
- Giving away over $380,000 in Grants by the Foundation (more coming this year)
- Building a community funding platform for Zcash Projects
- ZecWallet and Zepio wallets built with Foundation financial support
- New Zcash Node software ZEBRA from the Foundation independent of ECCs Zcashd
- Eli Ben-Sasson started Starkware , STARK research which can benefit Zcash
- Zooko supported Bolt Labs which is building a Lightning Network on Zcash
- The mobile reference wallet code was released, and ongoing work with wallet providers which will hopefully lead to many mobile wallets available soon.
Before you skip to the next heading, I want you to stop for a second and re-read the list above . That is a huge amount of work that has been done by a Company and Foundation which didn’t even exist 3 years ago
—Why isn’t Zcash done yet, they have had lots of money and time?
The old saying goes “Good software takes 10 years” and Blockchain software is no exception.
Overall the ECC has been very methodical about how it rolls out software, marketing, and hype. This has led some users to say that ECC doesn’t put enough effort into marketing. In the cryptocurrency space where its common to see “announcements that there is going to be a big announcement!” and Twitter “Giving away a TESLA” memes the ECCs approach can seem drastically different. This is not only because the Founders of Zcash were comprised of academics and OG cypherpunks (as opposed to marketing pros) but because they have been around long enough to have learned important lessons from other projects like eCash and core software lessons like: Get Big Fast syndrome, Overhype syndrome, Too frequent upgrades, etc… . The ECC spends lots of time “getting it right” rather than pushing out often. It’s important not to forget: “ Yes, software takes 10 years to write, and no, there is no possible way a business can survive if you don’t ship anything for 10 years. ” good software still takes 10 years get used to it
—So what’s this about the Founders Reward ending?
The Zcash Founders Reward will end in 2020 if nothing changes. As it sits right now I don’t think the software is in a finished enough state to pull all funding from the projects core teams: the ECC and the Foundation, but that doesn’t mean I think the “Founders Reward” should continue.
In a perfect Bitcoin-esqe world we could simply let direct funding for development lapse and the community would step in to make up the difference, but with Zcash I don’t think that suddenly asking the community to abruptly start pledging huge amounts of ZEC every-month for developers is realistic. The core tech is complex, and the stake of users privacy too high to just hope that everything will be OK. Having core team members in the ECC and Zcash Foundation allows us to fix bugs, adopt, and adapt faster to keep up with the competing protocols.
—How much is needed?
The ECC has released a transparency report that outlines what a “sustainable” burn rate is in USD for both the ECC and Foundation. This chart is a result of what was negotiated between the Founders, Foundation, and ECC behind closed doors, so we don’t have a super detailed breakdown of exactly who gets what but we do have enough to do the math on what could be sustainable going forward.
In that report we have:
If the community decides that a continuing “development focused” fund is worth having then the two most obvious line items Founders, and Additional should be removed which leaves us with:
- Zcash Foundation $288,750 per month
- ECC $754,688 per month
Thereby giving us a rough estimate of what the ECC and Foundation need to maintain their current development capacity is approx $1M per month. I purposely left off the “Miners” line item because it’s not important to figure out funding needs. It seems that this $1M a good rough number to plan on for the future for ECC and probably the Foundation because when asked in the ECC 2019 Q2 livestream if these numbers would be good going forward the ECC CEO and CFO concurred . I’m just assuming the same amount for the Foundation would be adequate.
—9% over 7 years
That brings us to my proposal of a development fund of 9% of block rewards capped at 7 years. The 7 year limit is based roughly the statements that I made above about good software requiring 10 years to accomplish. Setting the end date in 2027 will give about 11 years total since Zcash launched and if it’s not “good” by then then it likely won’t ever be. This also forces a cost efficient (50% less funding) re-structuring after year 8 because of the next halving will occur in 2024.
—Monetary Supply
So lets run the numbers as to what 9% over 7 years would mean for the Zcash total monetary supply. As we know the original plan was 10% of the total supply of Zcash would allocated for the founders reward, which is 2.1M coins. If were to allocate 9% of the new halved block rewards (25 ZEC ~ 10mins = 2.25ZEC ~ 10mins) for the next four years we get 9,720 ZEC per month = 466,560 4yrs. Then the last 3 years (12.5 ZEC ~ 10mins = 1.125 ZEC ~ 10 mins) 4,860 ZEC per month = 174,960 3years. Giving us:
- Founder Reward of 10% of total supply = 2.1M ZEC
- Development only plan of 9% over 7 years = 641,650 ZEC
- Total ZEC allocated 13.05%
- Total monetary supply unchanged
—Funds available for Development
If we factor todays rates (which are hard to calculate because we are in the middle of a bull run) at about $100 ZEC then:
Approx. USD value at today’s rates $972K/mo after 2020 ~ $486K/mo after 2024
Which you can already see is pretty close to the $1M per month which should be enough to keep the ECC/Foundation going. I personally feel that allocating an additional 3% of the total monetary supply of ZEC to support development for the next 7 years is reasonable and may even be supported by those on the fence if they want the FR to end.
—All Development Fund addresses are hard coded 50% ECC / 50% Foundation
I know that the current balance of funding requirements is not near the 50/50 mark for the ECC and the Foundation and I’m not sure it ever will be. But I do know that they ECC and Foundation were able to reach an agreement on adjusting the balance of funds before and I don’t think it would be an insurmountable task for the ECC and Foundation to coordinate in the future to be sure the funds are distributed as needed. If all else fails and some sort of agreement can’t be made then the default 50/50 will remain in place.
—Consensus
So the next question that has been discussed in other proposals is how to gauge Community consensus on whether this (or any other) development proposal is supported by a majority of the community. As much as I like the idea of some sort of on-chain voting/staking system I personally don’t think there is time or a good enough system in place for such a new process to be implemented before time runs out. So my proposal is to do it the old fashioned way – network consensus. Whichever node software is supported by the majority of the network becomes the rule.
The Zcash network is the miners and node operators in the community and they now have the choice of running the Zcashd node software which is supported by the ECC or Zebrad which is supported by the Zcash Foundation. Up until version 1.1.2 Zcashd had a flag -disabledepreciation
to allow the node to continue running beyond the 16 week deprecation schedule. By removing this flag the ECC sought to keep the majority of the network running the most recent software which is good for network stability, but bad for any choice of software other than the latest version, thus accepting any changes that came with it. I don’t know if the current version of Zebrad allows disabledeprecation.
So my idea is to re-instate the -disabledeprecation
flag to let the community decide if they want to support a new development fund (like the one I propose here or otherwise) with the nodes themselves.
I’m not sure exactly how this would work in practice, but in my head it goes something like:
- A Node software version released by ECC and Foundation prior to , but not the last , before the Founders reward ending blockheight has the option to disable its deprecation, thus letting nodes continue to run beyond the FR ending blockheight if they choose.
- The Node software release from ECC and Foundation directly prior to the FR ending blockheight has a new % development fund included in it and is consensus incompatible with the prior version.
- If more than 50% of the network miners/nodes vote with the
disabledepreciation
flag then the FR ends. - If more than 50% of the network miners/nodes vote by running the latest version with a development fund then that becomes the new rule.
So I honestly have no idea if this would work since I’m not a developers/cryptographer and don’t know the network security implications of this kind of fork, or any gameable aspects. But I thought I would just put it out there.
—Conclusion
Feel free to tell me what a bad idea this is, or what I could do to tune/fix it. I have no idea how to submit a ZIP for it either.
Again, this is just my personal idea and does not represent the views of ECC of the Foundation. I sincerely hope that we can continue to see Zcash grow into a private global payment solution if for no other reason than to counteract the impending hegemony of private corporations over the cryptocurrency space. Privacy is a fundamental human right and it should be up to individual to choose what they want to share without having to give their data to whatever entity has spent the most money to monetize it for themselves.
ALL IN ZEC