Between my wife and I, the policy has been to go out and spend time together instead of buying gifts. I don't try to push this onto others but it does work with most of my close friends as well.
It also works great with kids once they reach a certain age. Two years ago we asked the grandparents to give experiences instead of toys. Archery lessons, horse camp and climbing lessons have been the biggest hits so far.
The other thing to remember is that it's about the feeling of giving as well as the person receiving, and the grandparents have said they feel like what they're doing is being appreciated more than just another toy or gadget.
It works inside family or with girlfriends, but only as long as everybody agrees to go somewhere. As with normal gifts, presenting tickets as a surprise is not a good idea.
By "go out" I didn't mean something that requires tickets. It could be dinner, or a short getaway. In very few cases I've given gift cards to amazon or a local mall. It's a little more personal than cash but I still get to leave things open-ended.