I think we should consider not marking questions which may seem duplicate as being duplicates (especially in the case of StackOverflow.)
We have a lot of new users every day. Some may be capable of giving extremely good answers to these questions, but they are deprived of the opportunity when the question is closed as duplicate.
I came across some questions which were marked duplicate because a similar question exists which was asked years ago. The technology changes frequently(especially in the case of programming languages) and I believe that the answers too need to be updated. A question which was asked years ago might have an answer based on technology or services available at that point in time. But a similar or exactly the same question, asked more recently, would have a good answer if the answer is based on recent technology.
For example, if someone asked a question
How to add images to a webpage using HTML?
This feature was not available. Now it is, with HTML5.
If a similar question is asked recently and if someone marks it duplicate,the person at the other end would be redirected to an older question with the answer-"It's not possible with HTML." So the person at the other end is going to miss out this important feature in HTML5!
Marking questions as duplicate should be based on a wide comparison, and only after finding an older question whose answers match the latest changes or updated features.