“If Bitcoin is decentralized, who finances its development?” This long-standing question, historically solved by the silent work of volunteer Bitcoin developers, now has a new answer: a website that allows Bitcoin users to commit to paying for protocol updates.
Born from an idea by Pierre Rochard, BitcoinACKs aggregates pull requests for protocol enhancements from the Bitcoin Core GitHub (in the programmer’s vernacular, “ACK” means that a proposal or change outstrips the rally).
The website has been around for a couple of years, but Rochard just rolled out a new feature – a commitment option that allows users to commit funding for a specific protocol improvement and pay developers once that improvement has been merged. to Bitcoin Core.
BitcoinACKs: a product of wars to scale
BitcoinACKs grew out of the 2017 scale wars, Rochard told CoinDesk. The chaos of online debates on increasing block sizes and Segwit made Rochard understand that a well-organized and transparent archive of Bitcoin development was needed, both for Bitcoin builders and its consumers.
“After the downsizing drama of 2017, I decided to learn more about Bitcoin’s open source development process and see if I could find ways to be useful. One challenge I faced was finding pull requests with specific criteria that I was interested in: pull requests that were old but with good reviews, pull requests that had been rejected by reviewers, etc., “he told CoinDesk.
Read More: SegWit Goes Active: Why Bitcoin’s Big Update is a Revolutionary Blockchain
“There are 13,600 closed pull requests and 388 open requests. For most contributors this is an intractable amount of data to digest! A second challenge was that all pull request discussion data is stored on GitHub and I wanted a local copy to query quickly and with SQL. It was then that I decided to create BitcoinACK. “
One way to track pull requests, pay for Bitcoin developments
The website aggregates developer pull request comments on GitHub to help developers stay up to date on the status of a pull request. On the site, each request is accompanied by a count of the added and deleted code, the author of the pull request, the date the request was created, who reviewed it, when was the last commit in the repository, and whether the request has was merged with a Bitcoin Core library for distribution in a protocol update.
With this latest update, Rochard has included a “commitment” feature whereby anyone can commit to pay contributors for their work on specific pull requests. These commitments can be paid for through Lightning or on-chain payments processed through BTCPay Server.
Development funders will be able to choose which developer they want to pay for a given pull request, and Rochard told CoinDesk that there are no penalties or executions to keep a user on their commitment; it is up to the user to decide when / if he wants to pay a commitment based on whether or not he is satisfied with the work.
If too many users fail to pay, however, Rochard said he will take action to mitigate such misconduct. This could involve using discrete ledger contracts to create a guaranteed settlement of smart contracts. In this case, if a user commits funds to a developer for a pull request, when the request is successfully merged, this result is revealed to the smart contract to release the payment.
Skin in the game
The BitcoinACKs crowdfunding mechanism is the first in the Bitcoin open source landscape. Previously, you could sponsor individual developers, but you couldn’t directly fund individual updates.
Rochard’s tool makes this possible with its offer to drive Bitcoin development with free market principles by aligning user wishes with developer incentives.
“For me, BitcoinACKs is the way all the work should be done: limit orders (commitments) are entered by owners of capital, workers create value, and owners of capital send money directly to workers. If a capital owner starts to falsify (unjustly denying commitments), he is expelled from the platform. If workers do not create value, they are not paid “.
Read more: Summer 2020 is the funding season for Bitcoin’s open source development
This something for something offers its users the opportunity to express their wishes for the development of the Bitcoin protocol, offering developers another source of revenue.
BitcoinACKs, therefore, opens a new development frontier for both average users and developers. Usually, open source funding has been the realm of cryptocurrency exchanges or other Bitcoin-related companies. These actors will often offer six-figure flat-rate grants to independent developers to fund their work, as we’ve seen from Kraken, Square Crypto, and others.
Now, these large sums can be offset, if not in kind, at least in spirit, by the smaller contributions of the Bitcoin community. Rochard pointed out that this model could even help novice developers see their work by sponsoring a bounty for their pull requests.
User Commitments Against Corporate Grants
Ultimately, Rochard sees BitcoinACKs as another building block for financing Bitcoin’s development. It is the hand shovel complementary to the corporate grant bulldozer, which facilitates targeted and feature specific work where grants allow for more general and developer specific work.
“I think corporate grants work great for funding a specific subset of open source work: independent, self-directed work. It is about funding a public good that has positive ecosystem externalities, and I think any profitable business should do that.
“BitcoinACKs is used to fund targeted and specific results. For example, maybe your company needs a specific API function, instead of asking for favors or hiring full-time employees, it’s more convenient to put a bounty on it. “
As of press time, 11 pull requests have received promises ranging from 10,000 satoshi to over 2 million satoshi (or “sats” – a micro measurement of bitcoin where 100,000,000 sats equals 1 BTC). The two most popular projects, a Bitcoin enhancement proposal for taproot and another to encrypt messages between Bitcoin nodes, received promises of 2,010,116 sat (~ $ 214 or 0.02010116 BTC) and 1,241,210 sat (~ $), respectively. 132 or 0.0124121 BTC).