The origin context here is "Java, Generics: What's the difference between Set<?> s = HashSet<String>() and Set s = HashSet<String>()?" though I have seen this pattern repeated other times. That question had 4 votes to close as a duplicate of "Difference between List, List<?>, List<T>, List<E>, and List" when I saw it.
The problem being that I don't think the latter is a very good duplicate suggestion. The OP is long and divergent with bullet point scenarios. It basically asks for a rapid overview of all Java generic syntax. The accepted answer sticks to the bullet points and is not particularly enlightening. Some of the other answers are more generally enlightening but they are disjointed. It's just not a good duplicate suggestion and to be honest I don't know why it has the vote status it does except that it's old.
On the other hand, "What is a raw type and why shouldn't we use it?" is canonical and a pretty clear-cut duplicate. The accepted self-answer is comprehensive and contains a section specifically devoted to answering what the new question asks. There is also "what is difference between unbounded wildcard type List and raw type List?" which is a true exact duplicate though "What is a raw type...?" has a more comprehensive answer.
I could have voted to close as a duplicate of "What is a raw type...?" but I'm aware there is some minimum number of votes before it shows the link through. It's like it only displays the link for questions that received at least 2 duplicate votes. This basically means if I vote for "What is a raw type...?" I am actually voting to mark as a duplicate of the other question.
What I'd like is for a link to be displayed for "up to n questions unless the votes are divided". So, for example, votes that go
[3,1,1] would both result in 2 links, same as
[3,2] seems to do now.
And maybe the problem is just pile on voting because voters aren't actually looking at the suggested questions. Maybe a different solution would be to display the accepted answer in the vote preview instead of the question.
In another case, I saw a question get marked as a duplicate where the accepted answer had a disclaimer specifically saying it was wrong and to instead read a very large comment thread that supposedly explained why. Displaying the answer instead of the question could have prevented that.
The guide on meta also agrees this feature is intended for exact duplicates, not questions that are just similar. So bad duplicates are something I see as an issue. The banner says:
This question already has an answer here:
That banner implies I can take this question and look at those answers and they match up. If that's not exactly true I don't see what purpose it serves to mark it as such.
Asking what purpose it serves to mark duplication and why, I would say:
- It links to old answers...because ideally they do apply to the new question.
- It closes the new question...because ideally answers should be in one place.
For 1, the issue is that when the old answers don't properly apply to the new question it's a kind of bad linkage: those links go nowhere and are not useful. Those links are also probably stuck that way because changing a duplicate is not easy.
If the old answers aren't good, 2 causes stagnation. Basically here we're assuming that old answers must be more informative than new ones and sorting chronologically to determine usefulness. This is a flawed assumption because, the way SO is gamified, it's a consequence that old questions rarely get new answers. The author might be inactive and new answers will float to the bottom unless they are voted up fast.
So there is incentive to answer the new question. In fact, there is incentive to write a better answer because you are competing with old answers too. I have seen plenty of duplicate questions where the author did not accept an answer, presumably because answers to the old question showed the new answers were not good.
The banner is also singly-linked which assumes that the answers to the new question are less useful. The old question links to the new question in the 'Linked' sidebar but it's not apparent that these contain actual duplicates. Users who find the old question are less likely to find new answers. Maybe it would help to rename 'Linked' to something else that attempts to indicate that these links are not the result of automation. (Even just 'User Linked'.)
I am not sure how feasible a link back is as a banner and I am aware that some questions have a ridiculously large amount of them. Maybe like a top 2 could be displayed based on up votes. Basing the link back on answer votes might also be a good idea.
The other, more aggressive maintenance solution is to apply merging but it seems established that duplicates are not bad and there is not a one true question, both of which I agree with.
The current duplication system bugs me because it is not always productive.
- Closed duplicates should show more links in the banner for diversity and greater probability that one is correct.
- The vote preview should display answers instead of questions to show that the old answers do or do not answer the new question.
- When a question is marked as a duplicate, the old question should more clearly link back to the new question.
And I don't mean to call anyone out or be so critical of others' voting habits. What I see is more like eagerness and mistakes getting made.