A great post over on Money, Matter and More Musings talks about using the old 'how many hours would you have to work to pay for that?' technique to squash any compulsive spending. Personally, this is something that I use a lot, and it is effective. Of course, I rather loathe my job right now, so that might be why it is so particularly effective.
I have a friend that is going to be 30 years old this year and she lives with her parents. No big, except she is not doing to save money or anything. She's been there for the past 5 years and somehow manages to have car debt, student loan debt and credit card debt. She never ever misses work. She puts her groceries on credit. Oh, and she makes around 40K before her annual bonus. I try to use this "don't spend" technique with her. Last week, one night after work, in one trip to Wal-Mart, she spent $300 on an mp3 player and $25 on the Moral Orel season one DVD...and those are just the purchases I know about. Note that she has a PDA that plays mp3s. I told her that in that one trip she spent more than she made that day. She shrugs it off. As someone in debt, it is so extremely frustrating to see people throwing money away like she is. And she has debt!