<blockquote>
<p>Why do we have a BIP process?</p>
</blockquote>
<p>All ideas for Bitcoin clearly don't need and shouldn't have a BIP. If a wallet developer has an idea to improve say the graphical user interface (GUI) for the wallet they are working on there is no need to formalize this idea in the BIP process. Even if it was wildly successful and every other wallet in the ecosystem ended up copying the feature there are no cross compatibility issues. Every wallet can independently choose whether to implement the feature and make tweaks to the feature without impacting the broader ecosystem. To encourage other wallets to implement the feature the developer could document the feature in their wallet repo or a design repo like <a href="https://github.com/BitcoinDesign" rel="nofollow noreferrer">Bitcoin Design</a>. Developers are free to experiment and implement the ideas without interacting with the BIP process.</p>
<p>However, there are examples where you either need the entire ecosystem to converge on a single standard/specification or at least it would be strongly preferable that they do. The most extreme example is consensus rules. Unlike the wallet GUI example, if two Bitcoin implementations experiment with different consensus rules on mainnet then they can split the network and create two blockchains with a shared history. A formalized BIP process brings additional scrutiny and clarity to an emerging (and ultimately finalized) proposal separate from any particular Bitcoin implementation.</p>
<blockquote>
<p>It seems like unnecessary centralization and introduces gatekeepers (BIP editors) and bottlenecks.</p>
</blockquote>
<p>Agreed that these would generally be considered downsides. If the upsides of the BIP process were non-existent (or minimal) then there would be a strong argument to discontinue the BIP process. I would argue though that the upsides discussed above strongly outweigh the downsides. Not only for consensus rules but for any examples where a single standard is preferable to every party in the ecosystem implementing entirely different approaches.</p>
<blockquote>
<p>If something makes it into Bitcoin Core and/or other implementations and users run that code then surely whether it has a BIP or not is entirely irrelevant.</p>
</blockquote>
<p>There is an argument for this but as discussed <a href="https://bitcoin.stackexchange.com/questions/112365/does-the-reference-client-bitcoin-core-determine-the-consensus-rules">here</a> we don't want to hitch Bitcoin's security and consensus rules to a single implementation permanently. There is no cast iron guarantee that Core maintainers and contributors will act in good faith and not unilaterally make (or resist) consensus rules changes against the wishes of the broader community for the rest of Bitcoin's existence. (To be clear I don't think this is a current concern but stranger things have happened when you consider the entire course of human history.)</p>
<blockquote>
<p>Similarly why should proposals be stored in a single repo? If I want to propose an idea for Bitcoin I'd rather just store that proposal in my own repo than submit it to the BIPs repo.</p>
</blockquote>
<p>As soon as you introduce multiple repos you introduce the prospect of multiple sources of truth and multiple sources of reference. Some repos will disappear or not be maintained. They may store an outdated version of a particular BIP and then readers of that outdated version would get an inaccurate perspective of the current (or finalized) state of that proposal. The upsides of having a BIP process (focusing review and scrutiny on a single document in a single repo and offering clarity to the readers of the finalized specification) are abandoned.</p>

CC BY-SA 4.0
2022-02-14T07:59:37.767Z
Good, nuanced overview. As a learner of bitcoin, I often consult the BIP repo and I think that that is an attestation to its usefulness and its fulfilment of one of its primary aims. Without BIPs or a less formal process it would be much harder to understand the rationale of why certain changes were made.
stackaccount
CC BY-SA 4.0
2022-03-05T13:46:51.860Z
Another point is discoverability. If everything were distributed over many different sources, it would be much harder to keep track of all currently debated proposals.
Murch
CC BY-SA 4.0
2022-02-13T14:23:24.307Z
2022-02-13T14:45:20.753Z
2022-02-13T14:45:20.753Z
Michael Folkson
<p>Why do we have a BIP process? It seems like unnecessary centralization and introduces gatekeepers (BIP editors) and bottlenecks (BIP editors need to merge new BIPs and changes to BIPs). If something makes it into Bitcoin Core and/or other implementations and users run that code then surely whether it has a BIP or not is entirely irrelevant.</p>
<p>Similarly why should proposals be stored in a single repo? If I want to propose an idea for Bitcoin I'd rather just store that proposal in my own repo than submit it to the BIPs repo.</p>
<p>These questions were asked by prayank during a <a href="https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-October/019510.html" rel="nofollow noreferrer">BIP process meeting</a> in October 2021 and have been paraphrased.</p>

<bip>
Why have a BIP process at all? Why should we store BIPs in a single repo?
Michael Folkson
# Why have a BIP process at all? Why should we store BIPs in a single repo?

(Asked by: username_0 on 2022-02-13)

Why do we have a BIP process? It seems like unnecessary centralization and introduces gatekeepers (BIP editors) and bottlenecks (BIP editors need to merge new BIPs and changes to BIPs). If something makes it into Bitcoin Core and/or other implementations and users run that code then surely whether it has a BIP or not is entirely irrelevant.

Similarly why should proposals be stored in a single repo? If I want to propose an idea for Bitcoin I'd rather just store that proposal in my own repo than submit it to the BIPs repo.

These questions were asked by prayank during a [BIP process meeting](https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-October/019510.html) in October 2021 and have been paraphrased.

**Tags:** bip


---

## 1 answers

### Answer by username_0 on 2022-02-13. Score: 3 | Accepted answer

> Why do we have a BIP process?

All ideas for Bitcoin clearly don't need and shouldn't have a BIP. If a wallet developer has an idea to improve say the graphical user interface (GUI) for the wallet they are working on there is no need to formalize this idea in the BIP process. Even if it was wildly successful and every other wallet in the ecosystem ended up copying the feature there are no cross compatibility issues. Every wallet can independently choose whether to implement the feature and make tweaks to the feature without impacting the broader ecosystem. To encourage other wallets to implement the feature the developer could document the feature in their wallet repo or a design repo like [Bitcoin Design](https://github.com/BitcoinDesign). Developers are free to experiment and implement the ideas without interacting with the BIP process.

However, there are examples where you either need the entire ecosystem to converge on a single standard/specification or at least it would be strongly preferable that they do. The most extreme example is consensus rules. Unlike the wallet GUI example, if two Bitcoin implementations experiment with different consensus rules on mainnet then they can split the network and create two blockchains with a shared history. A formalized BIP process brings additional scrutiny and clarity to an emerging (and ultimately finalized) proposal separate from any particular Bitcoin implementation.

> It seems like unnecessary centralization and introduces gatekeepers (BIP editors) and bottlenecks.

Agreed that these would generally be considered downsides. If the upsides of the BIP process were non-existent (or minimal) then there would be a strong argument to discontinue the BIP process. I would argue though that the upsides discussed above strongly outweigh the downsides. Not only for consensus rules but for any examples where a single standard is preferable to every party in the ecosystem implementing entirely different approaches.

> If something makes it into Bitcoin Core and/or other implementations and users run that code then surely whether it has a BIP or not is entirely irrelevant.

There is an argument for this but as discussed [here](https://bitcoin.stackexchange.com/questions/112365/does-the-reference-client-bitcoin-core-determine-the-consensus-rules) we don't want to hitch Bitcoin's security and consensus rules to a single implementation permanently. There is no cast iron guarantee that Core maintainers and contributors will act in good faith and not unilaterally make (or resist) consensus rules changes against the wishes of the broader community for the rest of Bitcoin's existence. (To be clear I don't think this is a current concern but stranger things have happened when you consider the entire course of human history.)

> Similarly why should proposals be stored in a single repo? If I want to propose an idea for Bitcoin I'd rather just store that proposal in my own repo than submit it to the BIPs repo.

As soon as you introduce multiple repos you introduce the prospect of multiple sources of truth and multiple sources of reference. Some repos will disappear or not be maintained. They may store an outdated version of a particular BIP and then readers of that outdated version would get an inaccurate perspective of the current (or finalized) state of that proposal. The upsides of having a BIP process (focusing review and scrutiny on a single document in a single repo and offering clarity to the readers of the finalized specification) are abandoned.

> **Comments:**
> **username_1**: Good, nuanced overview. As a learner of bitcoin, I often consult the BIP repo and I think that that is an attestation to its usefulness and its fulfilment of one of its primary aims. Without BIPs or a less formal process it would be much harder to understand the rationale of why certain changes were made.  
> **username_2**: Another point is discoverability. If everything were distributed over many different sources, it would be much harder to keep track of all currently debated proposals.  

---

