Subject: Re: [bitcoindev] The case for privatizing Bitcoin Core

From: TheCharlatan <[email-masked]>
Date: Tue, 17 Jun 2025 01:30:44 -0700 (PDT)

I kind of hate that my first email to the list is commenting on a meta 
issue. My impression is that the concerns raised here are overblown.

The question around how to handle data embedding and meta protocols through 
policy has been a major discussion point on the repository for more than a 
decade. Even with a clear majority of regular contributors agreeing, a 
decision on the topic was always going to arouse major controversy. The 
perceived brigading did not impede the project from making progress on the 
issue. It led to a rare moment of alignment in the form of a common 
statement, brought more eyes to reviewing the pull requests, and finally 
led to a resolution of the question. The discussion was also focused on the 
two pull requests, and did not impede progress on the 300+ others. Contrary 
to public perception, I also think moderation of the pull requests in 
question was ok. I especially like that it was kept open by the moderators 
for people to comment on, since people are clearly still confused on what 
the change actually does. More importantly it also shows that our 
organization is still the same scrappy, loose collective of individuals 
with individual approaches and opinions capable of tolerating dissent. If I 
were to choose a client to run my money on, these are all soft qualities 
I'd look out for.

On the topic of giving people a platform for spreading lies through a 
public issue tracker and review mechanism, regular posting on social media 
seems way more effective at this. Soliciting public feedback from users 
during pull request review is very useful. If somebody tries out the new 
API I am working on, I'd like their feedback to be visible and easily 
submitted.
On Tuesday, 17 June 2025 at 00:06:58 UTC+2 Bryan Bishop wrote:

> Hi,
>
> On Sat, Jun 14, 2025 at 1:29 PM Antoine Poinsot <[email-masked]> 
> wrote:
>
>> I started reading by speculating you were defending the case for 
>> something akin to a "source-available" Bitcoin Core. [... ]However you are 
>> not making the case for this, but for a private Bitcoin Core repository 
>> with a public mirror.
>>
>
> I will not claim I am an eloquent writer. In fact, Adam Back rightly 
> points out that some of my phrasing is deeply dumb: in one paragraph I 
> started off a chain of ORs of alternatives that began with publishing cut 
> releases instead of every incremental commit. I didn't mean to suggest 
> Bitcoin Core should only publish cut releases, only that it was an option 
> that could be supported by social coding tools. It was followed by a chain 
> of "ORs" of alternatives, and overall I could have worded that paragraph 
> better. Oops.
>  
>
>> The public mirror would have comment threads on pull requests originating 
>> from the private repository and the possibility to open issues. It would 
>> essentially enable developer to opt into engaging on public comment threads 
>> (for bug reports, contentious pull requests if they see fit, etc..) while 
>> always having the possibility to retreat in the private repository to 
>> focus. This does sound more appealing to me, although it raises question 
>> with regard to its feasibility and the churn it could introduce (could the 
>> public mirror insert public comments within the synced private thread? or 
>> would it have to duplicate every single thread?).
>>
>
> All kinds of arrangements are possible, including bi-directional 
> synchronization, or one-way synchronization and pingbacks with "review" 
> before posting synced content internally, ... or many other options. It's 
> up to the developers using the tools to decide if they find them useful. It 
> could be beneficial for a variety of different private development tools to 
> exist and be tried by different devs. There likely isn't one workflow that 
> works best for everyone, instead a bunch of differentiated preferences or 
> ways about getting their work done.
>  
>
>> You touch on the office culture and the need for a platform that would be 
>> a better sweet spot between unmoderated public discussions and entirely 
>> private discussions happening in the confines of a Bitcoin developer 
>> organization's offices. However it's unclear that what drives a lot of 
>> discussions to happen in offices is the occasional disruption of online 
>> fora, rather than just the natural advantages of in-person discussions.
>>
>
> I don't know how to reply to this. I thought I had brought up offices as 
> an example of existing private development efforts that already exist and 
> are already more private than an online members-only social coding tool. To 
> the extent that "private development is bad" is a motivation to not do the 
> things I have suggested, then I wanted to point to offices as a trend that 
> already exists and highlight how members-only open source software 
> development is a better option for some of us and somewhat disproves 
> "private development is bad" is a blocking concern that e.g. somehow 
> prohibits private development. It doesn't.
>  
>
>> You also state that brigading would be severely reduced and eliminated. 
>> However it seems contrary to having publicly available comment threads? It 
>> would just contain the brigading to the publicly available comment threads. 
>> You could make the point that this containment would disincentivize the 
>> brigading in the first place, but it would only be the case if there is no 
>> expectation that the low-quality comments be taken into account in the 
>> decision making.
>>
>
> Great point. I should have said that brigadier intrusions into developer 
> spaces would be reduced or eliminated, not that all bitcoin-related 
> brigading on the Internet for all time would be eliminated, which is well 
> outside of my powers to enact or promise.
>  
>
>> I agree with your problem statement. I believe there is a dangerous 
>> perception that the Bitcoin Core Github repository somehow controls Bitcoin 
>> and is worthy of political pressure. And this is not only the case of the 
>> filter enjoyers, this misperception is also used for example to justify 
>> legal threats[^0] against developers. It is important to push back against 
>> this confusion,
>>
>
> I have toyed around with the idea of proposing changes to Bitcoin Core's 
> github repository to minimize the perception of prestige. I don't have a 
> great suggestion at the moment so I haven't posted publicly on this. I'm 
> also not sure if lowering perceived prestige is the right thing to do or if 
> that would be beneficial to bitcoin, Bitcoin Core, users of Bitcoin Core, 
> or its developers. For example, what if Bitcoin Core started merging random 
> ads and spam into the README?
>  
>
>> We just need to face the fact that Bitcoin Core is a centralized project. 
>> It has a central website, releases binaries and updates its software based 
>> on rough technical consensus. Bitcoin is decentralized, Bitcoin Core is not.
>>
>
> There are some aspects of Bitcoin Core that are centralized, such as the 
> domain name registration, or the GitHub org, where unambiguously some 
> specific people have control of a project resource. Many other project 
> resources including a great number of volunteers freely allocate their time 
> and resources to help write and review code, propose changes, or otherwise 
> move the project forward with minimal coordination and no central control 
> over those people. Arguably a lot of the value of Bitcoin Core is from 
> those contributors.
>
> To the extent that Bitcoin Core is centralized, then bitcoiners ought to 
> be thoughtful about the ways in which it is centralized (or not) and the 
> design goals should be the result of careful strategy or thinking. 
> Strengthening the decentralized aspects, or increasing decentralized 
> aspects, of the Bitcoin Core project may be prudent, depending on the 
> design goals. Based on other replies in this thread it may be possible to 
> achieve exclusive developer spaces by increasing decentralization for 
> Bitcoin Core with systems like Radicle or other social coding tools. I 
> guess depending on how you squint some might call that increasing the 
> centralization (proliferation of independent but private collaboration 
> spaces) or others might call it decentralization (anyone can fork/mirror 
> write-privately spaces). And this might even help people avoid incorrectly 
> seeing Bitcoin Core's centralized aspects as Bitcoin being centralized.
>  
>
>> Setting expectations that misinformed rants and conspiracy theories will 
>> be considered at all in deciding whether code should be changed is entirely 
>> self-inflicted and does not need a change in the project structure to 
>> correct.
>>
>
>
>
> - Bryan
> https://x.com/kanzure
>

-- 
You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email-masked].
To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/58813483-7351-487e-8f7f-82fb18a4c808n%40googlegroups.com.