I recently saw an article on Making Sense of Cents, that talked about an easy way to beat impulse buying. When you want to buy something, calculate how many hours you will have to work to pay for that item.
Here is an example that shows you how it works : Say you want to spend $60 on something and you earn $20/hour. That mean you will have to work for three hours to buy this.
If you make impulse spending decisions, this is a great trick to think twice about its value.