I love getting gift cards, because there's stuff I need that's too difficult to describe or be specific about.
I have two reasons for GIVING gift cards:
1. We're friends, but I haven't memorized your music collection or what have you, and I wanted to give a token of my appreciation. Cash seems... more like "here, you're poor, take some money".
2. I'm working a theme. One year, Quad and I bought my sister and brother-in-law a GC for the movies, and for dinner at restaurant we know they like. I wanted to give them a date night, especially since money is tight. I give my sister GCs regularly, because it's the gift of guilt-free shopping. And she knows how to budget and use sales - she gets a lot more out of that $50 than I could have done just buying a present. When money's tight, you forget to shop for yourself, you can't... and I want her to be able to enjoy it sometimes too.