Newbie Poison
After encountering CodeNewbie at OSCON 2016 I've been thinking a lot about why there are so few new developers interested in Perl. I haven't been a Perl beginner for a very long time so I went looking for resources and found FAQ for the beginners mailing list. I wanted to know how active the mailing list was so I immediately went to the web achive. Reading through the list I saw things like:
"Is there a reason why you think one CPU is better than another?"
"your code exhibits many bad elements, and you don't seem to apply all the advice I've been giving you. Please go over http://perl-begin.org/tutorials/bad-elements/ , read it and internalise it."
Condescending, abusive advice is worse than no advice at all. There's no way I'd send a beginner into that. Nobody should have to learn like that. Seeing it ruined my afternoon. Maybe I should have read more of the FAQ:
"Who owns this list? Who do I complain to?"
This is a FREQUENTLY ASKED QUESTION?
"Think Before Posting!"
This isn't even a question but the "answer":
"Please always think before you write; when you write you are taking the time of over a thousand people."
is telling.
So come on in newbies. You're stupid. You fill us with contempt. Get ready to complain. And most of all, don't waste our precious time.
Context is probably important here, particularly given the mention of previous advice.
So, that CPU one seems to be:
http://www.nntp.perl.org/group/perl.beginners/2016/06/msg126040.html
I wouldn't have included that particular sentence, but it's a valid question in the absence of further information: newer isn't always better, and the author does go on to explain *why* (more cores but slower single-core performance).
Presumably the second one is this:
http://www.nntp.perl.org/group/perl.beginners/2016/06/msg126050.html
which doesn't seem so bad if compared to the next paragraph:
Furthermore, the E-mail headers of your message are obnoxious with a From: of
the list and a reply-to to your personal Yahoo account. That may be a Yahoo
mishap so please consider avoiding using Yahoo when posting to mailing lists.
which is offensively phrased IMHO - plus I'd be tempted to point out that it's a bit rich to complain about mailing list etiquette while top-posting and not trimming the irrelevant parts of the quoted message. That'd be entirely inappropriate as a reply on that mailing list, but since we're complaining about things here anyway...
It's great that some people have the time, patience and motivation to help out on beginner lists like this (I don't, so I'm hardly in a position to criticise). It'd be a shame to discourage that: don't forget that it's easy to get burned out when dealing with similar questions all the time.
If the tone of the responses is unfriendly or offputting then it should only take a nudge in the right direction to make everyone happy. Have you contacted the authors of these posts directly to suggest better ways of wording their points in future? Even better, join that list and set a good example!
First, thank you for taking the time to respond, Tom.
A few years ago I might would have agreed with you. I unconsciously imagined newbies as thick skinned, confident, male, Caucasian, autodidacts like myself. Like yourself, I probably would have evaluated communications in terms of whether they were defensible rather than whether they were off-putting.
I think your observation about burnout is extremely relevant to this discussion. Burnout implies that someone doesn't want to be doing what they are doing. This colors everything they do or say. It is extremely toxic to everyone, but especially newbies with low self-confidence.
I am motivated, patient, and make time to help other people with Perl. Your suggestions are good ones and I would pursue them if I felt they were the best way I can improve Perl culture. I instead actively reach out, join, and try to help groups that might benefit from my Perl expertise.
I'm scrutinizing Perl culture after communicating with people who *aren't like me*. To many of them mailing lists and IRC are what snail-mail and gopher are to us. I can't in good conscience expect them to adopt our current ways only to get repelled by what they find.
I'm not complaining because I want to tear down our community nor individuals within it. I just have resource limits and can't *both* actively share Perl *and* fix our mailing list. We can make Perl attractive to more people. TIMTOWTDI and this is mine.
The list moderator ( genehack, probably known to quite a few ) answered to you here: https://www.reddit.com/r/perl/comments/4ob53x/newbie_poison/d4b5eip
Also, just a small personal note:
You pick on this question:
"Is there a reason why you think one CPU is better than another?"
And frankly, i think you read it in a meaner tone than the author intended. I've had a few years in tech support myself, and oftentimes asking the most simple questions (is it plugged in?) can provide a solution, and even if it doesn't, it means you've cleanly ruled out a possible source of problems. I hope you'll excuse my french, but i find people who get upset because they're asked "too simple questions" to be presumptuous dicks.
[–]genehack 3 points 9 hours ago
I can't comment on b.p.o ... again. If anybody can, please point the author of the original post to this response, please:
Hi. I'm the moderator of that perl-beginners list. It may not seem like it, but it's way better than it used to be, believe me. In general I think it would be better to focus on providing better, more empathetic answers, rather than railing on the obnoxious answers -- because doing that just turns into a hate-fest spiral that's even more off-putting.
If you'd like to help with those better, more empathetic answers, please feel free to join the list. Thanks.
Its not just with newbies, I find we often choose aggressive means of communicating with each other and generally fail to give each other useful feedback. I
genehack: I admire you and appreciate all you do for the Perl community.
I'm not merely railing on obnoxious answers; I think they should be eliminated completely. I won't join a list that tolerates obnoxious answers and is populated by people prone to "hate-fest spirals". The Perl community doesn't have an "empathy" deficit; it has an antisocial behavior surplus.
Go to http://discourse.codenewbie.org/categories . Scan the list. Perl isn't there. Not at all. Are the languages there better than Perl? No, they're not. If they aren't repelled by the language itself, what repels them? I'm asserting that it's Perl *culture*. We may think we're OK, but from the outside it's easy to see us as antique, pompous, and arrogant elitists who can't even treat each other with kindness and respect.
(tl;dr I think I'm just repeating here what genehack already said, and I'd defer to his experience anyway)
uh, this seems like a topic drift to me? Whether or not someone conforms to a brogrammer stereotype, surely basic principles of "don't be unpleasant, and if you see unpleasant behaviour, call it out" apply?
As Mithaldu says, that first one about CPUs isn't necessarily offputting - at least, the person asking didn't seem to think so, although I wouldn't want to put words in their mouth!
The second one is wrong on all sorts of levels, yet I didn't see any replies calling this out. Surely that's the first step? Anyone can jump in with a response, whether that's "oi, no, watch your tone" or "sorry, $person's comments are out of order, here's a better answer".
Not to detract from the "be helpful, not rude/condescending" point, but please also consider: it's not just newcomers to the language who can be put off by the wrong tone. I appreciate that your original post was likely written in anger, but even so, phrases like these:
really don't seem to be a constructive, encouraging, helpful way to phrase things.
Agreed - so if we can avoid this, people who already do take the time to respond to newcomers are likely to be happier, and provide better/nicer answers. Factors that lead to burnout might include:
(based on zero research on my part, other than a vague sense from IRC/forum interaction). If someone bothers to respond to a question, my assumption is that they want to help: "I'm not merely railing on obnoxious answers; I think they should be eliminated completely" reads (to me) like "if you're not being nice, shut up" rather than "I appreciate what you're doing, but maybe phrase it like and leave out the bit about smelling of elderberries". Is silence better than an undiplomatic response? If so, isn't that effectively going to kill off that mailing list?
As for http://discourse.codenewbie.org/categories - I'd never heard of it before. From the topic list, it seems very few other people have either: only a handful of languages (python/js/ruby - no PHP, Golang, Swift, Java, C#, not even any BASIC variants). The most popular of which (Ruby) has about one new topic every *month*. Actual content level seems minimal, so it seems a bit odd to be calling out the "Perl community" (a diverse and nefarious thing at the best of times) for not supporting it. Would it not be more productive to sign up and create the Perl category to kick things off, rather than leaping to conclusions about people being repelled by the culture?
I'm not trying to say that Perl discussions are rosy and problem free - there's likely to be much room for improvement. I just don't see that meta-posts about how much we suck is going to help. Similarly with generating hype on social media - instead of lambasting the perl community because no one has used specific keywords or associative-array tags, start the ball rolling! One post on Twitter, maybe a followup here or on reddit or perlmonks etc. saying "there's an #codenewbies thing, it'll encourage new users, post your tutorial links and recommendations etc. with that tag to maximise perl awareness"... maybe it won't reach critical mass, maybe it will, but at least it's a starting point that other people can build on. "I did this, please help out" vs. "do/don't do that".
Thank you for your fair and detailed response, Tom. I'll do my best to answer.
Is silence better than an undiplomatic response?
Silence is better than any response that isn't nice, honest, and helpful.
If so, isn't that effectively going to kill off that mailing list?
Only if people can't be nice, honest, and helpful. If they can't, then good riddance.
"...topic drift..."?:
One of my central concerns is the assumption that "not unpleasant" means the same thing to insiders as to other people, especially to newbies.
'... surely basic principles of "don't be unpleasant, and if you see unpleasant behavior, call it out" apply.?'
I saw some unpleasant behavior, called it out, and look where it landed me. Many won't even concede that the behavior I called out was unpleasant in the first place.
"...your original post was likely written in anger..."
Shame then outrage. I went in imagining myself as needing help. "What makes you think...?" demands that I prove myself with the assumption that I must meet a standard to be taken seriously. The second quote is downright humiliation.
"...really don't seem to be a constructive, encouraging, helpful way to phrase things."
My intent wasn't to encourage. My intent was to express my feelings and observations while imagining myself a Perl newbie.
"Would it not be more productive to sign up and create the Perl category to kick things off, rather than leaping to conclusions about people being repelled by the culture?"
I don't know. Would you be willing to do that so we can find out?
That's fair enough, hopefully we can agree to disagree on this point.
Called it out - good. In an unrelated forum - bad. Has there been any contact with the authors of those two posts or the people asking the original questions?
(yes, I know I'm approaching this with a software developer's "see a bug, fix the bug" mentality, which often does not translate well to social interaction)
Sadly it seems neither of us have the enthusiasm for this task (see my earlier comment about lacking time, patience and motivation for this sort of thing).
"...hopefully we can agree to disagree on this point."
Of course!
"Has there been any contact with the authors of those two posts..."
Absolutely not. I've seen how they treat people.
"Sadly it seems neither of us have the enthusiasm for this task"
You're misunderstanding. I'm not asking if you're willing to do it *instead* of me, I'm asking if you're willing to do it *with* me. I suppose I have my answer now, though.
Thank you again for your ideas and thoughtful consideration. :-)
This whole post looks unpleasant.
> Many won't even concede that the behavior I called out was unpleasant in the first place.
This sounds like "Many people disagree with me, how dare they" to me. (I'm one of them.)
- "Condescending, abusive advice"
- "So come on in newbies. You're stupid. You fill us with contempt. Get ready to complain. And most of all, don't waste our precious time."
- "antique, pompous, and arrogant elitists who can't even treat each other with kindness and respect"
Isn't all of this condescending, abusive advice itself?
If you don't have anything nice to say, well:
> Silence is better than any response that isn't nice, honest, and helpful.
Like others, I think you were a bit harsh picking out the "what CPU" question, that response seems clear simple and polite to me.
But I do agree that the "bad practices" second answer was rather snotty and unhelpful - especially saying that the OP's code had several bad practices but not bothering to clearly explain: which specific bad practices he had in mind. Maybe the commentator had had a bad day?
More generally, I completely agree that we should take the time to reply helpfully and politely on various Perl beginner forums.