0

I see a list of Bitcoin feature and pull requests here. How do all million plus users agree to these feature/bug requests? Do all users of Bitcoin have to approve them, or who represents them in approving these code requests?

Where can I access the original, Satoshi written Bitcoin code?

3

How does Bitcoin get developed?

Originally, Bitcoin was developed by its creator, Satoshi Nakamoto. After Nakamoto disappeared in April 2011, the Bitcoin client evolved into the Bitcoin Core project which is now developed by the loosely organized Bitcoin Core contributors. There are also a number of alternative Bitcoin implementations today, but the majority of Bitcoin nodes run some version of Bitcoin Core. This makes Bitcoin Core the de facto "specification" of the Bitcoin consensus code.

Bitcoin Core contributors discuss pull requests, issues, and features in various venues including the bitcoin/bitcoin GitHub repository and #bitcoin-core-dev on IRC. Another important communication channel is the Bitcoin developer mailing list which is used to discuss any Bitcoin implementations and especially Bitcoin Improvement Proposals (BIPs). BIPs are additionally collected in the BIPs repository (which is part of the Bitcoin organization on GitHub, but a separate repository from the Bitcoin Core source code).

All of the work happens in public, allowing anyone to watch what happens and to start contributing at whim. In practice, Bitcoin Core development has involved a few hundred people in the past years, while the broader industry probably employs a couple magnitudes more people to work on related opensource or proprietary projects such as e.g. services, wallets, shops, research, infrastructure projects, exchanges, documentation, education, entertainment, news, and lobbying.

How do users agree?

Each Bitcoin full node enforces the network's consensus rules individually. This means that any effort to change consensus rules requires convincing users to run different software.

E.g. the Bitcoin Core client does not have an auto-update function, so each time a new version is released, Bitcoin Core users explicitly decide whether to run it. In the past, alternative Bitcoin clients have occasionally provided a larger share of the Bitcoin node population when there were major disagreements about the direction Bitcoin's network should get evolved in.

Besides picking the software they run, Bitcoin users engage with development efforts via numerous online communities, news magazines, conferences, meetups, and other social media, or by funding specific efforts they wish to further.

Related reading

1
3

How do all million plus users agree to these feature/bug requests?

Mostly by deciding whether to continue using Bitcoin-core or switch to one of the many other existing implementations of a Bitcoin wallet.

Those who are particularly competent to assess the changes are probably also, in many cases, competent to fork the code base and not introduce changes they object to. If others share their view of the changes, this might be viable. Certainly Bitcoin core has been forked many times in the past.

Do all users of Bitcoin [core] have to approve them

They mostly get to vote with their downloads.


Related questions

Other relevant sources of information

2
  • I apologize, I was referring to the original bitcoin code written by Satoshi, Bitcoin proponents always say Bitcoin is open-source, and has continuous updates, where is the Original bitcoin code, and who allows changes on that? I am not referring to the new bitcoin core application code, appreciate it, feel free to add it into answer
    – mattsmith5
    May 2 at 20:20
  • 1
    Bitcoin Core is the name of one of several open source projects (but by far the most popular) that works on a continuation of the codebase created by Satoshi. The original codebase of course doesn't change - if it did, it wouldn't be original anymore. May 2 at 20:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.