January 18
On Thursday, 18 January 2024 at 18:43:42 UTC, Paul Backus wrote:
> When someone submits a contribution, and you make them wait for weeks or months before you even acknowledge their work, the message you are sending is that their work is not important and their time is not valuable.
>
> When someone shares their ideas, and you dismiss them without even attempting to reach a common understanding, the message you are sending is that their ideas are not worth listening to.
>
> When you require others to follow rules and processes, but exempt yourself from them, the message you are sending is that you do not view those people as your equals.
>
> No matter how polite you are, if you treat people like their work is not important, their time is not valuable, their ideas are not worth listening to, and they are not your equals, then you are not treating them with respect.

Hmm, my reactions are:

* You have to live in the real world. Even in paid work, your PR can languish for ages, and sometimes never get merged.
* It is not because people don't respect you - the more mundane reason is they haven't got the bandwidth, and you didn't make it easy.
* I dread looking at complex PRs myself.
* If I want my changes to go through it is up to me to make it as easy to consume as possible. This means I may need to break it up into palatable steps, document thoroughly, do in-person or zoom walk through of the changes; understand concerns, and address them.

This is how things work everywhere.

Secondly - of course you are not equal. The language has designated leads, you are not and cannot be equal to them; they have a final say.
January 18
On Thursday, 18 January 2024 at 20:26:50 UTC, Meta wrote:
> There's plenty of blame to go around, and ultimately it just comes down to a clash of different personalities and outlooks. People have wildly different motivations, and different standards for what constitutes disrespect, and ways of dealing with it. Not to mention varying levels of maturity and social skills.
>
> Sometimes shit just happens and there's not much you can do to avoid or fix it.

Yes, that's certainly true.

My intent is not to focus on Adam Ruppe's case specifically, but on the broader pattern that also includes former contributors like Sebastian Wilzbach, Jonathan Marler, ag0aep6g, Suleyman Sahmi (SSoulaimane), etc. When one relationship fails, that's unfortunate. When a long string of relationships fail in the same way, that's a sign of a deeper problem.

Even if we grant that there was nothing more to be done in Adam's case, I think D's approach to contributor relationships is leaving a lot of value on the table.
January 18
On 1/18/2024 3:14 AM, DrDread wrote:
> and this is also a problem. you leave bad features in the language that turned out to not work proberly, instead of just deprecating them.
> people don't mind breaking code as much as you think, as long as it doesn't silently break.
We recently has a long, acrimonious thread with people complaining that D would break their existing code, and not silently.
January 18
On Thursday, 18 January 2024 at 22:36:39 UTC, Walter Bright wrote:
> On 1/18/2024 3:14 AM, DrDread wrote:
>> and this is also a problem. you leave bad features in the language that turned out to not work proberly, instead of just deprecating them.
>> people don't mind breaking code as much as you think, as long as it doesn't silently break.
> We recently has a long, acrimonious thread with people complaining that D would break their existing code, and not silently.

My understanding is that you now have a plan in place to change the language without breaking old code. Hopefully it works, because it will be one of the most important changes in the time I've used D.
January 18
On Thu, Jan 18, 2024 at 08:51:48PM +0000, Paul Backus via Digitalmars-d wrote:
> On Thursday, 18 January 2024 at 20:26:50 UTC, Meta wrote:
[...]
> My intent is not to focus on Adam Ruppe's case specifically, but on the broader pattern that also includes former contributors like Sebastian Wilzbach, Jonathan Marler, ag0aep6g, Suleyman Sahmi (SSoulaimane), etc. When one relationship fails, that's unfortunate. When a long string of relationships fail in the same way, that's a sign of a deeper problem.

Exactly.


> Even if we grant that there was nothing more to be done in Adam's case, I think D's approach to contributor relationships is leaving a lot of value on the table.

Yes, this area definitely needs improving.  We should be keeping active contributors, not losing them.


T

-- 
Let's not fight disease by killing the patient. -- Sean 'Shaleh' Perry
January 19
On Thursday, 18 January 2024 at 06:31:33 UTC, Richard (Rikki) Andrew Cattermole wrote:
> On 18/01/2024 3:51 PM, Mike Parker wrote:
>> And while we're at it, can we please get rid of this "us vs. them" mentality? We are all here for the same overarching reason: we're enthusiastic about the D programming language. We all want it to succeed, and we all want it to help us achieve our ideas and our goals. It doesn't matter if you're on the DLF team, an employee at one of the D shops, self-employed, or doing this just for fun. So let's please keep that in mind when we're interacting with each other.
>
> Part of the problem that allows this to exist is simply because Walter & Atila are not where the people are.
>
> Yes Walter is active on the N.G., Atila isn't.
>
> However neither are on Discord, the easiest of live chat methods that we have.
Discord is a huge time sink and unproductive. I doubt the DLF folks can deal with it and get anything done. I sometimes wonder how you guys manage to get anything else done lol.

On a serious note, I think being active in this forum alone is enough. But no pressure.



January 19

On Thursday, 18 January 2024 at 20:51:48 UTC, Paul Backus wrote:

>

My intent is not to focus on Adam Ruppe's case specifically, but on the broader pattern that also includes former contributors like Sebastian Wilzbach, Jonathan Marler, ag0aep6g, Suleyman Sahmi (SSoulaimane), etc. When one relationship fails, that's unfortunate. When a long string of relationships fail in the same way, that's a sign of a deeper problem.

That's right, what the community needs is a constant influx of talent, not a constant outflow. The departure of these people is a significant loss for D!

This is a major failure in community management!
If there is continuous loss, then all D users will be victims.
Because D's users are victims, having a better branch is not a bad thing, and even more branches can be established to reduce harm.

January 19

On Thursday, 18 January 2024 at 20:51:48 UTC, Paul Backus wrote:

>

Yes, that's certainly true.

My intent is not to focus on Adam Ruppe's case specifically, but on the broader pattern that also includes former contributors like Sebastian Wilzbach, Jonathan Marler, ag0aep6g, Suleyman Sahmi (SSoulaimane), etc. When one relationship fails, that's unfortunate. When a long string of relationships fail in the same way, that's a sign of a deeper problem.

Even if we grant that there was nothing more to be done in Adam's case, I think D's approach to contributor relationships is leaving a lot of value on the table.

I get the impression that these kinds of problems are more of a rule than an exception in succesful open-source projects though (by succesful I mean attracting dozens of contributors or more). Looking at the lobse.rs discussion Guillaume posted, Hacker news discussion about OpenD and considering what you hear about say Linus Torvalds or Theo de Raadt, strong enthusiasm to contribute seems to go hand in hand with a strong personality. I think keeping those kinds of contributors is simply hard. It might not be that hard for an average Joe were he leading, but I suspect the same qualities that make language creators succesful in the first place tend to make good leadership in these cases hard for them.

I don't think D leadership is doing particulary badly - otherwise they would be developing the compiler alone by now. But sure it's still a critical thing that might well determine the future between stagnation and an explosion in popularity. Therefore you're right we ought to pay attention to it, however understandable the problems are.

January 19

On Friday, 19 January 2024 at 09:50:06 UTC, Dukc wrote:

>

On Thursday, 18 January 2024 at 20:51:48 UTC, Paul Backus wrote:

>

Yes, that's certainly true.

My intent is not to focus on Adam Ruppe's case specifically, but on the broader pattern that also includes former contributors like Sebastian Wilzbach, Jonathan Marler, ag0aep6g, Suleyman Sahmi (SSoulaimane), etc. When one relationship fails, that's unfortunate. When a long string of relationships fail in the same way, that's a sign of a deeper problem.

Even if we grant that there was nothing more to be done in Adam's case, I think D's approach to contributor relationships is leaving a lot of value on the table.

I get the impression that these kinds of problems are more of a rule than an exception in succesful open-source projects though (by succesful I mean attracting dozens of contributors or more). Looking at the lobse.rs discussion Guillaume posted, Hacker news discussion about OpenD and considering what you hear about say Linus Torvalds or Theo de Raadt, strong enthusiasm to contribute seems to go hand in hand with a strong personality. I think keeping those kinds of contributors is simply hard. It might not be that hard for an average Joe were he leading, but I suspect the same qualities that make language creators succesful in the first place tend to make good leadership in these cases hard for them.

I don't think D leadership is doing particulary badly - otherwise they would be developing the compiler alone by now. But sure it's still a critical thing that might well determine the future between stagnation and an explosion in popularity. Therefore you're right we ought to pay attention to it, however understandable the problems are.

Again I agree with you.

Another obvious factor that makes open-source projects difficult to manage is that people are contributing voluntarily. Their livelihood doesn't depend on toeing the line, as it frequently does in paid employment. And they have access to the source code. So when personal styles clash, as I think was the case here, it's much easier for things like we've just seen with this project to happen.

I have personal experience with de Raadt (not good) and have used OpenBSD on and off for years. OpenBSD is absolutely a cult of personality, exactly as you said. But it takes a particular kind of personality to be willing to drink the de Raadt Kool-Aid. And recall that OpenBSD is a fork of NetBSD, the result of some particularly nasty circumstances.

So I think the right way forward is to learn what can be learned from this kerfuffle, but don't over-react to it. You certainly want to try to retain someone like Adam, talented and volatile, but sometimes it's just not possible. C'est la vie.

January 19
On 1/18/2024 10:43 AM, Paul Backus wrote:
> When someone submits a contribution, and you make them wait for weeks or months before you even acknowledge their work, the message you are sending is that their work is not important and their time is not valuable.

Since these three examples have come up repeatedly, I will add some context.

https://github.com/dlang/dmd/pull/15715

That was submitted Oct 20. Discussion about it had gone on in the n.g. for years, which I participated in heavily.

> When someone shares their ideas, and you dismiss them without even attempting to reach a common understanding, the message you are sending is that their ideas are not worth listening to.

https://github.com/dlang/dmd/pull/12828

Heated discussion has gone on about that issue for years, including at DConf.
Also, https://github.com/dlang/dmd/pull/12828#issuecomment-875455810


> When you require others to follow rules and processes, but exempt yourself from them, the message you are sending is that you do not view those people as your equals.

https://github.com/dlang/dmd/pull/12507

ImportC is not a language change, and so did not require a DIP. It was not pulled by myself, either. You could think of it as simply integration of existing tools we were already using. The 3 tools that convert C code to D code,  htod, DStep, and dpp, showed the need for it. It had no impact on anyone who wasn't interested in it. We also do not require DIPs for bug fixes, internal improvements to the compiler, better code generation, adding things like generating C++ headers from D code, etc.

And sure, ImportC met with a lot of skepticism (Adam called it "completely useless" https://github.com/dlang/dmd/pull/12507#issuecomment-835915214). Over time, it has found its legs and audience. A good proxy for how useful a feature is is the quantity of bugzilla issues submitted, and ImportC has had a lot of them! (317 submitted, 274 resolved)


> No matter how polite you are, if you treat people like their work is not important, their time is not valuable, their ideas are not worth listening to, and they are not your equals, then you are not treating them with respect.

I agree completely. I also agree that there are instances where I do not live up to those ideals, and need to do better. A better example would be when I added user defined attributes over 10 years ago (the result of which the DIP process was initiated).