I've been using the search feature to find unanswered questions and if possible answer them.
One question I found today is answerable, however, the question is 3 years old.
Is it acceptable to answer questions this old?
Absolutely!
The philosophy of all Stack Exchange sites is that you're not just helping the person who asked the question, you're also helping future people who have the same problem and search for a solution. So even if the person that asked that question has moved on or found a solution on their own, there could well be others that haven't and will benefit from your answer.
x
and there's a new answer that specifically addresses that old version, what the heck is wrong with that? I get that a new answer saying "sure, expose a Win XP machine to the internet" is a bad answer (unless you're virus hunting), but how is suggesting how to hang a mirror with a new product (not available x years ago) going to cause harm?
Perhaps it depends on the area: An updated answer to an electrical question in Home Improvement may provide a safer solution that also meets updated code requirements. That seems worthwhile. I would encourage those so inclined to review old questions and offer improved or updated answers when they can.