My method: I'm paying attention during the year what my relatives and friends are excited about, what they want and/or plan to buy and take a note. Once a birthday, Christmas or another opportunity comes, I only have to pick an idea from the list and actually buy it. Works perfectly. Telling them that you remember that they mentioned it is usually also great. I think it subtly communicates that you care enough about them to pay attention.