Core Python developer suspended for three months
theregister.com
theregister.com
> Overloading the discussion of the bylaws change (47 out of 177 posts in topic at the time the moderators closed the topic), which created an atmosphere of fear, uncertainty, and doubt, which encouraged increasingly emotional responses from other community members. The later result of the vote showed 81% support for the most controversial of the bylaws changes, which demonstrates the controversy was blown out of proportion.
I skimmed much of "https://discuss.python.org/t/for-your-consideration-proposed...", and all the Tim Peters comments I saw so far reflected pretty well on him.
He seemed to be pointing out risks of giving quite that additional power to a board, including the risk of it being abused to neutralize opposition -- only to have the existing power appear to be used to neutralize him.
I hope this aspect won't be lost in discussion. Knowing online forums of modern Internet, I fully expect some of the keywords in later-listed reasons given for suspending Tim Peters to trigger big upvoted threads, with the effect of burying discussion of the first-listed reason. As, for example, the current top-voted thread on HN as I type this.
Someone points out new rules make it too easy to cancel people over nothing, gets cancelled, seemingly, over this compliant (no idea about everything else).
It's literally a catch-22.
EDIT on further reading, while I agree with the arguments made by Tim Peters, I think he misread the room perhaps. It's clear the people he's talking to don't understand his hypothetical objections, and just won't change their mind. At the point where they start to take his (reasonable) objections personally, it does turn into a bit of a polite food fight.
At some point, I think you cut your losses, if arguing for the right thing does more damage than the wrong thing itself. As is, he's out, presumably the proposal will pass, just without him in board. He could have cut his losses and maybe resigned.
But easier said than done, arguing with people online about things you care about is hard.
I suppose, even to very seasoned operators, sometimes it's hard to know when is time for patient and diplomatic explanation, when is time to get worried and make more passionate argument, when is time it's time to shift to "commit" mode, and when it's time to resign with the right decorum so that you still look like a sophisticated team player to future opportunities.
I also suppose it's easier if the first priority is to be an operator.
As for the other key party, besides whatever else is going on, publicly suspending someone in the tech industry like this seems like a big deal, and can damage the career of even the most accomplished people. It had really better be necessary and appropriate, or you're looking at damage to your org reputation and your culture, and maybe legal liability.
I read most of it,twice. I almost agreed with Peter's after the first skim, but on reading the second time, I do think use a lot of rethorical stratagems/fallacies (he isn't the only one but the fact that he posted a lot does not help, and the use of the 'slippery slope' argument in like his 3rd post is a killer) so i now tend to distrust his good faith. The 'arguments' he use are fairly anecdotal, and now I think he's mostly wrong and a touch too adversarial. I think the Bennet guy made far better arguments (and that's frm someone who don't know/think anything about the overall situation).
Overall, I don't think Tim Peters is a bad guy (tm), I think he has been mischaracterized/misunderstood, but his position was mostly wrong and he was a bit too active, which made him seem adversarial/trollish, which did not help. Also, clearly bad faith arguments are cheap and makes me dislike you when I fell for it (which I did).
Banning for that is a bit much, but I understand my sensitivity is not the rule (but it should be :)).
P.S: Re-reading that made me feel like I'm part of the 'lesswrong' community. I'm not, but I see why checking the use of rethorical fallacies is useful.
I mean even though the board is not traditionally a boss in the sense of an open source project. But its still a kind of management/boss.
One of the most cornerstone laws of power is to never criticise a team member, even less so one's own boss(es) or their policies in public. Another law is to never make a team member apologise to you. It simply creates a rivalry on the longer run, and new enemies you don't want to fight. In fact you are better of not doing such things in gossip too. Powers always maintain spies, or just plain allies who give them information in return for favours. If you want to walk down this path, do ensure you have enough(minimum) support from a majority section of similar powers, then act. But even this is not recommended.
In this case whenever such policies are announced in public, these decisions have been made with enough support and votes, the announcement is just a public event of informing the larger masses. If you criticise these things in public, you won't change a thing. Instead the powers mark you up for elimination at the first chance. Like in this case.
If I was this person, I would abandon the project(not just the 3 month suspension) and probably convince other team members to do the same. Python is not the only decent open source game in town.
Its also pointless to contribute to a project whose sole purpose is to hurt the very people that make it happen.
Over the years I have seen some very critical people, even critical teams fired en masse, and then replaced by not so good people. The world goes on. The products and projects suffer for a while, many times even die out completely. But that is what the powers-that-are want, and are ok to live with.
My experience with these things tells me Tim won't find much respect there(even when he returns) unless the whole leadership is now replaced. And I can tell you other people will be treated with same levels of disrespect and outright insults going on. Once there is toxic management/leadership in place, your only options are to leave and work at some other place that treats people with respect.
Im sure their foundation gets lots of money. And they have to appear in certain way(politically, and popular cultural trends) to keep getting more money. They are not going care who is important or how important they are, when big money is involved and they are likely to make big pay days.
Its the standard evolution arc of most political hierarchies in tech companies. Once the product is successful and profits are flowing in. Management takes over. Decide they don't need engineering anymore, treat people with disrespect. Drive away good talent. Poison the whole culture and continue to milk features for more money. Eventually the set up dies out, and they go the next companies to extract the next pound of flesh.
I think this is the crux of the matter. The Python community was great when it was still niche. Corruption is likely to happen the more popular a group becomes. This is why I advocate staying niche: https://srid.ca/niche
I would like to strongly urge you to research the story of Stefan Krah, another core developer who left in 2020. After receiving a 3 month suspension. Whom Mr. Peters spoke favourably of at the time, and who might credibly also be suspected of being neurodivergent in some manner.
History rhymes quite impressively at times.
It's concerning just how strong the "just world" fallacy is with so many people, to the point of not being able to comprehend the argument that Good Thing (tm) could ever cause harm
> "Defending 'reverse racism' and 'reverse sexism', concepts not backed by empirical evidence, which could be seen as deliberate intimidation or creating an exclusionary environment."
Sorry do they need a scientific paper to confirm that it's possible to be racist to a "majority"? And the Kafkaesque idea that it's "exclusionary" to oppose it, even as a theoretical thing
This is how how marginalization works in practice.
There are different definitions and views of racism. And one dominating in certain circles says that it's impossible that a weak minority can be racist against a strong majority. This then comes down to in those group's popular claim that there is no racism against white people, because white people are the dominating group on this planet.
That seems obviously incorrect. The outcome is a combination of their behavior, the text of the CoC, and the subjective interpretation of the CoC and the behavior (by the people doing the enforcement). Any of these could be "wrong".
I gather that the person making this comment was one of the people doing the enforcement. Obviously they'd think that in any specific case, the CoC was reasonable and their reading of it and their interpretation of the behavior was correct. If they didn't think that, they would have reached a different outcome.
But this isn't a statement about a specific case. It's a statement about generalities. And it's pretty disturbing that the people running the show refuse to acknowledge the possibility of errors even on a theoretical level.
So... down with voting, up with secret police? Wouldn't want to stress the commoners with the power of a vote.
> At the 2019 Contributors Conference, p5.js made the commitment to only add new features that increase access (inclusion and accessibility). We will not accept feature requests that don’t support these efforts.
I completely support these efforts, but it turned me off the project. It seems a bit too strict to just refuse any PRs that cannot be considered as increasing access by some measures. I even tried looking for the proceedings of the mentioned conference to get more context, but didn't find anything conclusive. It seemed like an arbitrary decision, made outside public oversight.
It might be the case that these policies aren't enforced seriously, but at that time I decided that I didn't want to risk working on something for potentially months that I found cool but couldn't present as "increasing access". So, I just went ahead and played around with OpenGL instead.
‘Enforcement actions’ (what a bureaucratic way to refer to punishment!) do not just ‘happen’: they are imposed by people. They may be just or unjust; the people may be fair or biased; the process may be due or undue.
Mr. Smith should reflect on the fact that his name is indelibly associated with this action, and consider that if others happen to think ill of his actions and remarks in this affair then the responsibility for that lies entirely with him: it is his behaviour he may be judged for.
Inexplicably, the elected "leaders" also have/had positions at Google, Microsoft, RedHat and Bloomberg (the Googlers may have been fired this year).
The council prosecutes those who contradict the hierarchy and have an own opinion. Tim Peters has contradicted the council on many occasions. The council is unable to summarize even simple mail conversations, disregards historical context, applies the CoC selectively and does not shy away from defamation.
The council censors and does not let the accused defend themselves.
Tim Peters is the good guy here. Intelligent, non-threatening and easy to deal with. Like in the Soviet Union, these qualities make him a threat to the system.
The discussion got heated but I think Tim Peters is arguing for a more stringent suspension rule as opposed to a simple majority vote. CoC violations are serious and should be debated better than just setting up a vote. The debate should be publicly discussed and the findings and reasons published as well.
Why is there opposition to that?
I would disagree with that part. Forks are highly difficult. OpenBSD succeeded, so did the gcc fork that was sponsored by Cygwin but then merged back into mainline gcc. Otherwise?
Then, the council owns the entire marketing organization PSF, which owns the conferences, which means undesirables can and will be deplatformed.
It is much much harder to do a successful fork in 2024 than it was in 2005. Open source is corporate now, and the employees will stick with the official version and not the fork.
I think you could literally write an XPython fork that is 2 times faster, has a 100% compatibility but would still be marketed out of existence.
If Python had a free standard, it might be possible. But that will not happen.
- Python turned out to be annoyingly dynamic, in contrast with usual instincts. This meant that even CPython itself had to sacrifice some edge-case compatibility for every release.
- Moreover, Python C API was also hard to change without breaking some extensions, which are ironically why Python got popular in the first place! Many alternative mechanisms, notably HPy, were proposed but they all fell short of replacing the current C API. Nowadays CPython is more willing to get rid of as many internal but publicly exposed APIs as possible though.
- Python has a free standard, it's located at https://docs.python.org/ and is enough to implement something that resembles Python. You probably meant the sort-of-formal standard (which also mean many different things), but the mere existence of such "standard" doesn't mean anything, see: https://news.ycombinator.com/item?id=40519050
He's exceptionally talented and original, and that sort of nonsense doesn't go well with a bureaucracy.
[1] https://spoj.com
Looking a bit more into this. I saw https://discuss.python.org/t/im-leaving-too/58408
And this really makes me sad for Python: the whole thing is so far away from a productive discussions, posts get hidden, etc. Very much a poisoned well.
People's tempers flare, they have unresolved trauma and whatnot. So talk with them more, not less!
As my opening post there says, I was going to leave anyway - so I don't particularly mind being banned, but I do consider most of what they said about me to be defamatory and untrue (and the rest to be irrelevant). I'm admittedly no stranger to this sort of drama in the tech world - so I made local backups of my posts throughout that discussion (across multiple threads), because I knew there was a chance that I and others could lose access to them. But the specific way in which they went about things was beyond what I could have imagined.
But regarding your question: the linked forum uses the Discourse software, and its standard policies apply. Posts which were "temporarily hidden by the community" (in some cases, this can be done unilaterally) are only visible to logged-in users who have reached a certain "trust level" (which is also involved in weighting flags).
If you are logged in and subscribe to a thread, you can (as I understand it) configure your account so that replies are emailed to you. Generally this would happen before a post can be hidden, and you'd have an irrevocable record of it. However, this doesn't help with previous posts.
There's an outside chance that archival websites have copies of those forum threads taken at the right time to include currently-hidden posts.
Alternately, I've put my own archives on my blog: https://zahlman.github.io/dpo_archive/ .
But the only thing I'm surprised of is that I'm not surprised anymore.
Normal people don't use the N-word in 2024.
Also, being neurodivergent isn't a "get out of jail free" card. Plenty of neurodivergent people know or at least try to not be a jerk.
Edit: I'm wrong. I confused 70s SNL skits that didn't age well - He referenced the S** skit.
I dont know anything about this person or the python politics, maybe he fits in this category, maybe he doesn't. However i strongly feel "donating lots of time" is not an excuse for being an asshole.
There are lots of discussions about Linus criticizing others in a very harsh, sometimes offensive way, I won't repeat them here. One thing I 100% agree with is that this would create an unhealthy environment that discourages participation and contribution. Many projects adopted CoC exactly because they saw what could happen without one.
And of course, my comment that is purely based on facts and about professionalism is now all about sentimental and "feelings".
That's why we can never have a productive discussion on this topic.
P.S. looks I hurt some people's feelings by using this Linux example. Maybe you guys are the ones that are most vulnerable and sensitive.
Things like "defending reverse racism" can mean so many things from "oh my God, that's super-racist!" to fairly benign awkward choice in language. We have no idea what it is now, but by making the accusation (without details) there will always be the air of suspicion that maybe, perhaps, they're secretly super-racist. Or something. This is an issue with a number of items on this list.
Not great... Whether the suspension is justified is hard to judge, but it shouldn't have made this announcement, and absolutely should not have published this list.
I'll also add that quite a few of these items seem to be "making assumptions or speculations about other community members’ motivations and/or mental health", which is one of the accusations on the list. Posting "too much" can certainly be disruptive, saying this "creates an atmosphere of fear, uncertainty, and doubt" is just speculating about motivation. This too is an issue with several items on this list.
> "Making light of sensitive topics like workplace sexual harassment, which could be interpreted as harassment or creating an unwelcoming environment." > "Casually mentioning scenarios involving sexual abuse, which may be inappropriate or triggering for some audiences."
In which scenario would these topics even come up when people discuss Python? I can't imagine anyone talking about these things in a professional workplace outside exceptional situations. This just seems very weird to me.
https://discuss.python.org/t/for-your-consideration-proposed...
And then a public warning
https://discuss.python.org/t/inclusive-communications-expect...
I genuinely find the PSC’s suspension of Mr. Peters to be problematic given my current understanding of the situation. Will they listen to my expression of pain? Will they stop and reflect on their actions, and on the repercussions of those actions on Mr. Peters, the Python community and the software community as a whole?
Or will they try to exclude me, as they have exclude Mr. Peters?
If bias plus power is a problem, who here has the power: the one suspended, or the ones suspending?
[1] https://discuss.python.org/t/python-s-supportive-and-welcomi...
> Using potentially offensive language or slurs, in one case even calling an SNL [Saturday Night Live] skit from the 1970s using the same slur 'genuinely funny', which shows a lack of empathy towards other community members.
This is wonderful on a couple of levels. Both because someone seems to be saying finding SNL funny can be a CoC offence and also because I can't figure out what the word is. Too offensive for adults I suppose.
https://en.wikipedia.org/wiki/60_Minutes#%22Point/Counterpoi...
Genuinely appears to be someone bad-faith fabricating reasons to get the result they’ve already decided on.
I'm sorry, I won't trust any of these committees / foundations / council without direct evidence, you can't just make up these charges and remove all the context...
I mean you can, but based on my experience, I'll just assume the council is full of do-nothing political activists who infiltrated a developer project and found a way to be petty and feel all important and mighty.
First point, he started a discussion in a discussion? What else, he commented on a RFC?
> The issue is that Python Fellows are awarded membership for life and the only mechanism to remove them – if they've been found to have violated the CoC – is seeking a vote from the full Python Community. This is undesirable, because it would "subject members of the community – including people directly impacted by that violator's behavior – to undue distress."
Whether it's "volunteer work" is a bit tricky, because a number of core developers work on Python as part of their day job. Some also work on it in their spare time, some don't. Or some previously worked on it in their spare time and now no longer do. So there isn't really an obvious answer to this.
You can’t CoC unsavory opinions out of existence. You need to confront them by putting beliefs against each other. Otherwise it’s just another inquisition.
If seemingly innocent things are now held against the banned developer, that is reason to worry.
I don't disagree. I have never been involved in their governance, don't know their rules, and therefore I don't have an opinion. It's their organization, they can do whatever they want.
The person you're responding to is right, this is the outrage industry again.
I “noped” right out of there. Deleted the PR, and will never be associated with that group.
I wouldn't jump to conclusions either.
Any discussion of a Code of Conduct supports the need for a Code of Conduct.
(Original is "the comments on any article about feminism justify feminism").
This doesn't seem like a one-time mistake, but rather a pattern of behavior that was measured and then acted upon -- likely after a series of warnings that took place behind closed doors.
The suspension is really too bad for everyone involved in the Python community, but I hope it can be a lesson for folks who have a hard time separating how they present themselves personally vs. professionally. Let's also hope that this doesn't result in the collateral damage we saw after the whole Donglegate fiasco. I'd like to think after ten years of stuff like this we've gotten a little bit better.
I completely agree!
> it doesn't sound like Tim's actions were too professional.
I disagree here, at least with respect to what I have seen of his actions (I am not deeply familiar with them, just know what was referred to in https://news.ycombinator.com/item?id=41187470). From what I can tell, the Python Steering Council’s actions were unprofessional and the members should resign; if they do not, they should be replaced. However, since I have not seen everything referred to, it is possible that I am wrong.
edit 1: reference earlier HN thread
edit 2: I found and linked that earlier thread
It always amazes me to see the way people behave here.
Some of the heaviest hitters in the world hang out here. Even though the atmosphere is casual, careers are regularly made (and, I suspect, broken), here.
I know that I may seem overly casual, in my own posting here, but:
1) I am not looking for employment,
2) I try to present a face of kindness and empathy. It may seem "stuffy," but I never come from a position of "I'm better than you" (There's very good reason for that, which is a story for another time), and
3) I take care not to "go negative." I'm quite capable of it, being a reformed troll, but have decided that it is better to be a force for unity, than rancor.
https://marc.info/?l=python-dev&m=107666540014940&w=2
"Eek... What do we have the fucking warning framework and deprecation warnings for, anyway ?!"
Van Rossum:
https://marc.info/?l=python-dev&m=139283012525982&w=2
"Larry volunteered to be the release manager and got widespread support when he did. If you don't trust him, go fucking fork the release yourself."
Both are members of the inner circle and protected.
If you think using the f-word in professional communication makes it unprofessional, do I have decades of stories to tell.
But, I would argue, not in a mailing list.