<oembed><type>rich</type><version>1.0</version><author_name>npub1tjephawh7fdf6358jufuh5eyxwauzrjqa7qn50pglee4tayc2ntqcjtl6r</author_name><author_url>https://nostr.ae/npub1tjephawh7fdf6358jufuh5eyxwauzrjqa7qn50pglee4tayc2ntqcjtl6r</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2015-06-18&#xA;📝 Original message:On Thu, Jun 18, 2015 at 1:14 PM, Wladimir J. van der Laan &lt;laanwj at gmail.com&gt;&#xA;wrote:&#xA;&#xA;&gt; Like in any open source project there is lots of decision making ability&#xA;&gt; for code changes. I&#39;d say look at the changelog for e.g. 0.11&#xA;&gt; https://github.com/bitcoin/bitcoin/blob/0.11/doc/release-notes.md#0110-change-log,&#xA;&gt; or follow pull requests for a while, to see how many decisions about&#xA;&gt; changes are made from day to day. No, I&#39;m not sitting on my hands, and so&#xA;&gt; is none of the other contributors that you&#39;d like to get rid of.&#xA;&gt;&#xA;&#xA;The analogy goes further even. Even though I disagree with some of the&#xA;changes you&#39;re making, I respect Mike&#39;s (and anyone&#39;s) right to make a fork&#xA;of Bitcoin Core. That&#39;s how open source works: if people disagree with&#xA;changes made or not made, they can maintain their own version. However:&#xA;&#xA;&#xA;&gt; Consensus changes are *much* more difficult, on the other hand. Even&#xA;&gt; relatively straightforward softforks come with a long discussion process&#xA;&gt; (see BIP62, BIP66). A hardfork is hard to do at the best of times (everyone&#xA;&gt; needs to upgrade their software!), and simply not possible if almost the&#xA;&gt; entire technical community disagrees with you.&#xA;&gt;&#xA;&#xA;Consensus changes - in particular hardforks - are not about making a change&#xA;to the software. You are effectively asking users of the system to migrate&#xA;to a new system. Perhaps one which is a philosophical successor to the old&#xA;one, but a different system, with new rules that are incompatible with the&#xA;old one.&#xA;&#xA;I believe this is something that can only be done if there is no&#xA;controversy about the change, for different reasons:&#xA;&#xA;* Risk: no matter how you determine the switchover date, there is no way of&#xA;knowing when (and whether at all) everyone changes their full nodes (and&#xA;perhaps other software), and even very high hash power votes cannot prevent&#xA;an actual fork from appearing afterwards. At best, people lose the&#xA;guarantee that their confirmations are meaningful (because at some point it&#xA;becomes clear that the other side will get adopted, and they need to&#xA;switch). At worst, a fork persists, and two partitions appear, in each of&#xA;which you can spend every pre-existing coin. This defeats the primary&#xA;purpose Bitcoin was designed for: double spend protection.&#xA;&#xA;* Philosophy: Bitcoin is not a democracy. The full node security model is&#xA;designed to minimize trust in other parties in the system. This works by&#xA;validating as much as possible according to the consensus rules. In&#xA;particular, there is no &#34;majority vote&#34; that can override things (contrary&#xA;to what some people think, it is not &#34;longest chain wins, and a majority of&#xA;miners decide&#34;; even a majority of miners cannot steal your coins or&#xA;produce more than the allowed subsidy, unless they convince others to&#xA;change their software). Changing the rules should be possible if there is&#xA;wide consensus, but nobody should feel forced to change their code against&#xA;their will.&#xA;&#xA;* Governance: being able to push for a controversial change to the system&#xA;sets an incredibly dangerous precedent about who is in charge of the&#xA;system&#39;s rules. What if next time it is a change demanded by parties with&#xA;less good intentions (and yes, I believe people in this discussions all&#xA;have good intentions to improve the system in a way they think is most&#xA;useful)? I can promise you that I will say anything in mail to this list if&#xA;someone points a gun at me, and I think you should make the same assumption&#xA;about other people here. By avoiding controversial changes, you avoid&#xA;external and potentially invisible manipulation.&#xA;&#xA;Of course, sometimes changes to the consensus rules may be wanted. The&#xA;presence of a bug is a good reason, and widespread agreement about one of&#xA;the system&#39;s limitation is too. As I said before, I think technological&#xA;growth in network bandwidth, processing power, and storage, are a good&#xA;reason why the system should be able to scale proportionally. I think there&#xA;are good technical and economic reasons why we should be cautious about&#xA;this, but the primary requirement is consensus, and aligning people&#39;s&#xA;expectation about what they can expect from network&#39;s evolution.&#xA;&#xA;-- &#xA;Pieter&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150618/306edc65/attachment.html&gt;</html></oembed>