Key Perl Core developer quits, says he was bullied for daring to suggest programming language contained 'cruft'
- Reference: 1618314492
- News link: https://www.theregister.co.uk/2021/04/13/perl_dev_quits/
- Source link:
Sawyer X, who became " [3]pumpking " – manager of the core Perl 5 language – in 2016 when he took over that role from Ricardo Signes, explained his rationale for departing in [4]a post to a Perl discussion list.
[5]
"Due to the continuous abusive behavior by prominent Perl community members and just about anyone else who also feels entitled to harass me (and unfortunately, other Core developers), I am stepping down from the Steering Council, from the Perl security list, and from the Perl Core," Sawyer said, adding that he is stepping down from the Perl Foundation's Grants Committee and that he will not be speaking at or attending the next Perl conference.
"The Perl Foundation will publish a fuller response in due course once we understand more about the situation that led up to Sawyer’s recent announcement," the organization said. "However I can say that we are saddened to learn of Sawyer’s statement of resignation."
[6]
Sawyer X's disaffection with the volunteer-based Perl community further complicates the road ahead for the programming language, damaged over the past two decades by cannibalization from PHP and Python, incompatibility between Perl 5 and Perl 6 ( [7]renamed Raku in recognition of that schism), and recent [8]governance troubles in part related to disagreements about the planned release of Perl 7 and backward compatibility.
The precipitating interaction, as Sawyer X tells it, followed after he opined to other Core developers on a mailing list that there is "cruft," or poorly written or superseded code, in Perl – not exactly an outrageous claim for a language that has been around since 1987.
Perl.com theft blamed on social engineering attack: Registrar 'convinced' to alter DNS records by miscreants [9]READ MORE
"After saying this, I immediately received hostile messages – how dare I suggest we recognize there is cruft (and that we would be happy if it weren't there)," he recounted. "After all, there are emails by a few Core developers (who are on this list) that say otherwise."
Sawyer X described the responses he received as "just one example in a chain of continuous bullying and hostility I've been receiving in recent years, especially in the last year, at the hands of Perl community members."
Nonetheless, he plans to shepherd the release of Perl 5.34 in May 2021.
The health of open source projects has a lot to do with the feelings of acceptance and camaraderie among those who contribute their time, energy, and code. Community, and how to sustain it, is a [10]frequent topic at open source conferences. If Sawyer X's sentiments about the Perl world are shared by others, it's not a good sign to the language's longevity.
However, one of the individuals involved in the fracas, Perl developer Christian Walde (Mithaldu), disputes the accusations and, following a brief apology, has [11]documented discussions related to the alleged "cruft" afflicting Perl.
"I'm sorry that I wasn't able to word myself in a way that did not feel to him like I'm going after him at the same time, I do not believe I deserve the accusations," said Walde.
In a [12]Reddit post , Dan Book, known as Grinnz in the Perl community, offered an interpretation of events similar to that proposed by Walde.
"In my view, every reply to Sawyer was necessary to challenge the information presented publicly by an authority figure," he said.
"I am sorry he apparently interpreted it as bullying, but I am not sure what response would have not constituted such to him, or if it was simply because of one of the people he replied to. Authority comes with responsibility for your public words."
[13]
Therein lies the difficulty with open source work – people have different expectations about the permissible range of interpersonal interaction and different definitions about toxic behavior. Instituting rituals and rules that suit everyone isn't easy. ®
Get our [14]Tech Resources
[1] https://github.com/Perl/perl5/wiki/Perl-Steering-Committee
[2] http://blogs.perl.org/users/mithaldu/2020/12/first-perl-steering-council-elected-to-replace-pumpking-position.html
[3] http://blogs.perl.org/users/sawyer_x/2016/04/a-pumpking-is-born.html
[4] https://perl.topicbox.com/groups/perl-core/T7a4f1bf9e069641f
[5] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/devops&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2YHXAGavMoz-ddu1AD2dRNgAAAMc&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0
[6] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/devops&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33YHXAGavMoz-ddu1AD2dRNgAAAMc&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[7] https://www.theregister.com/2019/10/11/perl_6_raku_larry_wall/
[8] https://www.nntp.perl.org/group/perl.perl5.porters/2020/08/msg258177.html
[9] https://www.theregister.com/2021/03/02/perl_domain_theft/
[10] https://www.theregister.com/2018/03/06/open_source_community_crams_itself_into_big_tent/
[11] https://gist.github.com/wchristian/4e1bcdb761f20985b0a5c97a423a4fc6#file-__sawyer-txt
[12] https://www.reddit.com/r/perl/comments/mpbjf2/i_am_stepping_down_from_psc_and_core_effective/
[13] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/devops&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YHXAGavMoz-ddu1AD2dRNgAAAMc&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[14] https://whitepapers.theregister.com/
Obligratory paraphrasing of Simpsons quote...
"PERL? Is that thing still around?"
FOSS activists turned programming into a religion...
... and then of course religion wars among different sects can only arise...
One man's cruft is another mans livelihood (or Friday evening rewriting code).
One of the powerful things about Perl is that it doesn't change too much. Yes, it has warts but a language that changes and always breaking code is useless.
So I imagine there was a backlash against those who always want to "modernize" everything needlessly.
Obviously I don't believe he should have been bullied however...
A big issue I have always found in Open Source is people spend long hours often unpaid on a project because they care. This emotional investment leads to emotional language and strong feelings. I have upset people in the past by writing long posts criticising things in detail in a project I maintain. I was not attempting to bully, I was trying to robustly explain my opinion in enough detail to show I had given the topic due attention before savaging someone else's work. Turned out major changes combine with what was described as "a Manifesto of what I did wrong" was counter productive.
Robust debate is useful to find the best ideas, but facilitated it can feel toxic. I am not sure I want to advocate for specific facilitators. But attending a professionally facilitated event to draft an open standard was eye opening. Heated discussions were very effectively resolved by understanding when people not prepared to agree, but were happy to disagree yet commit to continuing anyway.
Cruft is a feature of Perl - Larry Wall is a linguist, and developed Perl in the same way that natural languages develop.
Perl developer quits, says bullied for daring to suggest cruft contains 'programming language'
https://flylib.com/books/en/2.171.1.71/1/
But I bet it does contain a lot of cruft
He's probably right about that but then again Perl 5 could be best described as in maintenance mode. People are probably terrified to fix or change anything in a substantive way for fear of breaking something.
Cult and control
A few times over the years I've had interaction with the devs of open source s/w. I assumed they were volunteers and tried to be as polite, positive and grateful as I can. I was trying to make a positive contribution, to improve the uptake of the s/w among ordinary users.
In each case I was making a case about usability of some aspect of the s/w, based on my work with supporting some very intelligent and proactive users, some at least quite technically aware. In each case my comments were couched quite gently, even tentatively. ("It might be easier for users if.." that sort of thing.)
I'm not a developer, but I am a very technically aware user, and was the technical support for a lot of ordinary users. So my feedback ought to have been useful, and welcome. I tried always to be positive.
In each case the response was, at best unresponsive, at worst quite negative and even abrasive in tone.
I was not insulting their mothers or promoting a heretical view of their religion - but you'd be surprised to hear that if you were to judge by the responses.
In most of the cases my suggestion was (IMAO) perfectly logical and reasonable, based upon my experience actually using the s/w and the comments of others who'd tried it - often at my suggestion.
In most of the cases the responses made little sense - not being about actual use, nor about (which would be understandable) some extra complexity in the coding. But rather along the lines of "We want it this way" or "We don't want to".
In one fairly recent (and trivial) such case, it's impossible to tell if there have been any recent new add-ons for the application, which means users have no way to know that some new functionality has become available. A rather unusual state of affairs. The devs response was that they wouldn't identify these because they "wanted all add-ons treated equally". I tried to point out that leaving a new add-on unknown about wasn't treating it equally. But, well....
Re: Cult and control
This preciousness is one of the things holding a lot of open source stuff back. Including the jewel in the crown where you would think you had called their newborn an ugly monster.
Re: Cult and control
The concept of open source is that if you want something done, you're expected to do it yourself. They don't want suggestions, they want you to fork it, make the changes and then they'll consider it. It's not a customer-based system.
Does that suck for everyone who isn't a developer? Heck yes, but the devs don't care because they're not being paid to take requests. It's a fundamentally unfriendly system.
Re: The concept of open source
To me, the concept of open source is more about giving what you can for the common good. Fixing it yourself is certainly encouraged, but I don't think it's essential. I don't know the details of the incident above, but if your project has non-developer users and some sort of feedback mechanism then I think you should expect feature or usability requests. Especially if your project has a GUI.
If you're just writing code for yourself you can do what you like, but as soon as someone else uses it or looks at it, they may have suggestions or requests. I don't contribute to any open source projects but I am a professional developer and I have learned a lot from code reviews and user feedback. You have to be able to open your mind a bit and see it from someone else's point of view, which may be difficult for the stereotypical lone coder.
Re: The concept of open source
You go, do that, then get a merge request and it sits there abandoned for years to come, as it is "unsolicited"
Well, I've always found...
A good "Fuck you nut sack licker" or "You can French kiss my furry
And if those don't get it done, blocking communications from those village idiots works wonders.
Re: Well, I've always found...
Don't tell me - you work in the Diplomatic Corps.
Toxicity
Developers and project maintainers are indeed human and have the ability and the right to be upset. And some FOSS communities can certainly be toxic - just look at the WordPress plugins repository reviews and support sections.
When I was harassed in that particular forum I decided (much like Sawyer X) to remove my plugins and exit, deleting my account on the way out.
Re: Toxicity
And that is definitely the right thing to do if that's how you feel about things.
Communication based on respect is a lost art, having been replaced by instant outrage by the Internet. People no longer think about what they type, they take it personally and just want to retaliate. And people who are capable of taking an argument at face value are very rare indeed.
The end result will obviously be communities who dwindle in size and either never say anything or never stop complaining and insulting each other.
Not anything I would want to be a part of, for sure.
The main issue with Perl is that it's at least 80% cruft by this point. But it's moved into more of a legacy role these days so it doesn't really matter. Because if they get rid of any cruft, they'll begin losing developer base because they're all just maintaining the same old systems that rely on that cruft.
It is fine
Just keep mantaining the systems that depend on perl while it lasts and we can all get rid of it.
I used to love it, but things never got fixed, and it was clunky. To this day!
Woof woof
" cannibalization from PHP and Python, incompatibility between Perl 5 and Perl 6 " certainly sounds suggestive of cruft(s) to me.
However it's well known that partisanship for specific languages is very strong - I'm waiting to hear about the first GBH attack (did I miss something?)
Loved the last bit...
That bunch jabbin each other about petty shit puts all that `reality` tv to shame. Its a brilliant social experiment to see them wind each other up about some stupid bits of code.
Lock em in a room with a bunch of medieval weapons and sell the footage to netflix.
Next release is 5.34.0, not 5.3.4
Releases are usually in May, so hopefully next month.
ISTM that SawyerX threw a wobbly because "everyone" else said the inevitable cruft wasan't causing problems in practice.