As the holiday (and gifting) season approaches, I figure I'll take some time to tell you why everyone hates gift cards.
There are really only a few reasons:
1) They can't be used everywhere, so a person is limited to using your gift to where you think they want to use it... it's a guessing game where both parties usually lose. For instance, you're a thoughtful friend, and you want to get me a gift! I appreciate that! You want to get me music, but you aren't really sure which music I'd like, so you get me an iTunes gift card. Unfortunately, I get my music from Amazon (because all their music is DRM-free and most of it is cheaper). By getting me an iTunes gift card, you're limiting my choice, and supporting the evil monster that is DRM! (don't get me wrong, I'm all about protection of intangible assets... I just hate the implimentation of DRM through iTunes) However, if you gave me cash, I could spend it on the music I want, from the store I want!
2) They have implications. Bad ones. A gift card says "I don't want to give you cash because I think you'll buy beer or strippers... but I don't know what to give you, so here's a less convenient, restricted form of cash, so I know you aren't buying beer or strippers."
Cash also says "I don't know what to get you," but it's up front and says it honestly. It also implies that you don't think I'll use the money you're giving me to buy beer and strippers, which is good... 'cause I wont.
3) Companies go out of business. If I'd had a gift card for Circuit City when it went under, I'd be out of luck. If you'd given me cash instead, I could go to Best Buy to fulfill my electronic wishes.
The moral of the story is: Don't give people gift cards. Cash is a universal gift card, and everyone likes being able to choose!