Ban Q&A
Brief replies to questions from a variety of sources, most recent first.
2024-11-07 Thu 10:00p CST
Q: You were banned on Aug 7. You said the SC represented that you had agreed to do all that was required for the ban to be lifted (on its expiration day) the next day already, Aug 8. Yet you say you weren’t asked to agree that the list of “CoC violations” even had any merit. What’s missing? What did you agree to?
A: Another one I can’t really explain, beyond just relating what happened. Part of the initial email I got from the SC, on Aug 7:
We would also like you to explicitly agree to follow the CoC WG going forward.
And part of my reply, also on Aug 7:
I’m unclear on what that means. … WRT plausible (to me) readings of “follow the CoC WG”, yes, I accept that their reading of the CoC is dispositive, and explicitly agree to follow it. I cannot, however, honestly promise that I’ll always believe their readings are reasonable. Requiring that I do that too is an implausible (to me) reading of “follow the CoC WG”. So if that’s what was intended, it needs more clarity. As is, in short I will follow the rules as best I understand them, regardless of whether I think they’re reasonable in specific cases, but cannot promise to suspend my own judgment about whether they are reasonable.
On Aug 8, they replied (in part):
That was an unfortunate typo that slipped through all of our proofreading.. I meant to say “follow the Code of Conduct”, as in the CoC WG’s original recommendation: “The WG asks that Tim agree to follow the Code of Conduct”. We don’t expect everyone to promise to agree with the CoC WG, just accept the Code of Conduct. It’s clear that you do, so thank you.
So that was that! It’s important to note that the SC never replied (as a group) to anything I sent them about the ban again1 until Nov 4, when I asked if the ban was over. So later on Aug 8, I replied (in part, and not realizing I’d never hear back):
Sorry that I’ll need to elaborate, to prevent future misunderstanding:
That’s why I can’t post at all - in my understanding, I have almost never violated the CoC.
And so on. I had never agreed I violated the CoC to begin with, so what was the point of saying I would follow the CoC going forward? They’re asking me to agree that I wouldn’t stop following the CoC? That made little sense to me, so I pressed for clarity. But got none.
Anyway, so far I believe I stuck to my word: I don’t believe I’ve violated the CoC since coming back - but didn’t believe I materially violated the CoC before the ban either.
Any further clarity about this can’t come from me - you know as much as I do about this now.
2024-11-04 Mon 08:45p CST
Q: You seem to give little credence to the list of “CoC violations”. Yet the ban was lifted. Did you agree in private you were guilty of them?
A: No, I didn’t. I can’t yet explain this, beyond just relating what happened. Shortly before the ban announcement was posted, I got email from the SC including the eventual post’s text, along with some commentary. In part, about the list of CoC violations:
The Steering Council may not agree with the exact interpretation of every single item in that list …
I wasn’t asked to agree I was guilty, or even to acknowledge that any of the claims had merit. They were simply never mentioned again. I said plenty about it later, but, as already related, they never replied to me again after Aug 8 (the day after the ban was announced).
So I have no reason to believe this was about the claimed “violations” at all. But I don’t believe I ever got a straight answer to what it was about. No more than the public got. I have speculations about that, but don’t know enough yet to air them. For now I can only say I’ve “heard things”. Maybe more later, maybe not.
IMO, the PSF would have been far better off skipping that list and relying solely on the 100% opaque “not a role model, dark patterns, secrets, trust us” spin. The SC didn’t need a “CoC violation” to ban me - they can make up seemingly any criteria they like for axing a core dev. As is, whatever point they were hoping to make got lost to a long list of shrill more-specific “violations” that are widely disbelieved. Not just on Discourse, but also on various blogs and on any number of “tech gossip” sites’ comment sections. “WTF? That’s not what he said! Note to self: never join that project.”
The list backfired. Unless, of course, the actual point was just to make a show of raw power, to demonstrate that the PSF can squash any member, by any means necessary. In that case it succeeded.
The actual truth is probably messier than all the above squared .
Note: this was an old question by now, but I couldn’t answer it before the ban was lifted. Before then, I couldn’t be sure that more conditions wouldn’t be imposed. But no more ever were.
2024-11-04 Mon 08:00p CST
Q: Your ban was announced 7 Aug. Add 3 months to get 7 Nov. But you’re posting now. What’s up?
A: Nobody seems to know! Discourse always said my account would be unlocked again on 1 Nov at 7am CDT. Since I’m both retired and sane, I was sound asleep then. But I was able to log in on the afternoon of the 1st, so as far as I was concerned my ban was over then.
I agree 7 Nov was a more plausible guess, and so does the SC, but they’re not sure either. I suspect someone made a typo when filling out a Discourse admin web form on 7 Aug, perhaps entering 7 into the “hour” field instead of the “day” field by mistake. But no way to know now. As a matter of “practicality beats purity”, the SC and I agreed to accept 1 Nov as the official end of the ban.
Q: Why did you suggest that evidence be discussed in PSF rather than Committers?
A: So everyone can post. Only core devs can post in Committers, and there’s already a relevant topic in the unrestricted PSF category. One of my claimed CoC violations:
Discussing bans or removals of community members, which may be seen as publishing private information without permission.
Of course that’s baseless. I have never disclosed the name of anyone anonymously banned, to anyone. I’m acutely aware of their desire to remain anonymous to whatever extent possible, and never betray their confidence in me.
I can only imagine they’re misreading this post:
The worst outcome I’ve seen was from that, the least transparent ban. The best outcome from the most transparent one, although in that case SK nailed the door wide open by effectively saying FU on the way out. A whole lot was revealed about why he was booted, and that did not inspire much fear.
Did my “SK” reveal their name without permission? Of course not. Their name is Stefan Krah, and there’s a whole lot of open discussion about kicking him out available on Discourse. I used “SK” instead so as not to belabor the point. Brett certainly knew who I meant, and spelling out the full name was unnecessary in context. Leave the poor guy in peace.
That’s why I want everyone to be able to post: if someone out there feels I violated the CoC against them, I want them to be able to tell the world even if they aren’t a core dev. For SK, the case for banning became much clearer (at least to me) when people in the open discussion volunteered new information.
2024-11-03 Sun 05:00p CST
Q: What did you suggest to the SC to address the loss of trust?
A: Same as always: sunlight is the best disinfectant.
- Stop the interminable stonewalling.
- Engage with the dissenters respectfully, addressing what they’re saying directly, not deflecting by addressing a straw man instead.
- Give straight answers.
- Scrub that ridiculous list of “CoC violations”. It backfired, and will continue to do new damage so long as it stays up.
Of course they didn’t reply. And I don’t expect anything to change. Regardless of organization, group social dynamics are such that the longer a group stonewalls, the more determined they become to stay the course. I could write an essay about that, but will spare you .
2024-11-01 Fri 10:00p CDT
Q: What do you think of Glyph’s blog?
A: Glyph is a smart fellow, and a good writer, but I don’t see any relevance to my case in what Glyph thinks Chris should or shouldn’t write about.
As I related before, I valued Chris’s blog mostly for his love letters to Python’s early days. They were charming and brought back many good memories. And Chris did analyze evidence, as best he could, given the entirely evidence-free list of raw assertions in the ban announcement. In several cases, it’s completely unclear which posts they might be implicitly referring to, and no clarifications of any kind were ever made. As far as any sane notion of “justice” goes, it was a total farce.
So I’m glad Chris took it on. I’m so used to absorbing abuse from early Usenet and python-dev that I may have never bothered. It was when I reviewed Chris’s post that it first occurred to me that “hey - this really is grossly unjust!” with emotional force. It woke me up. I owe Chris for that.
Glyph should recognize that remote psychoanalysis of Chris’s putative character flaws has nothing to do with the evidence in this case either. So, no, I don’t think he added anything of primary value here - just more distraction. If you think I can’t defend myself, start with this. There’s plenty more where that came from, but I wasted enough time on such garbage already.
2024-10-29 Tue 12:15a CDT
Q: You’re obviously reading posts on Discourse. But it says your account is suspended. Did you create another account? Are you posting under another name?
A: No. I have only ever had one account on Discourse, and it is suspended. But you don’t need to log in to read posts there. Try it! Without logging in, you can see just about everything, but can’t post, or click heart icons, or even see flag icons. It’s a “read only” view of the site, although it does seem to save cookies to keep track of some things.
2024-10-28 Mon 02:15a CDT
Q: Would it help if I resigned as a core dev? Relinquish Fellow status?
A: Do what’s best for you, but I hope you don’t. There’s no reason to expect “they” would care, and your best hope for change is to keep your ability to vote on possible changes to governance PEPs, and maybe even bylaw changes.
2024-10-20 Sun 09:30p CDT
Q: What’s up with the “bullying” claims? Isn’t that extreme?
A: Dictionary definition. People with power abusing it to harm someone with none. Stalin-era show trials were more transparent and fair-minded. So if you think those were bullying (they were - hugely so), well, this was worse in some respects2. For example, Stalin’s “courts” at least pretended to present evidence, not just spray raw assertions. And they let the accused speak. I wasn’t even informed there was a secret trial before it was over, and I was already banished and silenced. It didn’t even meet the level of basic human decency.
Not just to me. I’ve long objected to the seemingly calculated cruelty of the PSF banning processes. I recognize that few others seem to care. Well, shame on those who don’t. Going along with a self-righteous mob is rarely something to be proud of, and history generally doesn’t look kindly on a Nuremberg defense.
2024-10-20 Sun 04:15 CDT
Q: For someone who claims not to be Guido’s oracle anymore, why are you acting as one?
A: Heh. Fair point . I thought my last Q&A said so little he wouldn’t mind, but not long after publishing I asked him if he was comfortable with the words I (didn’t) put into his mouth. He replied “Yeah, that’s about right …”), so we’re cool.
I felt I had to say something, because that’s the single most frequent question I get, and I try to do the best I can to address all sincere questions. Stonewalling isn’t my style - people are sick to death of that.
2024-10-18 Fri 07:15p CDT
Q: What does Guido think about all this?
A: While I spent years being his oracle, that’s no longer my role. If he wants to be clear he’ll need to speak for himself. Of course I know more, but in good conscience can only confirm the obvious: he hasn’t said one public word in support of, or opposing, anyone’s position in this.
Which actually speaks volumes, but it’s easy to misread what silence is saying. The most obvious reading is that he has no opinion. Since that’s not credible here, the second-most obvious is that he wants no public part of it. That’s closer.
Please don’t bug him about it. Some people find human drama very stressful, and I don’t think it’s a secret where Guido lies on that axis. The drama in the “walrus operator” flame wars 6 years ago caused him to abdicate his BDFL role. I got my (much smaller) share of abuse in that too, but shrugged it off as “another day on a mailing list”, day by day.
At this point, I don’t think it matters anymore what anyone says anyway. Confirmation bias alone ensures all sides will remain frozen.
2024-10-18 Fri 12:45a CDT
Q: Se Ethan wasn’t your friend - what about Chris McDonough?
A: Chris surprised me too! Chris was an old “work friend”, back from when Zope Corp hired PythonLabs (2000). Due to odd working conditions (cities about 60 miles apart, usually working remotely, and carpooling when Guido, Fred Drake, and I did go to headquarters), I almost never saw my Zope coworkers socially outside of work. Relations were friendly among all, and Chris and I hit it off well, but no “real friendships” could grow on such arid land. When I left Zope Corp, we all fell mostly out of touch at once.
So it took me by surprise when Chris emailed to say he had written a blog post, and asked me to review it. I was astonished at the clarity of thought and expression - I had no idea how talented an observer, thinker, and writer Chris was. I had some disagreements, but too minor to push. The influence of my review was limited to minor changes in the sections about Python’s early days. For the rest, Chris speaks for Chris, and his voice is authentic. Preserving that authenticity was far more important to my eyes to risk losing it to “written by committee” quibbles over, e.g., guesses about what some of the charges against me were “really” about.
I loved the post mostly for its love letters to Python and its community. Which, like it or not, I did play foundational roles in creating. As I’ve mentioned elsewhere in my blog, the list of charges is so contrived they’re not worth the bother of “refuting”. Chris’s analysis of those was the least interesting part to me, but Chris put real effort into that too, and he deserved better than to have it offhandedly dismissed as “analysis”. He put approximately infinitely more effort into analyzing the evidence than the ban announcement put into presenting a coherent case.
2024-10-16 Wed 3:30p CDT
Q: You said you filed a CoC complaint of your own before the ban. How was that resolved?
A: Don’t know. After 4 days, I got a 1-line reply: “Tim, we acknowledge receipt of your report.” After 7 weeks of silence passed, I politely asked for a response. That was about 3 weeks ago. Still no response.
I see that a target of the complaint no longer has the position they had at the time of the complaint. But, technically, they have even more power now. Perhaps more removed from interacting with those without power. I would have happily settled for a private apology to me (and to the others involved - I can’t know how many others received private messages spreading egregiously bad-faith libels about me on Discourse).
Q: Who likes old comedy shows?! And where’s the post? I can’t find it.
Q: The ban announcement says you made 47 posts in the bylaws topic. But Discourse only shows 46. What’s up?
A: Same answer to both. Click here.
Q: You won’t publish your emails with the SC without permission, but which specific message did they give as an example?
A: I can’t be sure, because they didn’t supply a link. It had something to do with sexual harassment, and all guesses I’ve seen match mine, that they must be referring to this message, which briefly mentioned the topic. I have yet to see anyone, anywhere say that they did - or even could - read it as making light of anything related to the topic. It’s easy to find people who read it as intended (as condemnation of injustice to the victims): in replies to the SC’s own topic, in various blogs, and in any number of “tech gossip” sites’ comment sections. So while someone may very well have taken unintended offense at it, and I regret that if so, it cannot pass a “reasonable person” test.
BTW, that post got hidden “by community flags” at the time. I couldn’t guess why, and ignored the hiding. The mods soon enough resurrected the post on their own initiative, so it apparently didn’t violate the CoC to their eyes either. My best guess was that it got hidden by American political partisans annoyed at my unflattering characterization of many US national politicians (regardless of party): elites who get free passes on many kinds of toxic behaviors solely because of their status.
2024-10-10 Thu 07:15p CDT
Q: Don’t you take responsibility for anything?
A: Sure! But not at all for being some kind of monster. I’m not. See here for my view of what went wrong.
2024-10-09 Wed 7:00p CDT
Q: So how many topics did you start?
A: Across the time in question, one. It was originally titled “Are the neurodivergent welcome here?”. In a long, thoughtful, and helpful reply, Glyph said it would help to reframe it a bit. I replied, in part:
I’m not up to rewriting the whole OP, but if someone can think up a better title I’d be delighted to change it. Wholly agreed that the title now is so overly broad as to be largely devoid of coherent meaning.
Glyph replied, in part:
I think that leaving the OP as-is is fine, sometimes a discussion ends in a different place where it begins.
As for a title, “How can we better support neurodivergent newcomers to the community?” might reflect my proposed pivot.
Which I gratefully accepted, and changed the title accordingly.
Discourse also says “Considerations around legal advice” is my topic, but I didn’t start it, or name it. As already detailed in my Dispelling Information Asymmetry post, a moderator split it off from a reply of mine in the bylaws topic. They gave it the title too, and, as I already said there, what they did was fine by me.
2024-10-07 Mon 07:00p CDT
Q: Why did you endlessly relitigate the bylaws vote?
A: I have no idea what they’re talking about. I stopped mentioning it well before the vote started. My last two posts in the topic were entirely position-neutral, just reminding people that the deadline for affirming their intention to vote was imminent (something PSF staff was apparently too busy to remind people of themselves). I never mentioned the vote again. Next time I saw anything about it was at the top of my list of “offenses”.
Q: Why do you endlessly oppose the CoC?
A: I don’t. I voted for the initial CoC when I was on the Board. And when I talked about Python’s early days, that was an opportunity for people to learn some entertaining and educational (if I say so myself) history. If people let confirmation bias, bad faith, or ill will blind them to that, that’s their loss. Here:
[Ned Batchelder] I’m fully in favor of the community educating or excluding someone who is “routinely impatient and dismissive.” Allowing that behavior drives other people out. It’s a bad tradeoff.
[me] I actually agree. In the early days, Python was in much more of a “beggars can’t be choosers” category. It outgrew that long ago.
Nothing is really new. Much the same here from 4 years ago:
[me] Usenet is one end of the spectrum; living in a North Korean re-education camp is the other, and I don’t want that either
In my view the PSF has been moving steadily toward the latter.
2024-10-05 Sat 02:30p CDT
Q: Is Ethan Furman a friend of yours covering for you?
A: No. His dissent was a surprise to me. I recognized his name, as I recognize at least hundreds of Pythoneers’ names. We didn’t correspond before he posted his dissent, and, in fact, over a month passed before I remembered why I recognized his name.
I was the only active admin on the python-dev mailing list for many years. I volunteered to step down if someone would step up (to take over the thankless job) who was willing to be more active (than I was willing to be) in moderating. Ethan volunteered. I didn’t select him - I explicitly wanted no say in who took over. I believe the SC (at the time) gave him the job.
I do count him as a friend now. As to whether he was covering for me, I think his brief dissent speaks for itself: to his moderator’s eyes, “I found that Core Developer’s behavior to be exemplary”. I wouldn’t go that far, but I don’t believe I materially violated the CoC under a “reasonable person” standard.
Q: Why did you say you never intended to post again in the neurodivergence topic?
A: In fact, while I never said a word about this, I stopped posting in the PSF category entirely, and intended never to post anywhere under PSF again. Suffice it to say that I thought the neurodivergence topic was important, but that if I posted in it again the topic would, e.g. be closed just to spite me. I wanted to head that off.
Alas, the topic eventually got closed anyway, despite that it remained civil throughout, and didn’t reach a “natural” conclusion. It had built up a lot of good energy, but got stalled when nobody stepped up to “do something”.
2024-10-02 Wed 10:00p CDT
Addressing questions in replies to Ethan’s followup post:
-
As of Aug 8, the day after the ban was announced, the SC represented to me that I had already agreed to do everything they asked for the ban to be lifted on the expiration day. It’s not lifting of the ban I’m aiming at, it’s transparency.
-
However, Aug 8 is also the last time I heard from the SC. They haven’t replied to anything I sent to them since. I’m apparently ghosted for the duration.
-
Which is why I didn’t ask for permission. I don’t get a reply to anything anymore, and I will not publish their email without their explicit permission.
-
But all of that happened after the ban, so was out of scope for my pre-ban blog.
-
I still intend to return. I can’t say whether the SC has changed their collective mind.
-
The relentless ghosting is something I can’t explain either. I see nothing about ghosting in any PSF CoC-related docs, nobody said it would happen, nobody acknowledged it was happening, and it was well over a month before I realized that trying to discuss anything with the SC would be rigidly ignored. I gave up trying. ↩
-
But, of course, incomparably better in others; e.g., I wasn’t imprisoned, or executed. For which I’m grateful . ↩