Argument techniques for bit-twiddling

You keep saying that this or that is or isn’t Julian. You may want to consider a somewhat different tack when arguing with Jeff, who, by the way, never uses this as an argument. It’s a flimsy argument to begin with and not one you really have the bonafides to make, especially given who you’re arguing with.

2 Likes

What??? I wasn’t arguing with anybody, let alone Jeff. I was expressing my own opinion about a comment that @ggggggggg made. Please stop making inflammatory comments, Stefan.

Jeff actually seemed supportive of using ! generically, and showed a nice way of doing it locally, just for my own code.

As a steward, I would think you’d be careful not to violate the code of conduct for NumFocus projects, such as Julia.

Personal attacks
Trolling or insulting/derogatory comments

These constant personal attacks and derogatory statements hurt the entire community.
Note the following:

By adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently applying these principles to every aspect of managing this project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the project team.

I feel you (again!) owe me a public apology.

I’ve split this thread off from the main discussion and unlisted it; argument techniques and responses to them are entirely off topic from the main thread.

@StefanKarpinski — please discuss how to make arguments to members privately.

@ScottPJones — if you feel offense from how someone states things, please let them (and/or moderators or other stewards) about it directly.

Personally, I see the word “Julian” as dictated by the community as a whole. No one person has bonafides to unilaterally declare something as such.

3 Likes

I’ve done so, ad nauseum, and nothing has been done about it, as a number of other members of the community have noted.

What other option do I have than respond publicly to public attacks, when the stewards have not been able to prevent it from occuring, after my repeated requests that something be done about it?

Yeah! :+1:

I was also clear that I was stating my own opinion that using something generically was Julian, not saying that something was or wasn’t “Julian”.

It is not an insult to suggest that a person may be less qualified that Jeff to determine what is or isn’t Julian. I would consider myself less qualified to make such claims, for example.

Fundamentally, saying that something is or isn’t Julian when discussing a matter of language design simply is not a good argument because it’s a circular one. There was no such thing as “Julian” or “not Julian” until we invented the language. We are collectively in the process of deciding what “Julian” means, so making the argument that we should do something because it’s Julian isn’t helpful because it’s tautological. When you make this claim in language design issues, you are making what sounds like a statement of fact which is really just an opinion with a false veneer of objectivity. Statements of opinion are fine and worth considering, but they should be presented as such, not as if they are objective judgements.

There are valid ways to use the adjective “Julian”, but they mostly have to do with discussions of how to use the language, not in debates about design of the language itself.

You should have read what I actually wrote then, because that is exactly what I did.
You tried to make it sound like I’d done otherwise, and that is what I feel you should apologize for.

You have constantly misrepresented all sorts of things, such as my motivations, my ideas, and what I’ve been responsible for.

Scott, I can completely understand your reading of Stefan’s first post here and can see how it reads as belittling. I can also see that post in a different light. I can see him pointing you away from arguments that aren’t effective or persuasive to him. Extrapolate from that — it means that he wants you to make effective and persuasive arguments about the language in the future.

In general, I try to read each and every message with a strong assumption of good faith in the person behind the keyboard. The misrepresentations can go both ways.

Demands for apologies are rarely effective. Even if a person capitulates and apologizes, will you feel that it’s sincere after you demanded it out of their mouth? Much more effective is stating precisely how a post makes you feel personally. Simply saying that a statement is offensive or bad for the community doesn’t get the person to understand how it felt to you — they may be still seeing it from their vantage point and don’t even understand how it could be taken otherwise.

Now, I’m going to go enjoy my three-day weekend and keep my mind focused on why we have the day off on Monday.

:+1: :100:

That’s not the part that really bothers me, nor the part that seemed rather belittling.
What I feel he should have apologized for is the false statement that I had something “was not Julian” or “was Julian”, I clearly stated that it was my opinion, not that I was an arbiter on what is or is not Julian.
The problem is, people may read his comments, and come away with a totally false view of what happened.

(This happened to me a couple of years ago with Kristoffer, when he started complaining that I’d said something which I had not [it was actually mauro!], about creating sparse arrays, and then Stefan also piled on, and made several derogatory statements)

1 Like

I think the best strategy for these discussions is to focus on the technical issues, be as pleasant as possible, give the most generous possible interpretation of others’ statements, and, when one starts to feel indignant, take a deep breath, let it pass, and refocus on the technical issues. Even if someones calls you out personally in a way you think is unfair, just let it pass. De-escalate rather than escalate at all times.

Julia is a fantastic effort, and the Julia community is one of the most positive, cooperative, and supportive communities I’ve ever been involved in. I feel like we all need to do our part to keep it that way. If it requires a little sacrifice of one’s ego, it’s totally worth it.

18 Likes

At what times would you consider it’s time to escalate then? Because surely there must be a limit.

Just a little seems fine, but when would you consider enough is enough then? After n times?

What if this someone is a steward and he does this constantly and there is evidence of that?

I would expect that if any person continues with that behavior towards anyone, even after being warned by the community and stewards, that they should be banned (temporarily imposed by Julia admins in response to the urgent situation, but shall be followed by a formal investigation by the other stewards if the ban is to continue) from contributing to Julia public forums (e.g. mailing lists and GitHub pages), until the offender acknowledges his/her past violations and provides a written plan to avoid such violations in the future.


Makes sense, what doesn’t makes sense is that, that was your answer for:

That seems very Julian to me.

(:warning: personal opinion ahead!)

So no, it doesn’t make any sense to me, at all.


Long-term bans shall only be undertaken in response to the recommendations of a formal investigation by the Julia stewards as described above. (A temporary ban may be imposed by Julia admins in response to an urgent situation, but shall be followed by a formal investigation if the ban is to continue.)

How would one of this private and confidential (stewards only) investigations would work against a steward of an open source and open community project? :confused:

The committee shall provide a private written report detailing its findings and recommendations to the stewards, complainant, and respondent. If a violation has been found, recommendations may include bans and other alterations of online privileges, or in less severe cases may request apologies and other informal resolutions.

I wonder if @ScottPJones can get access to the written report against him, if it really exists (because it’s private just to protect him during the process, am I right?)

I don’t like this drama at all, but it pains me, I agree to let go (this time) for the good of the community, but at some point this has to stop.

2 Likes

Welcome back!

After ∞ times (never). It is like a shouting match over a traffic dispute. Chances that it would accomplish anything are very low, while it is wasting time and sapping energy. You just extract yourself from the situation and move on.

This is just general advice though, I am not implying that there is anything I would find even mildly offensive about the particular comment.

There was never a written report against me, AFAIK.
I was never given the opportunity to defend myself, this procedure was created at the request of NumFocus,
but was not used to address the ban against me by Stefan.

There is a written report against Stefan, stemming from my complaint to NumFocus, but I cannot divulge that, because of the request for confidentiality by the stewards.

However, the result of that complaint is public.
He was at least required to make a public apology for this comment:

Could you possibly write a single comment without being a dick?

I’ve had to put up with this sort of constant public harassment and false statements about things I’ve said.

When you’re spouting a stream of nonsense here,

and

This is not the Scott P Jones show.

It’s a non-stop barrage.

I really do mean de-escalate at all times. If you feel like someone’s starting to get personal in a discussion, just ignore it and respond on the merit of the technical points. If there’s no technical point, just a diatribe against you, ignore it, or if you must, respond generously and dispassionately towards ending the personal stuff and getting back on a productive track. “I understand what you’ve said, but I think it would be better if we just focused resolving the issue of whether foo equals bar.”

If this has happened N times and it starts again, respond like this the (N+1)-th time. People will see that you are the reasonable one and the other guy’s a hot-head. If N gets so large you just can’t take it any more, walk away. Fork the project if you must.

I also feel those of us who are not on the core Julia team have to respect that Julia Computing makes the final call on design decisions and what gets merged. They might make the wrong call at times, but it’s their call and the rest of us have to accept that. If it gets so bad you can’t stand it any more, fork the project.

And about past history, old beefs, who said what, just let it go. People get heated and say things they regret. I know I have. It’s better to forgive, forget, and move on to more productive matters.

15 Likes

What technical points are you talking about?

foo or bar?

I could not agree more!

Sometimes productive matter is to start talking (like you) about forgivness instead of more technical foo and bar - right?

Means sometimes (maybe not now) it could be good to talk about some mistakes which could harm community…

1 Like