If you believe you have an impulsive or compulsive spending problem, try to avoid using credit cards. Leave them at home when you go out, or give yourself a limit.
As impulsive shopping is a very spur-of-the-moment thing, one of the best ways to avoid it is to set up a waiting period for yourself before every purchase. If you still need it tomorrow, get it. Chances are you won't.