pull down to refresh
542 sats \ 5 replies \ @nout 14h \ on: [Code of Conduct in BOSS] Is Rusty Russell the puppet of Jack Dorsey ? bitcoin
I have not read your past back-and-forths and interaction with the folks, but it sounds like this is already escalated situation and there is a lot to unpack from the past. Is that correct?
In that case it's hard to point at this very last situation/case (this specific request on github) and you can't really expect us to try assessing the situation just based on the last post.
So just couple of high level observations: The title of your post (both here and github) are unnecessarily triggering. When people read it, they will immediately create a picture about you and that reduces your chances to actually make them listen carefully.
Your posts are very long, bringing many points, many different pokes and punches. In escalated situation - the less text is often much better. With long text the reader immediately tries fighting individual points and nuance and that's the last thing you need. Just focus on the point where you need alignment, find the common ground with the other side and focus on that. The rest can be discussed later, separately, when the heads cooled down. That way you would have much more success.
I'm not saying you are wrong or correct, I'm saying that this communication style and behavior usually has this type of reaction and we see it again and again. If you communicate with this style I think unfortunately the outcome is quite predictable. Last time I observed Jeremy Rubin was missing couple of communication skills like this and he ended up very frustrated.
I can offer one more perspective. Communication is a skill like any other skill. When someone asks you to learn Rust, then you know exactly what to do, right? Like read some docs and quick tutorials, you try a demo project, you watch Youtube video about it, maybe you read a book about it. With communication it's exactly the same and the approach is also the same, but somehow people don't think that way. Watch youtube videos, read a book, find some articles and tutorials, try getting better on some "demo" situations...
Thanks for your thoughtful and cool heads message.
This is true that this post a bit of a Reddit flamewar and it doesn't substantially
trying to level up the conversation on the principles and point of real divergence.
Goiing further, I'll answer and try to adress all your points in 3 separate sections:
-
- remind the context of the dispute
-
- point out what is the source of the misalignement
-
- express my general view about open-source communication
The Context of the Dispute
Back in 2018, I started to contribute on Lightning and rust-lightning (now LDK).
At the time, rust-lightning was a small projet, and it was only mostly TheBlueMatt
and myself doing the work. My interest to contribute to the projet at the time was
to have a community-driven open-source Lightning implementation, at the image of
Bitcoin Core rather than an implementation leaded and supported by a single entreprise like it was the case at the time (lnd -> Lightning Labs, c-lightning -> Blockstream, eclair -> ACINQ).
I do think it was a noble goal, at the very least an interesting opportunity to
learn about Lightning and develop my skills about off-chain stuff. Somehow this
works very well, as I went to the point of being able to contribute significantly
to the protocol design and fulfill some technical blind spots.
In mid-2019, TheBlueMatt joined Square Crypto and for a while I was the only one who
kept working on rust-lightning and go to represent the project at conferences and other events. Beginning of 2020, Square Crypto announced they would focus on rust-lightning as their main project, as the part of the wider Square Up (now Block Inc) bitcoin ecosystem.
At the time, I took positively the announcement, especially due to the personality of
Steve Lee, that I've already met before he joined Square Crypto, and who appears honest in his intent to make rust-lightning a community-driven multi-stakeholder like Bitcoin Core used to be at the time.
Fast-forward to mid-2021, and few thousands more of rust-lightning hacking and hours of reviews, the Square Crypto team started to be under commercial pressure to finally deliver something valuable back to Square Up, most notably make rust-lightning sufficiently production-ready for integration in Cash App, and by the same, in my view justify their engineering salary since mid-2019.
I let that float during end of 2021, especially as mid-2021 I was busy organizing the
first CoreDev on the bitcoin core side in the middle of a once-in-a-hundred pandemic,
with the clear intent to do the best to ensure the wider bitcoin open source culture to
stay convivial. Interactions online are one thing, seeing people face to face is another
thing and somehow if it avoids useless civil war in bitcoin, that's a good thing.
Moving to mid-2022, Square Crypto, now Spiral was all flame in in rushing forward the
project to deliver more value back to its solo financial backer Block Inc. In October
2022, there was a small altercade between Steve Lee, Matt Corallo and myself for a
ethical question related to my open-source work.
Steve Lee confronted me in person, one can be sure I patiently and calmly listened to
his viewpoint, but at the end I did see things differently. At the time I had already
a more prolific track records in Lightning security than Matt Corallo and I had the luxury to be independent and not hand-tight in binding to the economic interest of Block Inc.
Soon after, in December 2022, Matt Corallo made did a "coup" in rust-lightning, or at
least I'm still seing that as a "coup" in rust-lightning by, without any a priori public
announcement, establishing a code of conduct and auto-appointing people in this CoC committee who where on the Block Inc payroll.
I vehemently point out that this code of conduct was all about trying to control contributors, rather than building peaceful conflict resolution in the project, and denounced it didn’t respect fairness and due process norms, that one can find in any other social group.
Following this "coup" with a CoC, Matt unilaterally and non-transparently revoked my
merge bit on rust-lightning, my invitation to the Lightning Summit in 2023 was rescinded after I raised by email to Steve Lee and Jack Dorsey that the situation was ethically abnormal for open-source, and then I've seen my online handle being banned one by one of the communication channels of rust-lightning by abusive usage of the administrative permissions.
Back in 2024, when the subject started to land on the Lightning BOLTs, after I raised
the question why I was cancelled once more from the Lightning Summit of this year, Matt Corallo did engage in the same tactic of establishing a code of conduct and then banning my github account from the Lightning BOLT by seeding Rusty Russell in his version of the fact. Rusty is an open-source veteran, but he used to be colleague with Matt Corallo at Blockstream, a company where Matt was a co-founder and Rusty not. Blockstream, the employer of Rusty Russel, has also done public business partnership with Block Inc in the past.
In summary, that explains the situation of today. From my viewpoint.
reply
The Source of Misalignment
This is a far simpler topic to explain. In my view the source or question of misalignment can be explained in the following fashion: "how do we solve dispute among human beings in the middle of bitcoin open-source ?". Open source is as much about code and technical problems than it is about humans.
Of course, at that stage, one could point out, that I'm free to go and fork on Lightning,
but this doesn't solve the problem as when we work on a technical standard the idea is to have a group of human taking technical decisions to have inter-compatibility among different softwares versions. Inter-compatibility sounds a simple technical story, in practice it can be back to a social problem when there is a bug in software bit versioning or basic negotiating mechanism (-- and yes I've always found that style of bugs in Lightning and more than once).
Further, it doesn't solve the wider problem when one has to handle severe security vulnerabilities affecting not only Lightning, but also the wider bitcoin ecosystem of off-chain protocols (there are intersections in the security models). When I'm finding a serious vulnerability on Lighthning, including c-lightning, I'm the one who has to trust Rusty Russell to not abuse with this sensitive information during the period of embargo. After all, it has not always been all peaceful between Blockstream and Lightning Labs in the past (the flamewar on AMP in 2022).
So how do we solve dispute in the middle of open-source ? I don't pretend to have all the answers, but doing "coup" with code of conduct, ignoring basic fairness and due process, not acknowledging one's own bias in matter of one should act impartialy, abusing administrative permission on communication channel, self-appointing friends or subordinate in a coc committee, using dilatory tactic like refusing to engage in good faith on the subject on common channel, I'm really doubtful this is the way.
Be certain, I've never questioned that the developers are somehow the most legitimate to administer their own conflicts. What I've always questioned is the lack of tangible due process and formal impartiality of the ones administering the conflict resolution. Rushing by “surprise" to the administrative permission one is vetted on a communication channel to ban first one’s "opponent" is not a viable solution.
Those tactics work, when the ones in charge of the administrative permission are also the most technically skilled and talented, but I don't think that Matt Corallo or Rusty Russell can make the straight claim there are more technically talented than I am or have more know-how about Lightning than I have.
So I'll re-ask the question again, "how do we solve dispute among human beings in the middle of bitcoin open-source ?".
reply
My General View on Open-Source Communications
This is true that this post questioning Rusty Russsell open-source ethics and real independence is more akin to a Reddit flamewar, than a real post engaging the dialogue on sound abstract principles and factual arguments. This is also true that the communication style could be more diplomatic, one's communication style can be always more diplomatic and slow-paced.
On the general communication as a discipline to study I'm 100% agree with you, and for information, that's a field I have of course study in the past. Though one learning is
to have real communication happening there is a pre-requisite to have a neutral public
forum, where each side in the disputatio can express ideas, arguments, viewpoints and experiences.
That's the problem with open-source, there is no such neutral public forum, and when
you're attempting to use the forum or communication channel, which is the most similar to that, i.e Github, very often, the ones who have the administrative permission on it will leverage said permission to cut short the discussion and enforce their viewpoint.
On the wider point, and comparing my style of communication with Jeremy's one. Very deliberately I have always kept my communication style dried and sober. I'm not like Matt Corallo and Rusty Russell, who are constantly spending their time on podcast or Twitter doing a dance of trust to remind their "100% certified open-source devs” and as such that there are necessarily "pure".
On my side, I'm not on Twitter, I'm doing very rarely podcasts and I've never tried
to sell a "purity" narrative, but I hope, not always, treaded any other human beings
with high standard of ethics and dignity and never used communication technology or
the separation due to the screen as a prextet to act differently that I would do in
the meatspace. Never say something to someone online, if you're not ready to hold the same discourse eyes in the eyes in person. Simple mantra.
So as an open-source developer, I do think a sobriety in expression driven by a
constant search for objective truth should be one's personal ethic of communication.
(— apologies for the formatting of the text messages).
reply
Just focus on the point where you need alignment
100%
reply
"how do we solve dispute among human beings in the middle of bitcoin open-source ?” that the point that need alignment.
reply