Let’s talk about ASIC mining

Zooko, it is very simple. ASIC mining acceptance would mean that every single miner that has supported the Zcash network will be displaced and forced to either switch coins or invest in new hardware. By not outright supporting the current GPU mining community for your own coin you are positioning yourself against the very people who provide the coin’s existence. In a way you are biting the hand that feeds you.

I understand that from an objective perspective like one that a dev should be taking, what do you care between GPU and ASIC, either way the coin is going to get mined and the network will be supported. Some may argue that ASIC mining efficiencies would provide a more stable network overall when compared to GPU mining since it is less sensitive to cost-constraints.

However, because ASIC mining is hardware-to-algo-specific, this reduces the supply of possible hardware available to be used for any one coin by bottle-necking the manufacuring of these units (Bitmain). Unlike GPU mining that has numerous manufactures, the ASIC mining hardware supply can be controlled by less entities, thereby increasing centralization by reducing the ease-of-entry into the market/network.

Mining without ASIC machines would allow more people to mine because the ease-of-entry is higher than with ASIC mining. More individual people mining = less centralized, you don’t need data to support a theory as broad as that. ASIC machines benefit from economies of scale, which is more easily achievable by a large corporation than for an individual person.

The other “hypothesis” you mention are IMO smoke and mirrors to distract us from the issue. At the core of the argument is: ASIC mining would mean less individual people mining and more firm/corporation based mining. As more entities control more hashing power, the network becomes more centralized amongst a few large players instead of being decentralized and spread out across the world between everyone that wants to support the network.

Again though, either way this is all pointless because ASIC or GPU mining centralization debates are all eventually made moot by the overall centralized nature of the PoW system and the pool-based mining structures in place. After the war of ASIC vs GPU is over the pools will still be there not only taking payout/mining fees, but undermining the centralization of the network by putting all the power in the hands of few. No pools, no mining, no network. So who controls the pools? Questions to ask yourself Zooko.

Other than a possible PoS migration, one potential solution of the top of my head: Require miners to run a full node, while also updating the node software to allow for GPU mining. Right now I can launch my full node on Ubuntu via Windows 10 and enable mining with my CPU by setting ‘gen=1’ in my configuration file. If you were to incorporate GPU mining software (look at EthOS, linux-based operating system with miners, drivers, etc.) into the node functionality, you could in theory have a Zcash core-pool. No more individual pools that feed the network. Instead you have everyone’s rig running a node and hashing directly to the network. Mining rewards are sent to the node account and the network is not only benefiting from more nodes but from true decentralization.

In conclusion: ASIC vs GPU centralization arguments are entirely undermined by PoW pool-based centralization. A PoS migration would be best though maybe through some clever re-working of the Zcashd software we can both eliminate pool-based centralization problems, while strengthening the network overall. A potential combination of both (PoS with full node requirement) could be an end-all solution that may prove to be the best for the network.

If anyone needs help getting a full node on Ubuntu via Windows 10 I can help them it is very easy.