# When it is and is not acceptable to edit someone else's post

TL;DR: In what circumstances is it ok (by CGCC and politeness standards) to edit directly a post (be it challenge, answer, sandbox question, etc), assuming the edit is done in good faith?

I know people can rollback edits and further edit a post, but in the meantime that goes from the unwanted edit and the correction, many things can happen. What is more, the OP doesn't get notified when the post is edited, so it could take a long time before the OP realizes the post was badly edited.

## Context

I was under both ends of the "edit without consulting the OP" situation (bullet points below) and wanted to clarify it for me and for other users

• [I edited without consulting OP] Recently I wrote a challenge and, later on, I added a couple of test cases. A particular user had a Python answer (a language I know how to write in) and so I took the user's TIO link, added the test cases and edited the answer to include the new link. I thought I was not doing any harm.

Of course I managed to edit at the same time as the user and so, they edited to golf the question and I submitted my edit which overwrote the user's golf. The user talked to me and asked I leave a TIO link next time, without directly editing the question. In hindsight I think the user was completely right and it would've been even easier for me to just drop the TIO link in the comments.

• [my posts were edited without my consent] I wrote a couple of sandboxed challenges and I didn't include any test cases, as I wanted a bit of preliminary feedback first; a user edited both my challenges and for each, did a combination of

1. create reference programs and include TIO links as if they were mine;
2. create a test case section with text written in the first person, so effectively impersonating me;
3. addressing some of the feedback left in the comments (which was fair feedback) but that was more than a trivial change;

I am not sure I have the "authority" to make this statement, but I'd suggest people mention one situation per answer and the community votes to agree/disagree with the answer.

The answer should clearly state if the situation mentioned is a "not ok to edit" situation or a "it is ok to edit" situation, along with a short description, in the header.

Rules here take effect if they have at least five upvotes and have at least twice as many upvotes as downvotes.

• I think each answer's header should include the context where it is (not) ok to edit, e.g. "It is ok to edit (when fixing formatting issues)", etc. – Bubbler Apr 1 at 23:18
• @Bubbler nice suggestion – RGS Apr 1 at 23:31
• Since this question is meant as much a question as a place of community consensus, I would change the title to something like "When it is and is not acceptable to ...". – Jonathan Frech Apr 2 at 0:43
• I edited in the test cases & reference implementation because you weren't clear that you're asking for feedback. It was my fault for sockpuppeting you though. – user92069 Apr 3 at 7:55
• @petStorm don't worry, I assumed you did those edits in good faith! Like I said in this post, I have also incurred in the mistake of making edits with which the OP didn't agree/was happy about – RGS Apr 3 at 8:01
• What does OP stand for? – user92069 Apr 15 at 1:47
• @petStorm The original poster (normally the question asker here). – the default. Apr 15 at 2:27
• @petStorm OP means original poster, like my pronoun said. For this meta, the OP is the owner of the post we are considering editing :) – RGS Apr 15 at 7:30

# It is not ok to edit to golf an answer

if you are going to golf someone else's answer (this doesn't happen much, it is usual to see people leave a TIO link with the golfed version or a hint on what to do).

• Especially from newer users or anonymous users I often see golfing improvements as Suggested Edits. – Jonathan Frech Apr 1 at 17:58
• Related concensus – user92069 Apr 7 at 11:00

## It is OK to rectify a question's tags.

i.e. add relevant tags and remove irrelevant tags.

# It is ok to edit to fix code formatting

If you are fixing formatting issues, for example multi-line code that isn't properly formatted:

s = "hello world..?"


print(s)

to

s = "hello world..?"
print(s)


or if you are fixing mathematical formulas/variable references that lacked formatting and thus blend in too much with the text, e.g.

• you will receive three integers a, b and C

to

• you will receive three integers a, b and c
• I do agree with this king of formatting. One could possibly include adding Markdown headers -- especially in answers. – Jonathan Frech Apr 2 at 0:38
• I'll hedge a bit on this one. It sounds reasonable, but, as in the other cases like this, it's probably better just to let the OP know about the problem. (And you definitely don't want to get into a race condition, with you and the OP editing the question at the same time.) Does this actually come up much? – Mitchell Spector Apr 2 at 5:53
• @MitchellSpector it may be my "OCD" but I find texts lacking formatting fairly often, but mostly things like in the second situation above, variables/formulas that aren't formatted at all and thus blend in too much with the text. – RGS Apr 7 at 6:31
• @RGS I do tend to agree with you. But even for examples like the one you gave, you need to be sure that the OP didn't have an actual reason for treating C differently from a and b. – Mitchell Spector Apr 8 at 5:15

# It is NOT ok to remove rules from a challenge, even if they are listed as things to avoid when writing challenges

• That's exactly what I've just been doing. +1 – user92069 Apr 11 at 8:06

# It is ok to edit to fix typos

If you are fixing minor typos or any other minor, self-contained, English-related issue that you won't change the meaning of the OP's sentences.

Consider pinging the OP if you feel tempted to change more than a couple of words, as matters of style, preferred spelling, etc are all subjective. (c.f. Mitchell Spector's comments below)

• I would add the requirement for the edit to be "minor" in some sense. As an example, I rejected this edit and still think it was too drastic, but it could be argued to fall under the current version of the above. – Jonathan Frech Apr 2 at 0:56
• I don't think "fixing typos or any other English-related issue" is as innocuous as it sounds. Not everybody agrees on grammar, style, or preferred spelling choices. I've had a couple of questions (on other StackExchange sites, not CGCC) edited by others for minor corrections, but I didn't agree with the changes they made. The OP doesn't even get a notification when an edit is made, so you have to happen to notice a change to know about it. I think the right way to handle this sort of thing is to drop a note to the OP, not to make the change yourself (unless they say it's OK, of course). – Mitchell Spector Apr 2 at 5:46
• @MitchellSpector I agree with your point, however there are some things that are not open for discussion. Writing apel is not a spelling choice, it is a mistake. It is not "style" to write "I thinks" or "did not knew", it is a grammatical mistake. I am referring to those sort of things. – RGS Apr 6 at 22:14
• No argument there -- I agree with you. I just think that in practice the sorts of issues I mentioned are going to arise if we specifically encourage editing other people's posts. – Mitchell Spector Apr 6 at 23:57

Adding an online interpreter link allows other people to test their answers, without having to go to the online interpreter themselves. So if you find it hard to test their answers, feel free to edit in an online interpreter link to make it easier for others!

• Hey. You cannot just leech off my vote by turning this post 180° around. I strongly feel that you should delete this answer and re-post it as to accurately measure site opinion. – Jonathan Frech Apr 15 at 1:49
• @mypronounismonicareinstate It harms the OP if they do not agree with the online interpreter. You can always leave a comment, but please do not encourage driving off users whose application preferences do not align with yours. – Jonathan Frech Apr 15 at 1:54
• @JonathanFrech Have you just assumed I do not normally care about OP's choice, just like I warned against in my comment? If so, I can't do much. While it was fairly weird to edit this proposal into its opposite, it got most of its votes after that. – the default. Apr 15 at 2:10
• @mypronounismonicareinstate I probably misunderstood your first comment; sorry for that. I just think it is important to view online interpreter as an additional feature, which can be chosen by the OP. – Jonathan Frech Apr 15 at 22:33

We have a consensus on this topic to not add leaderboards to challenges. Although that concensus is about a bot, humans can nevertheless still employ the described behavior.

To have bots that autonomously make edits is annoying, intrusive, and error-prone.

Mobile users have 3 huge codeblocks to scroll through before they can see the answers, especially for challenges with only a few answers. It's not really necessary, plus it makes the question harder to navigate through.

Quoting JoKing:

It's not really necessary, plus it makes looking at questions on phones more annoying

• I don't understand the point of the downvote - care to explain? – user92069 Apr 7 at 10:42
• To the downvoters: I also wish this were not the case. However, to downvote is merely to shoot the messenger. petStorm is informing us of a consensus we've already reached. It's good and important to know of it and it's entirely relevant to the post. – AviFS Apr 11 at 15:41
• If you have strong feelings, I'd recommend discussing it in the linked thread where the consensus was reached, and attempting to change it there. This is merely to let us know. To have this one downvoted to oblivion ('un-consensused') and the other consensus remain would be to create a contradiction in our policy. – AviFS Apr 11 at 15:42
• That's consensus against a bot doing this on every question, not consensus against humans adding leaderboards when they think it is useful – pppery Apr 11 at 20:01
• @pppery So how do you think other people other than OP adding leaderboards will contribute positively to a challenge? A KoTH leaderboard is usually edited in by OP, so let's ignore that. – user92069 Apr 12 at 1:47
• To have bots that autonomously make edits is annoying, intrusive, and error-prone. If someone wants to have a Stack Snippet, he/she should edit it in manually. --- I don't see how that's any less relevant for humans... – AviFS Apr 12 at 1:57

# It is not OK to edit someone's post if they disagree with the edit.

This is a network-wide rule. If a post-owner disagrees with your edit, and the edit is important, get a moderator involved.

# It's not OK to add an explanation of the code

That should be left to the author. Explaining the code is a sensitive area. You can't be sure that your comments exactly reflect the author's intent. There may be subtleties you are missing when interpreting the code written by another.

• I don't get it. If you add an explanation you are helping others to understand (and therefore verify) the program. Quoting @mypronounismonicareinstate: Surely it doesn't harm anybody, and the "It is author's choice" point relies on the assumption that we do not normally care about the author's choice. – user92069 Apr 11 at 8:04
• @petStorm My point is that explaining the code is a "sensitive" area. If you are not the author you can't be sure that the comments are exactly what the author intented. There may be subtleties you are missing when interpreting the code wrote by another. I'll add that to my answer – Luis Mendo Apr 11 at 11:57
• @petStorm You're the only one who I know has some chance of agreeing with me! I just made my rebelling answer specific to SBCS languages like 05AB1E here. Please do give it a look and let me know your thoughts or edit it for a more compelling case1 – AviFS Apr 12 at 3:05
• @LuisMendo I disagree. In some cases there might be some weird trick being exploited that only the author knows, but in a perfectly normal "take some numbers and add them" type question it's usually a pretty straightforward process to explain how it works. – Redwolf Programs Apr 12 at 15:29
• I wholeheartedly agree with this rule. After all, PPCG is not a typical Q-and-A site where the goal is to come to the best possible explaining answer as a community, but a site in which individual users post their challenge answer, adding flavor on their own merits. – Jonathan Frech Apr 15 at 1:41

## It is okay if you are adding syntax highlighting to a post.

In this post, the most upvoted answer (i.e. the consensus) says something along the lines of syntax highlighting making posts a lot more easier to read.

• I noticed you write "concensus" a lot... The correct spelling is "consensus" – RGS Apr 7 at 17:29
• I disagree. Not everyone likes colored listings; it should be decidable by the OP how their submission looks. – Jonathan Frech Apr 15 at 1:46

## It's not okay to modify code.

This is based on a merging of this answer and this answer.

In general, never modify the code part of the answer, even if it employs one of the Standard Loopholes.

Given an invalid answer, commenting and flagging are the appropriate actions to take.

• One may add that, given an invalid answer, commenting and flagging are the appropriate actions to take. – Jonathan Frech Apr 15 at 1:44
• I can't imagine a case where editing the code in a question would be good, so perhaps this can be further generalized into "It's not okay to modify code"? – the default. Apr 17 at 1:17
• I can imagine one. Note that the OP confirmed that the original behavior of the scoring program was incorrect in a since-deleted comment – pppery Apr 19 at 15:56
• I consider the first case unacceptable, and can't find the edit in the second link. – the default. Apr 24 at 1:16

# It is OK to remove "non-competing" from answers in languages that post-date the challenge

• Note: This is separate from my "misc header correction" answer because "non-competing" is sometimes found in the body, not the header. – pppery Apr 6 at 22:19
• I agree with this one, but only if the edit itself isn't necro-bumping the challenge because of it. It was common practice to add non-competing for newer languages competing in older challenges before, so if we'd go through all answers one-by-one to remove non-competing it clutters the recently changed challenges way too much. But, I do agree that if someone posts a challenge now with non-competing because they weren't aware of the new meta rules as returning user, then it's fine to remove it. Likewise for answers that were recently edited, and thus already bumped the challenge up anyway. – Kevin Cruijssen Apr 8 at 6:40

# It's OK to revert edits made in violation of the rules described here.

Fairly obvious, but needs stating.

• can we simply assume good faith and avoid infinite loops – the default. Apr 9 at 3:58
• I don't see how this can cause an infinite loop; any edit made under this rule is by definition not in violation of the rules described here, so can't be reverted per this rule (unless there is a contradiction, which is its own independent problem) – pppery Apr 9 at 4:00

Examples:

This is not intended to be an exhaustive list.

• I disagree here, again, especially because the OP is not notified. Not all languages encode the same way with UTF-8 bytes. For some reason, I’ve not had a problem with 05AB1E, but 2/4 of my APL answers have had comments trying to correct my byte count, unaware of the SBCS! – AviFS Apr 11 at 14:54
• It might be good to explain what is meant by correct different people have different prefered ways of formatting headers and what some consider a "correction" might be considered enforcing a particular style by others. – Wheat Wizard Apr 13 at 18:31
• I don't think any of the examples I've gave are matters of style. – pppery Apr 13 at 20:18

## It's not okay to edit someone else's off topic post.

In fact we've already reached a consensus on this. If you edit an off-topic post to make it well-received, OP will think that it is okay to post these kinds of questions on this site. Instead, people should notify the OP about why the question is not well recieved. If really neccecary, another user should take control over the post and post the on-topic modification on a separate post.

## It's not okay to remove outdated content from a post

Just comment and let OP handle it. You should never do it yourself.

• I would say these changes will be, in general, substantial. I would comment and let the OP handle the consistency issue – RGS Apr 8 at 6:05
• What exactly could outdated content be? Removing a [koth] leaderboard because more submissions happened? – the default. Apr 11 at 13:47

## It is not ok to edit if you are removing background information

It's not okay to remove the question's background information, even if the background informattion is not relevant to the main challenge. If OP thinks the background information makes the challenge clear, allow OP to add that.

• What if the background information is completely and totally unrelated, or is just a shot at moderation attempts ("My question was closed so I'll post it again", etc)? – S.S. Anne Apr 13 at 18:55
• @S.S.Anne Post that yourself and see how it goes! – user92069 Apr 14 at 2:18

# It is not ok to edit if you are adding substantial text

If you are going to add whole sentences, paragraphs or sections, it is not ok to do it without the OP being aware of such a change.

Especially if you have to impersonate the OP:

e.g. if you are adding a sentence that clarifies the meaning of, say, a mathematical function, that would be less inappropriate than adding whatever sentence in the first person.

• This is the only upvoted one I disagree with. It's been common to make big edits to challenges for clarity or to add test cases, and I think is usually good and makes OP happy. – xnor Apr 2 at 7:28
• @xnor I would definitely prefer someone commenting rather than directly editing my post\ – Redwolf Programs Apr 5 at 15:10
• @RedwolfPrograms For major modifications, a comment is not always enough. It is fairly common (especially, but not only, when the OP is a new user) to see an established user rewrite a question, making it match the community's standard, and add a comment along the lines of "I improved your question but please revert if you disagree". Such edits are usually welcomed. – Robin Ryder Apr 9 at 22:10
• @RobinRyder my opinion is that, in that case, the well-established user should comment with appropriate links and or tips. Also, this "rule" does not mean major edits are no longer appropriate or welcome. It just means I'd suggest the editing person check-in with the OP to make sure the changes are noticed and agreed upon. – RGS Apr 9 at 23:06

# It is ok to edit to add MathJax

If you are fixing mathematical formulas/variable references that could be improved by changing to MathJax:

E.g. from

• The kinetic energy E is 1/2*mv^2

to

• The kinetic energy is $$\E = \frac12 mv^2\$$
• Particularly regarding the "improvement" of changing to MathJax I disagree. Some people may like the code-formatted look and using MathJax brings with it another dependency of the post in question; it can be turned on and off over the years. Especially regarding older challenges, I think it is not acceptable to convert them to MathJax. – Jonathan Frech Apr 1 at 17:55
• @JonathanFrech I disagree with your Point of View but I appreciate it, thanks. Since it appears that these are two separate issues, I edited out the "it is ok to edit to fix code formatting" and moved it into another answer. Please downvote it as well if you don't agree, or upvote that one if you do agree. Thanks! – RGS Apr 1 at 23:36
• I agree with @JonathanFrech on this. I like MathJax, but it's more useful to add a comment showing how it's done, so that the OP can learn how to do it for next time (or choose not to do it, if they prefer). I've occasionally had people add comments showing me improvements in my MathJax, and I've appreciated that. – Mitchell Spector Apr 2 at 5:50
• I don't agree. Some people might not have the right support to view MathJax, therefore it would make them unable to understand the question. – user92069 Apr 3 at 7:46
• I don't think this proposal is being downvoted for the right reasons. If we're afraid that MathJax may not work for some people or is turned off in the future, we should stop using it right now. Improving a question by adding MathJax is not that different from improving code formatting IMO. (And it's better to explain the edit in a comment in both cases so that the OP can learn how to do it.) – Arnauld Apr 6 at 13:36
• MathJax takes a long time to load for me. The code-blocks take considerably less time. In any case, this would make little to no improvement. – S.S. Anne Apr 7 at 14:58
• @S.S.Anne Then that is an argument against using Math-Jax period and should be taken up elsewhere. – Wheat Wizard Apr 13 at 18:33
• @Arnauld What if the author decides not to use MathJax (because of fear it won't be supported, or because it takes too long to load), and someone else edits MathJax in because they trust it will always be supported and doesn't care about load time? I think that's unacceptable. The author's criterion should have all the priority – Luis Mendo Sep 2 at 23:25
• My previous comment also applies to @AdHocGarfHunter's reasoning. The author should be the only one who gets to weigh MathJax's pros and cons and to decide whether to use it in their post or not – Luis Mendo Sep 2 at 23:28

# It is OK to Add an Explanation

Above there's already a contradicting answer. Originally, I was posting this as a comment. Decided to submit my own answer and let the community decide:

While there are subtleties that may be missed, I feel strongly that some explanation is better than no explanation. I'd hope we'd all prefer to live in a CGCC populated with well-explained answers and minimal code-only answers.

Since we already have a consensus on code-only answers being low-quality and undesirable, it seems to post an answer without one is to implicitly give permission to the community to add it.

### Fine Print

• An explanation may not be edited, one must comment to correct. That would assume better knowledge, risk losing the aforementioned 'subtleties' and require the edit's approver to know the language.

• If they add a note along the lines of Will add explanation, usually waiting to see if it garners attention before slaving away, one shouldn't edit until 3 days have passed since they posted.

### Note

I'm trying this out generally. However, I can see the case for conventional & verbose languages like C/Python/Ruby/Haskell, as there's far greater ambiguity with those.

If downvoted into oblivion, I will post another answer specifically for terse, SBCS (usually golf) languages like APL/05AB1E/CJam as that seems far less controversial. For example, given /⍨⍳41223334444 adding the following hardly seems controversial:

⍳4        ⍝ Integers 1..4
⍨      ⍝ Duplicate argument on each side
/    ⍝ Replicate each element n times

• Getting a lot of downvotes! Any of you agree for at least commenting terse SBCS languages like 05AB1E and Golfscript? There's no ambiguity in T = Push 10, it's pasted straight from the 05AB1E documentation, and it's actually readable! – AviFS Apr 12 at 1:51
• Does that mean I at least have your agreement? I'm too lazy to make the separate post for that flavor of languages right now, but if you're up to it please go ahead! Would recommend including a link to 05AB1E's command table to show that in such SBCS languages, it can almost always be unambiguously decoded with little to no prior knowledge, contrary to what the other person said. And it makes life infinitely easier! – AviFS Apr 12 at 2:09
• Have my upvote. (I'm going to add explanation for every unexplained answer I see from now on.) – null Aug 12 at 8:29
• @HighlyRadioactive Please don’t. You may agree with this answer, but (as of writing) more people disagree than agree. Please follow the rule listed in the question: „Rules here take effect if they have at least 5 upvotes and have at least twice as many upvotes as downvotes“ – caird coinheringaahing Aug 14 at 7:39

# It is OK to Add an Explanation for SBCS1 languages

Above there's already a contradicting answer. I also put my own thoughts on allowing explanations for all languages which was ill-received. Here's I propose only for a certain class of languages:

I can see the case for disallowing the addition of explanations to more conventional & verbose languages like C/Python/Ruby/Haskell, as there's far greater ambiguity with explaining them. They don't require consulting an encyclopedia given reasonable familiarity with the language.

On the other hand, for the terse, SBCS (usually golf) languages – the fun ones! – the case is different. Think 05AB1E, Jelly, CJam, Pyth, Golfscript & even APL/J... Vim?! Many of them must be read by consulting the documentation for each character. More importantly, doing so is entirely unambiguous. For instance, see 05AB1E's codepage here. The first 5 lines:

╔══════════╦═══════════════════╦════════════════════════════════════════════════════════════════════════════════════╗
║ Command  ║  Elements Popped  ║                                     Description                                    ║
╠══════════╬═══════════════════╬════════════════════════════════════════════════════════════════════════════════════╣
║ ǝ        ║  a,b,c            ║   Replace the element of 'a' at index 'c' with 'b'                                 ║
║ ʒ        ║  a                ║   Filter 'a'. Keep the elements where the result of the code is 1. Usage: ʒ CODE } ║
║ α        ║  a,b              ║   Absolute difference of 'a' and 'b'                                               ║
║ β        ║  a,b              ║   Convert 'a' from base 'b' (arbitrary)                                            ║
║ γ        ║  a                ║   Split 'a' into chunks of equal adjacent elements.                                ║
╚══════════╩═══════════════════╩════════════════════════════════════════════════════════════════════════════════════╝



### Closing Case

An explanation in such languages usually just means pasting the definition of each character from the doc's help page or wiki. This may be done, and verified, with little to no expertise in the language and make a world of a difference, from impenetrable gobbledy-gook to perfect English.

Everyone trudges through the same braindead labor to understand a code-only answer in a language like O5AB1E, painstakingly looking up each symbol. If one person does the work for us, no one else has to!

1 The exact rule to categorize the class of languages I'm referring to is a work-in-progress. I'd appreciate any suggestions on improving it, but for now I think at least the idea is clear enough!

• Thanks a million! Can't tell you what a relief it is to have at least someone else! – AviFS Apr 12 at 3:17
• Yes, SBCS was the best I could do to be objectivity, as opposed to' terse.' I was going to put a note about that asking for suggestions. I'll do that now! – AviFS Apr 12 at 3:30
• If writing these explanations is so simple than why even include them? If you wanted to see the explanation then you can make it yourself. I also don't really think that these sorts of explanations are as useful as you claim, I see them all the time and I don't think one has ever made an answer clearer to me. – Wheat Wizard Apr 12 at 5:43
• I disagree with this. Code written provides an algorithm that works in a specific way. Reading code is not like reading a poem, where multiple interpretations are possible. The subtleties of explaining the code come simply from what the OP thought while writing the code and what motivated the OP to write said code in the given way. The code is what it is and does what it does, regardless of it being in a conventional language or in a golfing language. – RGS Apr 12 at 10:56