In seeing some of the potential solutions and problems related to this answer and question I noticed something. Why are closed questions allowed to obtain more reputation for a user?
So my recommendation(even though it's a pain to implement probably) is this(note, this includes all close votes except for migrations)
When a question gets closed, only the question gets retroactively marked as community wiki. By retroactive, I mean all upvotes on the question before closing are undone. Also note, downvotes are kept. This means a closed question with downvotes will always have a net negative reputation.
When a question is reopened, it gets retroactively assigned to the user instead of the community user. This just undoes point #1.
Point one solves these problems:
- User asks a popular, but "bikeshed" subjective question. Even if the question is closed an hour later, they may accumulate 15 upvotes. With this system, those 15 upvotes won't matter.
- Downvotes are kept to the user while being closed. This deals with low-quality questions that people should get a negative reputation affect for. However, after being closed downvotes should be assigned to the community user to prevent the downward spiral affect, especially since pitty upvotes won't be able to save them.
- People can still upvote as a method of suggesting that a question should be reopened. The upvote just won't count for the author of the question until reopened.
I see no actual point in closed questions being capable of acquiring reputation, except for maybe duplicates(but only barely).
So, here is my feature-request. :)
Also, to solve the duplicate-answer problem you could apply the same thing toward the answers of closed questions. This isn't a big problem with any close reasons other than Not A Real Question, where many low quality answers fall but with users who try to answer them anyway with the small amount of information given. I think those users should not be discredited for their attempts.