Long time ago an interesting question came up, for which I have posted an answer. The OP was however using a specific framework X, which is in turn built on top of a core API Y. The framework X goes beyond my knowledge, so I posted a more generic and low-level answer targeted on core API Y, which should be applicable as good on environments using framework X.

Today, a similar question popped up; however, the OP was not using any framework, but just the core API Y. Even though there's an answer for that in the first question, it cannot be closed as a duplicate of that question, because it does not use framework X at all.

So, I have just copied the answer from the old question into the new question (and added a little disclaimer and made some clarifying edits).

However, since I got upvotes on it, I start to feel guilty for receiving upvotes for a simple copypaste of my old answer. I am much tempted to delete the original answer in the first question. Should I do? Or can I just leave it as is? Is copying answers into technically different questions acceptable by the community?

3 Answers 3


Is copying answers into technically different questions acceptable by the community?

I'd say yes, absolutely.

Copying the answer obviously made sense, and helped the other question get answered well. Plus, it's your content.

Were the other question an exact duplicate, this would feel like rep-whoring. But the questions being the way they are, I don't really see a problem here.


Instead of copy and paste, I usually use links to other answers, from others or from myself. If that works, i.e. you do not have to modify the old answers but just give additional information, I would definitely prefer that since the reasons to DRY apply here, too.

Otherwise, I'd still give a link to the old answer and mention that parts of the answer were copy and pasted from the old one. Then it is definitely a correct self-plagiarization and you can have a good night sleep again ;)

  • I considered it, but I am myself not a fan of posting links as answers. I'd have posted it as a comment on the question then (which was already done by Bozho).
    – user138231
    Commented Sep 19, 2011 at 13:19
  • 1
    Hm, if you don't have to add anything to your old answer, I would have really just given the link as a comment. If you add some more info, I don't see a problem about giving links as answers. I do that all the time, but always with additional info, at least a summary of what the link points to. Do you think I should change that habbit? Commented Sep 19, 2011 at 13:24
  • 3
    @DaveBall You run the risk of the question with the answer you're linking to being deleted and the answer no longer being available sometime down the road. How big of a risk it is depends entirely on the questions involved and in part on your answers.
    – Adam Lear StaffMod
    Commented Sep 19, 2011 at 13:55

Your old answer is not really an answer to the question, as it doesn't report how to use the framework X, which (by your admission) you don't know. It would be a workaround, in the case the framework X doesn't allow to do what the OP is asking for.
To make a comparison, it would be like answering to a question about Drupal, without knowing Drupal, saying what you would do using only PHP functions.

Since the accepted answer for Is there a shorthand for <fmt:message key="key" />? doesn't seem an answer specific for the framework X either, I would leave your answer. I would rather edit your new answer to not make it appear as a copy-and-paste.

  • In this particular case, framework X allows it.
    – user138231
    Commented Sep 19, 2011 at 13:48
  • Also Drupal, which is a PHP CMS and framework, allows you to use PHP functions; still, between a Drupal function and a PHP function, it is preferable to use one or more Drupal functions. The OP has been offered a solution specific for JSP (creating a tag file), but he accepted another solution, which is not specific for JSP; I think that is relevant in this case.
    – apaderno
    Commented Sep 19, 2011 at 13:54

You must log in to answer this question.