You're Wrong!

You're wrong! How does it feel to be wrong? I've never been and you look like someone who would know!

Why is it that comments on blogs.perl.org and reddit always devolve into someone telling someone else they're wrong when they express an opinion? It's their opinion, it's impossible for their opinion to be wrong, by definition.

I know that comments on the internet in general are filled with vitriol and bile. However, in a community filled with mostly very well educated people, like Perl, I'd expect better.

Why are we belittling each other over silly things like coding style, political affiliation, and soda preference? Instead, how about just keeping your comments to yourself unless you can constructively add to the conversation.

13 Comments

My opinions are based on my Vulcan-like efficacy of identifying and analyzing cold, hard facts. If you disagree with me, clearly you've overlooked an important fact, made an error in judgment, and (most likely) are letting emotions cloud your thinking.

Also if you've failed to be as precise as humanly possible about describing every potential exception to your opinion (no matter how unlikely), I get to lord it over you for being sloppy and inexperienced.

Once you realize that's how so many technical discussions work on the Internet, you can win Nerdfight Bingo more often than not.

I'd like to start by mentioning that I have a lot of respect for your continued efforts to promote Perl and YAPC::NA in particular - even though I'm not planning to attend, the regular articles about sponsorship and the talks/workshops that are planned are a great way to make sure the word gets out. Seems that other Perl gatherings across the world could benefit from following this example.

Anyway, since I don't read reddit, I wasn't sure what you were talking about here - from the headline I guessed it was going to be a tutorial on debugging code ("If Perl tells you something and you can't see how that could possibly be the case, start by assuming that you're wrong and Perl is right"), for example. After reading it, I was somewhat nonplussed - then I read your previous article ("Putting the ideas together") and saw this:

Unless you're a noob Perl developer you cannot possibly refute my claim

which seems to be a textbook example of what you're talking about, surely?

Given that the description of the workshop mentions "Moose, autodie, DBIx::Class, Try::Tiny, Method::Signatures, autobox, NYTProf, Perl::Critic, test driven development and the funky regular expressions changes Perl 5.10 brought in", it really doesn't seem like the target was the "noob Perl developer", more like an intermediate level. I'd be surprised if someone at that level was fazed by a few chained function calls with no parentheses in sight - and if they were, I'd think it'd do them good to see some alternative ways of writing Perl expressions.

I've only taught about a dozen people Perl, which is clearly not enough data to be statistically significant, but out of that group only two former C coders had trouble with the parenthesis-free version. Took them about a week to get to the point where they could parse either version equally quickly, but I think it was worth learning early. Those with no former coding experience seemed to prefer the version without the extraneous () syntax.

Comments don't always devolve, at least here - seems to be the exception rather than the norm. Writing an article claiming that they do seems counterproductive, particularly if you have no examples to give and no suggestions for alternatives. I appreciate everyone has a need to vent frustrations once in a while, but IMHO you'd have better results if you just called out the behaviour you disagree with in a followup comment, rather than declaring "omg everyone on the internet is rude". Imagine how this article would look to a newcomer to the Perl world - particularly when taken out of context.

Personally I like responses based on Vulcan-like analytical skills - if someone comprehensively demolishes one of my statements or assertions, even if they don't hold back any punches, typically I will have learned a few things by the end of the comment... and I'd far rather have that feedback. Better to correct misconceptions as early as possible than to allow someone to build on inaccurate foundations.

Of course, if this article was in response to something completely different, then feel free to point and laugh and move on =)

huh, you sure that's the right link? I see only 22 comments there:

First (top-level) comment: "Don't use a specific version unless it's genuinely version-dependent". Seems like reasonable advice, and the followup from the same poster: "No need to say sorry. We're all learning"

Second comment: "Otherwise looks good to me ;) Good work on strict/warnings!"

Third comment: tongue-in-cheek alternative, "If you haven't noticed, i'm joking. Seriously, good job so far :P", still seems polite enough.

Fourth comment: one-liner version. Neutral enough, surely?

It's only when you get to the fifth comment, which again is a reasonable-enough reminder that $a and $b being globals, that some of the replies start to descend into an argument, and I have no idea whether the assertion that the script was changed after the fact is true.

"everybody just trashed him and went off in every possible stupid direction" seems like unnecessary hyperbole. I'd suggest just calling out the behaviour in the same forum (if you disagree with it), or even avoiding reddit.com entirely - no idea if this is representative of Perl or other language threads there, but doesn't seem like much to get worked up over. Can't see a single example in the last few blogs.perl.org postings where anyone has been less than complimentary towards each other, with the exception perhaps of the posting about using Yahoo Pipes to block certain postings. (not that I know how to view older postings on this site without trailing through search engines or wayback archives...)

Sorry. What I said was, "it seems a bit disingenuous to claim the autoboxed thing looks better than the alternative when you're not being honest about the alternative." What I meant was that given

A: $string->split(" ")->reverse->join(" ")->say;

B: say join(" ", reverse(split(" ", $string)));

B': say join ' ', reverse split ' ', $string;

the abstract (in some sense, at least) contains the assertion that A is nicer than B, but it was pointed out that we don't have to say B, we can say B'. I like B' best of the three (and aren't I entitled to my opinion, as well?). I think it's unfair to claim that A is nicer than B, if you're not going to tell people about B'.

I guess I used the word honest to refer back to the word disingenuous. I wasn't questioning your personal integrity. Yikes!

I'd like to give a talk on "How it feels to be right". I'd like to know what that feels like. I already know what it feels like to be wrong. That's easy. Just post anything you think to your blog and plenty of people will take great pains to make sure you know how wrong you are. :)

Disagreement does not mean you are being ostracised or told what to think.

Chill out.

How can someone be passionate about something and not being passionate in comments?

If I get a comment as a personal attack I either retaliate, or ignore it. The secret is not to take it personally - I am sure that if someone else said the same thing that I said and generated the personal attack from that individual, the same would have happened to him/her.

There are some sensitive people in the community, who takes stuff personal and they get upset and sad, I wouldn't say bad things to them, on the contrary, I'd do my best to protect them from the 'aggressive' opinion imposers.

Regarding oylenshpeegul's remark that mostly Perl noobs prefer the paranthetic approach, should I feel myself hurt because I prefer writing code like that? Well, I don't.

I do Perl for less than 2 years and comparing myself to the majority of the Perl guys in the community, I am a noob. On the other hand, is not quite an advantage for Perl language to know that it takes more than 2 years of daily Perl programming to be comfortable with basic syntactic sugars.

There's a major difference between telling someone they're wrong (or, hopefully, pointing at their mistake) and belittling someone.

Too often we (and I say "we" because I include myself) belittle instead of helping someone learn.

I sympathise with what JT is saying, and hopefully I'll be able to personally make that distinction even more in the future.

Leave a comment

About JT Smith

user-pic My little part in the greater Perl world.