It's not logical to vote to close an older question for a newer one that is similar. Older questions should take precedence over newer ones. One good reason is the value of answers on the older questions. Instead of users voting to close the newer question they seem to just answer it which this causes a sea of Q&As someone would have to comb through if they are looking for a solution. The proper procedure to help others would be to vote to close the newer question and add your answer to the older one. This will help users and adds more value to the older Q&A. We might start removing answers on newer questions by moving them to the older Q&As. Thoughts on this?
Please do merge questions, but which one is older and younger should not matter! We should keep the better question. This is StackExchange's policy, not just my opinion.
As said by Shog9:
If the new question is a better question or has better answers, then vote to close the old one as a duplicate of the new one.
You can flag and ask a moderator to merge after closure if they're exactly the same.
If they differ based on the versions of the relevant systems, then they're not really exact duplicates - make sure this is indicated in the questions themselves, and provide cross-links so folks looking for one but finding the other have a path to the correct answers.
Following this advice also handles questions with different software and versions.
We do have a problem of users answering duplicate questions for one reason or another and this is something that we should handle better.
I agree that exact new questions should be closed as duplicate of older ones when we find them.
There's one thing though that might change that kind of reasoning:
Technology evolves and some issues from new versions of software are not related to the older question.
This week I was scanning old unanswered questions and marked some as duplicate. Doesn't matter if the duplicate was new or older, I simply linked them to any other question that has answers that I think are appropriate and could remember from memory. The goal was simply to clean the unanswered list.
For example, this question below has just been marked as accepted yesterday after I mentioned to the OP it was marked as duplicate because he didn't select an answer or edited his question. He decided yesterday, after I explained why it was duplicate, to choose an answer after 2-3 years of inactivity.
This is the question I linked it to because I thought it answered all the issues of performance and difficulties with Illustrator while the older question is only about importing big TIF/PSB layered files in Illustrator. It was answered a month ago:
The 2 questions are different, and certainly the older question doesn't answer at all the new one, but the new one answers the old one!
So if the new one disappears because it's considered a duplicate and the old one stays, that's not very logical in my opinion and not helpful to the users either. I think you told me the duplicate get deleted, did I get that right?
Yes, it's my answer but it also has good info with references, can be used as a reference itself for a lot of future duplicate of other questions and got more votes too. In other words, the 2 questions should stay, they're different and there's certainly value in the new one. So in that particular example, the new one seems to be the one that should stay if a choice has to be made.All this to say there won't be any pure perfect formula for that kind of issue, only logic and common sense.
But yes I totally agree on this: in general, if we find an older question that we judge has good answers already, we simply mark the new exact ones as duplicate. It's less work and easier for people to find answers.
As for answering the 3-4 years old ones instead of the new one, the way I see this is there's more chance we get the new ones accepted and complete the whole process since the OP is active. Sometimes we don't know there's an older unanswered question too. One needs to scan that list to know!
So with that in mind, I wouldn't automatically put the entire priority on older questions, especially if the OP never accepted any answer or never edited his/her question in the last 2-4 years. It's awkward to ask precision in the comments for very old questions, and most of the time we never get any answer because the issue of the OP has been solved long ago. It's way easier to collaborate with active OP who needs help now... and who helps us help them! (<-- if that makes sense)