Depends where you go, what type of holiday and also the exchange rate.
Always take some cash in whatever currency the country uses, but not masses. And then take cards (but be aware of the exchange rate etc as it will be noticeable on your next statement)
As for what we spend it on, usually things like entry to museums, eating out, cinema/theatre tickets, hire car for days out of the area we are staying in etc. Don't go in for beach hols etc or nights out on the town. Prefer to do other things.
I don't buy crap to bring home. No impulse shopping either. I don't go mad with presents for people. And unless I really want it, I never bother with Duty free anymore either.