21
\$\begingroup\$

Example situation1

We have a user that finds a question and posts an answer for each and every change they would make - commonly being a single low-hanging fruit point, but not limited to it. It leads to answers that, in all, sum to a couple of sentences of value per answer. The answerer also posted a significant number of answers - enough for a full day's worth of HNQ exposure.

This can lead to a lot of "fluff" / unnecessary information - just repeats of the user ID, edit buttons, comment sections, paragraphs between answers, etc. This makes what could be half a page of answers span a couple of pages.


To me it just feels off. To simplify the following questions I'll refer to this as 'flooding'. And so I have the following questions:

  • Is 'flooding' allowed?

    If it is allowed:

    • What effects do you think allowing 'flooding' would have on answer quality?


    If it's not allowed:

    • At what point does answering become 'flooding'?
    • How should we deal with 'flooding'?
    • Should users post a frequently posted comment? If so, what and where?

1 This question was sparked by a specific example, however the situation isn't limited to it.

\$\endgroup\$
  • 10
    \$\begingroup\$ That specific example is clearly abuse IMO, and will be discussed among the mod team. Thanks for bringing it up. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 4:11
  • 1
    \$\begingroup\$ @Mat'sMug What specifically constitutes abuse in this very example? \$\endgroup\$ – ben rudgers Aug 29 '17 at 17:46
  • 1
    \$\begingroup\$ @benrudgers see my answer below. The first thing that comes to mind is "this user is trying to somehow abuse the system to farm upvotes, badges, and reputation score." \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 17:46
  • \$\begingroup\$ @Mat'sMug I read your answer before commenting. It is generic and does not describe what constitutes abuse in the actual answer. My answer to follow. \$\endgroup\$ – ben rudgers Aug 29 '17 at 17:49
  • \$\begingroup\$ That quoted block at the top was specifically aimed at that specific case. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 17:50
  • \$\begingroup\$ @Mat'sMug 1. See my answer. 2. The evidence of vote farming would be from voting patterns. 3. The goal of the site is to provide useful information, not to stamp out possible moderation problems on a 1% probability. \$\endgroup\$ – ben rudgers Aug 29 '17 at 18:18
  • \$\begingroup\$ Voting patterns tell us about how a user spends their votes, or how/whether a group of users form a voting ring. Voting patterns have nothing to do with this. \$\endgroup\$ – Mathieu Guindon Aug 30 '17 at 14:21
  • \$\begingroup\$ I don't think a frequently posted comment is necessary as this behavior is not that frequent. \$\endgroup\$ – Simon Forsberg Sep 4 '17 at 18:32
  • \$\begingroup\$ @SimonForsberg I agree with this not being a frequent thing. However it may become frequent (Hopefully not). But mostly it was just to plan for the future, so I know what to do / say if I come across it again. :) \$\endgroup\$ – Peilonrayz Sep 4 '17 at 18:46
  • \$\begingroup\$ While behaviour like this isn't frequent, I've seen it done by multiple users. Thanks for bringing it up so we can establish a clear, community-based policy on the matter. \$\endgroup\$ – Mast Sep 10 '17 at 8:59
17
\$\begingroup\$
<moderator-hat>

The first thing that comes to mind is "this user is trying to somehow abuse the system to farm upvotes, badges, and reputation score."

Because yes, people do that. All the time. And when you look like you're abusing the system, chances are people will think you are abusing the system.

And abusing the system leads to all kinds of not-fun things nobody wants to go through.

</moderator-hat>

Is "Flooding" allowed?

I don't think it should. But I'm a moderator - I don't make the rules, I enforce them. Let this community decide.

At what point does answering becomes "flooding"?

When two or more short answers could reasonably be merged into one, single, longer answer. I think this can't be a hard line drawn in the sand; there's always going to be a "gray zone", but when you're looking at 3+ answers that each point out a different thing about the OP's code, and you think to yourself "why aren't these answers just sub-headings of one-and-the-same answer?", then you're probably looking at "flooding".

How should we deal with "flooding"?

If community consensus is that flooding isn't allowed, then standard moderation rules apply: custom-flag one of the answers, user will be contacted privately and, depending on what follows, expect edits and deletions.

Should users post a frequently posted comment? If so what and where?

Maybe link to this very question in a comment under one of the flooding answers?


About long answers...

Long, detailed answers are normal on this site. While the rest of the Stack Exchange network limits post length to ~30K characters, on Code Review the post length limit is doubled, to ~60K characters. There's a reason for this, and it's because long answers are here to stay.

So... where's the line?

There isn't One True Way to write up a peer review, and we don't want one either. But I believe we all agree that posting 3, 4, 5, 6 or more answers on a single question is abusive.

The line, to me, is here:


^ that's the line. It's 3 characters in markdown: --- and you have a line. And that line can - and should be used to split relatively unrelated aspects of an answer.

The point is that, a properly formatted post can be very long, and still be an amazing read. Use markdown formatting help if you're not sure how to format your answers.


But are multiple, short answers ok?

It was suggested in the past that separate answers are absolutely fine if they're mutually exclusive. I like that suggestion very much, but I don't think that's the be-all-end-all solution.

We don't want reviewers to think they have to write long answers to post an answer on CR - obviously, short answers are perfectly fine: they stand on their own and if that's all a reviewer says on a question, it's fine too.

But if you're reviewing code and find that you have multiple points, it doesn't mean you have multiple answers.

  • An
  • Answer
  • Can
  • Very
  • Well
  • Make
  • Multiple
  • Points

  • Even
  • When
  • They're
  • Not

  • All
  • Related

See?


Debunking

(in response to this answer)

  • the majority of people refuse reading long, not very good structured texts.

    Correct. That's why when you post a long answer, you format it properly and structure it appropriately. Or when you come across a poorly structured/formatted long answer, you can always edit it to improve it. The solution is proper formatting, not multiple answers.

  • There may be a problem quickly scan a long one for yet not known things for me whereas in answers addressing only one issue is easier distinguish if I will skip it or read it carefully.

    Again, proper formatting. With proper headings, I can skip all the nitpicking stuff and quickly jump to the meat of a well-structured answer.

  • There are cases when the code in the question is so poor that the only acceptable solution is to completely rewrite it.

    I often do this: top part of my answer reviews OP's code as written, and the bottom part explains a complete rewrite, using a completely different approach.

    If the actual peer review is long enough, it can very well stand on its own - and then the alternate solution could very well stand on its own as well, with proper explanations of why and how that alternate solution is better than the OP's. This is a good, valid reason to split up an answer!

  • every answer has a "share" link - and I prefer to share the explanation of only one particular thing of my interest, not lost in huge bunch of other information.

    That isn't a justification for flooding a post with multiple, short answers: it's a work-around that [poorly] mitigates the lack of hash-links for H1/H2/H3 headings in Stack Exchange posts - and that is entirely an implementation detail of how Markdown is getting rendered on the site, and is entirely subject to change in the future.

    Nothing forbids making a well-backed-up on CR Meta, or even Meta Stack Exchange, to ask that the Markdown renderer starts turning <h1> into <div id="section-title"><h1> so that hash-links can work.

    Posting multiple answers to circumvent that lacking feature, is not a good solution.

  • The reason for a nice formatting answer is to make it attractive and readable

    Bingo. And it's also the weapon of choice to turn long, boring, wall-of-text answers into pure awesomeness.

\$\endgroup\$
  • 3
    \$\begingroup\$ Would be nice if we could have #[Plain Text Title as normal](some-anchor-text) render the H1 (or whatever) as an anchored header with a #name that is linkable. (But that's a feature request for SE.) \$\endgroup\$ – 410_Gone Aug 29 '17 at 15:54
  • 4
    \$\begingroup\$ @EBrown yes, that's exactly what I'm suggesting =) \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 15:54
  • \$\begingroup\$ On second thought - that wouldn't work unless a Regex was used to ensure that some-anchor-text was not a link elsewhere. Maybe #[Plain Text Title as Normal](#some-anchor-text) where the # in the parenthesis is the magic test. Might work more effectively. Probably wasn't done yet because Documentation was supposed to solve that. \$\endgroup\$ – 410_Gone Aug 29 '17 at 15:59
  • \$\begingroup\$ @EBrown IDK, but GitHub seems to have no problem with Markdown generating hash-links for ## Headings. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 16:08
  • \$\begingroup\$ That depends on how they generate it I guess - I would see #[...](...) being a problem as that may also be indicating a regular hyperlink. Either way, there's a feature-request on big-Meta for exactly this that's not status-tagged. Wonder if it should be refreshed with the new sunset of Documentation? \$\endgroup\$ – 410_Gone Aug 29 '17 at 16:13
  • \$\begingroup\$ That's 7 years and 7 months old. I think it needs a refresher. @EBrown I just put up a +100 bounty on it. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 16:26
  • \$\begingroup\$ Apparently Jon Ericson would like to see this happen as well. \$\endgroup\$ – 410_Gone Aug 29 '17 at 17:03
  • \$\begingroup\$ @EBrown FWIW that's no moderator - he's a Community Manager =) \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 17:03
  • \$\begingroup\$ That may be true, but based on the history of SE, I really don't expect this to ever be implemented. I think we can hope and dream all we want, but let's face it: this isn't important enough to warrant building their own spec that might change. We won't see it until it's standardized because SE doesn't want to have to make a change of it later. \$\endgroup\$ – 410_Gone Aug 29 '17 at 17:21
  • 3
    \$\begingroup\$ @EBrown regardless, my point holds: don't split up answers just because SE didn't implement anchor headings as of yet. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 17:22
  • \$\begingroup\$ Totally agree - just don't want anyone getting their hopes up that this will happen anytime soon. \$\endgroup\$ – 410_Gone Aug 29 '17 at 17:55
  • \$\begingroup\$ Would you be willing to answer a couple of my questions above - if you think they are relevant? I asked them so non-diamond 'moderators' can help ease moderation. I for example don't know what avenue I should use to help moderation if I come across something like this again - chat; flags on question, or answers; meta; or comments on answer, or answers. \$\endgroup\$ – Peilonrayz Aug 29 '17 at 17:59
  • \$\begingroup\$ @Peilonrayz I don't think "flooding" should be allowed; the line is drawn when multiple answers can be combined into one given proper formatting, and IMO if community consensus is that "flooding" shouldn't be allowed, then the standard moderation rules apply, from mod-message warning to account suspension - so yeah, custom-flag is appropriate. I'm tempted to ask a similar question on MSE to see what the point of view is of the SE community as a whole. But I'm just a moderator, I don't get to decide what the rules are, I'm just here to enforce them. I think non-diamond users should decide that. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 18:07
  • 1
    \$\begingroup\$ @benrudgers if a non-native English user can write up 5 answers on one question, then they can write up 5 line-separated points in one answer, and the system will generate an auto-flag after 20 comments. With 5 answers the system will generate 5 auto-flags after 100 comments. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 18:26
  • 5
    \$\begingroup\$ @benrudgers if posting 3+ answers on one question isn't obnoxious behavior that's obviously opening the door to vote-farming to you, then good for you and you can run for moderator when it becomes community consensus and I step down for not wanting to put up with this crap. FWIW it's completely unfair to the users that do make the effort of properly formatting their own legit, multi-point answers. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 18:38
8
\$\begingroup\$

Is 'flooding' allowed?

I vote for NO, let's not allow this.

At what point does answering become 'flooding'?

When two answers (of the same user) don't conflict. That is, two answers conflict when it would be unreasonable to upvote both at the same time. Only then, it makes sense to split. Otherwise, it's flooding.

How should we deal with 'flooding'?

Flag for moderator attention, with a comment "flooding", and mods can manually merge the answers.

Debunking MarianD's answer

TL;DR

If the answers don't contradict each other, then it would be easier to read them in one post, with good headings, and hopefully ordered by some logic. It's harder to read when fragmented, displayed in random order, and interleaved with answers by other users.


From my personal experience the majority of people refuse reading long, not very good structured texts. This is the first reason for splitting long answer into a few shorter.

I agree that the majority of people do not like reading long texts. The users of this site are not like that, they are not representative of the general population.

The second motivation for shorter answers is to provide information not only to OP but also to other people reading individual answers. There may be a problem quickly scan a long one for yet not known things for me whereas in answers addressing only one issue is easier distinguish if I will skip it or read it carefully.

I think it's easier to scan texts author by author. Every author has a different mindset and writing style. When there are multiple answers by multiple users, the switch between styles can be a real mental burden.

Another important point is the ordering. For example, I often address very different facets of the posted code, such as algorithm, design, usability, best practices. The order in which I write these sections is never random. It's deliberate. Sometimes I order things from most important to less important. Other times, for beginners, I go from easy to complex. Sometimes I also cross-reference by section names. The ordering and structure is very important for me. And if I split my answers, I would lose control over that.

The fourth reason (and there exist even more ones) is than every answer has a "share" link - and I prefer to share the explanation of only one particular thing of my interest, not lost in huge bunch of other information.

That may be convenient for you, but not for the vast majority of users of this site. And I think that they should be your main target audience.

The reason for a nice formatting answer is to make it attractive and readable - like for the reviewed code itself.

As I explained earlier, a split answer is not more attractive and not more readable. I think it's the opposite. And as far as formatting nicely, it works precisely the same way, whether you split answers or not.

But the main, the most important thing is that the goal of answers should be to help other, less experienced people. Not to express myself, not to save space, not to show more experienced people as I'm good, not to correct every one thing. And it is not possible without adapting to OP (estimated) level.

And if that is your true goal, I suggest to follow my counter-points and recommendations above.

\$\endgroup\$
7
\$\begingroup\$

There were originally five answers from @MarianD:

  1. PEP 8 formatting
  2. Replacing while i < len(text) loop with for c in text
  3. Use .format() instead of calling print() with multiple arguments
  4. Reusing the j = ord(text[i]) intermediate result
  5. Seeking clarification on the usage of text_data(), and suggesting that there might be a solution involving number = int(text)

I've taken some actions on them:

  • Answers 2, 3, and 4 were all short remarks about improving the loop, and would be better presented as one coherent answer. I've incorporated all of the advice into answer 2, and deleted answers 3 and 4.

  • Answer 5 was converted to Community Wiki status with this comment from me:

    This "answer" is, in part, asking for clarification, and as such, is a comment that is too long to fit in a standard comment. (By the way, that isn't how the code actually behaves.) – 200_success♦ 2017-08-29 18:54:39Z

    @MarianD subsequently deleted the answer voluntarily.

That leaves us with two answers, one about PEP 8 formatting, and another one about how to express the loop better. I've left them as separate posts, since the advice is largely independent of each other.

\$\endgroup\$
6
\$\begingroup\$

I think we may limit the amount of answers a user can give by the content of their answers; that is, posting a new answer for what could be a subsection of one long answer is not allowed, but answering once and adding a follow-up answer with more in-depth information may be allowed, if there is a clear distinction in content between the two.

Allowing 'flooding' would make it harder to review the quality of answers, because there's no way to select all answers as the 'best answer' at once.

\$\endgroup\$
  • 3
    \$\begingroup\$ Agreed. As a side note, an example of what I consider a "good second answer" is found here. \$\endgroup\$ – 409_Conflict Aug 29 '17 at 12:01
  • \$\begingroup\$ Great example, that's exactly what I mean. \$\endgroup\$ – Daniel Aug 29 '17 at 14:15
4
\$\begingroup\$

Let me first quote some answers to a similiar question

200_sucess: Should we merge multiple answers from the same person?

I don't think that length should be a criterion for splitting answers. The considerations should be

  • Independence: Can this answer stand on its own? Is it a suggestion that other users might upvote or downvote depending on their opinion?

  • Coherence: Would grouping multiple points together convey your thoughts more effectively?

Mat's Mug: Should we merge multiple answers from the same person?

I agree with @SimonAndréForsberg, this isn't about the numbers, it's about the quality of what we're posting. Quality is king. If CR starts having tons of low-quality answers, the answer ratio could be 10 answers per questions, the site wouldn't be in a better shape.

Simon Forsberg: Should we merge multiple answers from the same person?

I do think however that we should avoid "Facebook scroller long"-answers. Answers should be easy to read. Of course there are some answers who are both long and easy to read, and that's fine. There are however, answers which brings up many different aspects from the original question (coding conventions, variable names, method length, code duplication, use of exceptions, use of public APIs...), and many of those is more useful to split into two separate answers.


In my opinion both is fine. Having one long answer, like I prefer to write, or having multiple short answers won't matter as long as the quality is given and they can stand on their own.

But if I see more than two answers from the same user I would most likely only place an upvote on one of them although all 5 (or 6...) answers are good/valid but short ones.

We shouldn't limit the number of answers a single user can post for a single question but we should place a comment stating that long answers are fine as well, maybe back-linking to this question. If we do this consequently we may increase the quality of the answers and avoid rep-whoring (which isn't a problem on CR right now).

For this specific question I would have prefered one answer where the single points would be formatted using headlines or horizontal rules.

\$\endgroup\$
-9
\$\begingroup\$

I am going to focus on the specific example.

  • I do not see any evidence of abuse.

  • I do not see any answers that are low quality, not an answer, etc. that warrant a downvote.

  • I do not see anything in the specific example that warrants moderator attention.

Could the system be abused using the pattern of multiple short answers by a single user? Yeah, of course...and the system can be abused without using the pattern. The key is not a specific pattern but the inclination of an individual to act in bad faith. I think the assumption of bad faith here borders on injustice. There simply is no evidence of any actual harm to the site or the community.

The facts

Because each individual answer is constructive and stands on its own.

Nobody else is answering the question. So what if it is not how I would answer if I wrote an answer I am not going to write? The answers are there for the person asking and mostly for people stumbling upon them via search. Those arriving at the answer via search are unlikely to be less informed due to the format.

My take

Personally, there are a number of requests for review where I have thought I could provide a good review, but I don't seem willing to muster up a couple of hours writing a comprehensive, sourced, and entertaining review. So though I look at the answers and still think, that's not how I would do it; I see it as an approach that might allow me to provide sound review comments in circumstances where I'm not energized enough to write at length.

Sites evolve. They can evolve toward diversity or in some other direction. If there is a quality problem with the answers, the first order tool is down voting. I am not saying that the pattern does not merit monitoring. I am saying the evidence provided does not justify moderator intervention. It is ok to look and see where it goes. It is ok to be uncertain.

Different is not bad.

\$\endgroup\$
  • 2
    \$\begingroup\$ We're Stack Exchange, a Q&A network. IMO "Flooding" creates the false impression that it's ok to turn Code Review into a discussion forum. I believe that is how the behavior is harmful, intentional abuse or not. CR already deviates quite a bit from SE's Q&A model; what we've been doing for years has worked very well so far, and got our eternal-beta site graduated after months and months and months of efforts. I feel changing the proven Q&A model is dangerous, and threatening. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 18:18
  • 1
    \$\begingroup\$ @Mat'sMug There is no evidence that that is the intent of the answers. More importantly, there is no evidence that that is the effect of the answers. en.wikipedia.org/wiki/Jerry_Pournelle#Iron_Law_of_Bureaucracy \$\endgroup\$ – ben rudgers Aug 29 '17 at 18:20
  • \$\begingroup\$ Sure, except the day it's "proven" that the behavior harms the site, it's too late, we're already doomed. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 18:21
  • 2
    \$\begingroup\$ @Mat'sMug, No the day it harms the site is the day it is a problem that needs to be addressed using the tools that exist to address it. \$\endgroup\$ – ben rudgers Aug 29 '17 at 18:27
  • 1
    \$\begingroup\$ @Mat'sMug Back to my first question. What exactly is the harm here? \$\endgroup\$ – ben rudgers Aug 29 '17 at 18:35
  • 1
    \$\begingroup\$ The harm for me is reduced readability. I find it easier to read one well-structured answer of a user, rather than his thoughts randomly scattered. Not organizing and ordering the review comments looks like a lack of care about readers. To me, the split-answer format is inferior, and not recommended, for the sake of the readers. \$\endgroup\$ – Stop ongoing harm to Monica Aug 29 '17 at 18:43
  • 5
    \$\begingroup\$ @janos the harm is also the unfairness of one user obnoxiously posting 5 answers and collecting +50 for one upvote on each, whereas the honest user that makes the effort of properly formatting their multi-point answers and get +10 for one upvote. \$\endgroup\$ – Mathieu Guindon Aug 29 '17 at 18:46
  • 2
    \$\begingroup\$ @Mat'sMug People post answers to help and to get internet points. Getting points is part of what makes the site fun. It is part of what makes the site work. How many points one person gets does not effect how many points another person gets. The purpose of having moderators is not to prevent people from getting points. Pretty much any reasonable answer is probably worth fifty points. Many get zero. It's just internet points. \$\endgroup\$ – ben rudgers Aug 29 '17 at 18:52
  • 1
    \$\begingroup\$ @Vogel612 I lack the ability to see deleted answers. If the user deleted the answers on their own, then the system works. If a moderator deleted the answers, then that would be evidence to support the opinion that the example is an example of an actual problem. \$\endgroup\$ – ben rudgers Aug 29 '17 at 19:10
  • 1
    \$\begingroup\$ A moderator deleted two answers and merged them into another answer, using --- to separate the blocks of separate answers. \$\endgroup\$ – Vogel612 Aug 29 '17 at 19:11
  • 2
    \$\begingroup\$ @Vogel612 Oh. Yes, I saw it before. I think the edit was just busy work. I don't think it solved any actual problem. I don't think it improves the internet. I don't think it makes CodeReview better in the short term. I think it reduces the potential for improvement via evolution. I think it makes the site more like one a bulletin board where a lot of energy is spent toward creating insiders and outsiders...something Spolsky and Atwood were trying to avoid by the design of StackExchange. \$\endgroup\$ – ben rudgers Aug 29 '17 at 19:18
  • 2
    \$\begingroup\$ @Vogel612 I think the rapidity with which the edits were made illustrates the degree to which different is equated with wrong on the site. \$\endgroup\$ – ben rudgers Aug 29 '17 at 19:20
  • 2
    \$\begingroup\$ The edits were made after 16 hours which is not what I'd call "rapid" and also after the owner of the answers had responded (and been responded to again) as well as after the establishment of a preliminary "Stimmungsbild" (literally "mood picture") \$\endgroup\$ – Vogel612 Aug 29 '17 at 19:21
  • 1
    \$\begingroup\$ @Vogel612 The edits did not improve the site. They are moderation for the sake of moderation. \$\endgroup\$ – ben rudgers Aug 29 '17 at 19:22
  • 1
    \$\begingroup\$ Let us continue this discussion in chat. \$\endgroup\$ – Vogel612 Aug 29 '17 at 19:23

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .