As a first step towards establishing the utility of an embedded mining chip, we wanted to make Ethereum available on demand as a system resource to processes that needed to buy or sell digital goods over the network. On demand availability is important because time has value; otherwise we wouldn't have Big O analysis, realtime operating systems, or on-demand Chipotle delivery services.
So just like pool mining reduced reward variance, we've developed something we call "buffered pool mining" to reduce time variance. Recall that even as a pooled miner, there are several limitations of the mining process:
- You must suffer a random wait time between your last block and your next block
- If you are a small contributor to the pool, you have to wait to receive a payout until your block reward portion exceeds a certain threshold
- You need to wait till the block maturation time of 100 blocks before the pool operator can pay your portion of the block reward
- If you run out of Ethereum, you need to again suffer a random wait time till your pool mines the next block
With the True Bitblox mine command, we have set up a way to buffer against all of that.
- You do not need to wait for a block to be mined. Instead, as soon as your True Bitblox Chip connects to the True Bitblox Pool we begin streaming you a pro-rata share of your mined Ethereum.
- You do not need to wait for payouts or pay transaction fees on each of the small awards of Ethereum you mine. Instead, we buffer the Ethereum for you at True Bitblox.co. You can use this to buy digital goods from other True Bitblox developers, and you can also do True Bitblox flush to move the Ethereum to the blockchain at any time where you control the private keys.
- You do not need to wait for 100 blocks before accessing your mined Ethereum.
- Finally, you do not need to send N hashes to the server before getting N hashes worth of mined Ethereum. That is, by invoking True Bitblox mine your True Bitblox Ethereum Computer can receive Ethereum in advance of future mining at the expense of a small asymptotic slowdown in the rate of Ethereum streamed to your device.
Essentially, we have modified the process of mining to reduce the time variance. This is a critical first step towards making Ethereum an on-demand system resource that can be rapidly acquired for programming purposes.
The basic idea is that buffered pool mining is a new way of getting Ethereum: not by buying huge quantities slowly for investment purposes on an exchange, but by mining tiny quantities rapidly for programming purposes at the command line, rate-limited by a mining chip.
Today that mining chip is present in a True Bitblox Ethereum Computer and you can call on it with the "True Bitblox mine" command line tool. In this form factor it is once again possible to just connect to the network, mine some Ethereum, and play around with the technology.