My take on ProgPOW — looking for a reasonable answer to a reasonable question
Although it may look from the post that I am “anti-ProgPOW”, I am actually reasonably neutral — so please no pitchforks. The point of this article is my discovery that being neutral might not be an option as it makes me very uncomfortable.
I have been delaying writing this opinion piece to avoid the distraction. I have just come back from the Stanford Blockchain conference. It was the first time I have attended a blockchain conference which is not specific to Ethereum (in the past I only attended Devcon, Edcon, and DappCon), and it is there that I got some insights that I was missing earlier. If you read (or just scroll) to the end, you will see what finally triggered me to write this. I reserve the right to change my opinions, and urge others not just take my word for it — use this only as a guidance and do your own research.
I will structure this opinion piece as a series of four claims. Any of them could be subjective or untrue, but I currently believe that they hold.
Claim 1: The only ways to stop the development of specialised mining devices for Ethereum are to make ETH really cheap, or to drastically reduce mining reward
Both of these action lead to the reduction of mining revenue. Nothing else will credibly stop people from trying to develop better devices.
Some people claim that the reason that the reason EtHash specialised mining devices appeared only recently (3+ years after the launch of Ethereum) is due to EtHash’s excellent “ASIC-resistance”, compared to other algorithms. I believe that instead this 3 years delay is mostly due to:
- Ethereum not being worth much until the beginning of 2017
- Credibility of Proof Of Stake replacing PoW “soon”. The key word here is “replacing”. Eth 2.0 pivot in June 2018 meant that PoS and PoW chains will coexist, at least for some time.
It appears to me that the growing consensus among blockchain developers is that it is counterproductive to fight the specialisation of mining hardware. The goal instead should be indirectly fostering (or at least not resisting) more competition in the mining hardware development, which can be achieved by keeping mining “rewarding”. This can be done either by increasing the rewards, or by decreasing the mining costs. Both EIP-1234 (reduction of reward) and ProgPOW (increase of mining cost) go into the opposite direction.
Claim 2: GPU mining is a losing battle, and Ethereum is the last bastion
If we look at a very helpful table of how much miners earn per day in USD, from messari.io, and recall that Bitcoin, Dash, Litecoin, ZCash, Bitcoin Cash are predominantly mined with specialised (not GPUs) hardware, it becomes clear that Ethereum is “the last bastion” of GPU mining.
I do not anticipate any new cryptocurrencies launching with the aspiration of being “ASIC-resistant”. Notable example is Grin, which will increase the reward share of their ASIC-friendly algorithm from 10% to 100% within the first 2 years after launch. Decision of Grin to actually make one of the algorithms ASIC-friendly is due to their hope that making ASIC design simpler will encourage competition. Here is the relevant video link.
Claim 3: Hardware design shops are getting better at what they do
One of the most interesting takeways from David Vorick’s talk (video link) for me was that the process of designing digital chips is separate from “taping out”, which is in turn separate from the actual fabrication. Another interesting fact about people like David is that it does not take a very long time (1–2 years) for a very good software developer to learn enough about hardware design to set up a design shop. The required information to do such a transition is not well shared and accessible, so one has to learn directly from people, but such transition is not at all impossible. Hardware design is not a black magic and I expect, given the demand, the number of independent hardware design shops will only grow.
Claim 4: Pursuit of “ASIC resistance” is a strategy of denial that can hurt more than help
There were some calls to the Ethereum protocol developers to come up with the “Guidelines for the developers of the specialised mining hardware for ProgPOW on Ethereum”. At first, I did not really understand what these guidelines would be. But recently someone has explained to me that it would be basically answer to the question: “Hey, Ethereum protocol developers, we heard you are switching PoW to ProgPoW. We want to start designing a specialised hardware for it (yes, we know that you think we shouldn’t, but it is neither illegal nor unethical to do it, so we will give it a shot). Please tell us what we should do to make sure we are not labeled as bad actors after the fact”.
This is a very reasonable question. But if you subscribe to the ASIC-resistance strategy, the only answer you can give is this: “There is nothing you can do to prevent being labeled as a bad actor. We don’t want you to develop your hardware, and if we see that you have succeeded, we will try to do another PoW change so you cannot sell your hardware and go out of business”. Which is not a very reasonable answer, and can hurt more than help.
This combination of reasonable question and unreasonable answer is what actually motivated me the most to write this article in the first place. So what the reasonable answer should be?