News for hackers. Stuff that matters.
Re:Linus Torvalds: 'I'll never be cuddly but I can be more p... by ravenstine on Thursday September 27, 2018 @11:07AM (#18085208)
Not always. Some of the best feedback I've ever gotten was when I was told that what I wrote was "crap". What's not constructive about that feedback?

When people use the word "constructive", what they actually mean is "nice" and "won't hurt my ego."

Re:Linus Torvalds: 'I'll never be cuddly but I can be more p... by sonnyblarney on Thursday September 27, 2018 @11:15AM (#18085276)
"Not always. Some of the best feedback I've ever gotten was when I was told that what I wrote was "crap". What's not constructive about that feedback?"

reply "

No.

Saying something is 'crap' may be true, but it's definitely not constructive. 'Constructive' feedback helps you understand why it's wrong. So, 'constructive' would be: "hey that code was very problematic, and here are the reasons why: etc. etc. etc.."

"When people use the word "constructive", what they actually mean is "nice" and "won't hurt my ego.""

No. Saying something is 'crap' is generally not useful and counterproductive. It's also subjective. You can say 'It doesn't work' or 'it doesn't meet requirements' and that's more objective.

Re:Linus Torvalds: 'I'll never be cuddly but I can be more p... by ravenstine on Thursday September 27, 2018 @11:40AM (#18085532)
It was constructive to me, anyhow. And certainly not counterproductive.

Sometimes people need to be reminded just how badly they screwed up, and to purposely avoid offending people is pretending that some work isn't crap. Of course words like crap are subjective; to the person reviewing my work, my code was crap, and that actually means something to me if they think that it's crap.

Not constructive? Nonsense. Sometimes you need language like "crap" to punctuate the issue. It got me to take the issue more seriously. If I tried to ship some really awful code, I don't need someone to tell me "Gee, Ravenstine, let's talk about this, m'kay? So this part of your code is... problematic." People the word "problematic" gets thrown around all the time, even when referring to very minor bugs in public projects. But words like "crap" actually mean something because they're reserved for times when you really need to know what you did was wrong.

I'm irrational, as are all human beings. Not everything I do can be treated as an engineering puzzle with a fixed set of inputs that yield a deterministic return value. You can tell a human being that something "doesn't meet the requirements" like they're some kind of robot, but depending on who you're talking to, you may get the result you want by not talking to them like they're robots.

This is definitely not to say that people should be uncivil, I find that sometimes a kick in the rear is very helpful.

Re:Linus Torvalds: 'I'll never be cuddly but I can be more p... by hugh-avherald on Thursday September 27, 2018 @12:50PM (#18086294)
I abhor this kind of advice. "Hey this code was very problematic ..." is incredibly grating and I would think a lot less of a supervisor that chose to give feedback with such a veil.

Not sure about "This code is crap", but claiming it is less constructive than your example is a very superficial reading. A supervisor who told me "Your code is crap" would seem a lot more inviting than one who put the condescending remark you offered. It's a lot more constructive because it reminds me (a) that my supervisor expects more and (b) my supervisor expects more from me (i.e. both I know what to do to fix it and my supervisor thinks this is a lapse and I'm competent).

Re:Linus Torvalds: 'I'll never be cuddly but I can be more p... by sonnyblarney on Thursday September 27, 2018 @04:59PM (#18088615)
Totally disagree.

Saying something is 'problematic' is not remotely condescending. It's just a reasonably objective way of saying there are problems.

Saying something is 'crap' is neither more authentic nor more informative, it's absolutely not constructive and it certainly isn't polite.

I think you may have difficulty interpreting communication when you take things literally the opposite of what they are i.e. 'problematic' as some kind of 'crypto-speak' when it's not, and 'crap' - which is actually and objectively condescending and objectively not constructive.

If a piece of code needs work in a more general way, your manager's best option is to communicate that candidly in an impersonal and clear manner. Maybe with a tiny bit of sugar coating depending on the situation.

So 'the code needs a lot of work, specifically in these areas: a, b, c '. Or 'the code needs a lot of work and I see some ugly patters in there, maybe due to some habits you have developed elsewhere, let's work on these things specifically: a, b, c etc..' is appropriate.

The only time you can say code is 'crap' is when you have a very good relationship with someone, and a fair degree of mutual respect, and you also know that they'll never interpret it too negatively. As in 'heyzeus Joe that last checkin was abysmal, see: a, b and c ... and no more watching the pro-bowl while coding for you my man!' ... is what I could get away with someone I've known for quite a while.

You could use 'crap' in a public forum directed maybe at a group or company, but never publicly towards any individual.

If you're in charge of a major open source project, you can tell your staff that 'Joe from Montana's code is crap and we basically should ignore is pull requests' ... but you wouldn't say that to Joe himself.