I try to have as much stuff as possible done ahead of time (as in at least 2/3 of my shopping), so that I don't stress out around the Holidays. Oftentimes, I'm making some of the gifts (one year it was four shirts and two vests, another year, a couple of bathrobes and shirts) so I have no choice but to plan. Throughout the year, when I'm traveling or at a faire or a store and see something that would make a good gift for someone, I buy it then. And online shopping is the best thing since sliced bread!
I learned my lesson the one year I put everything off and shopped at the last minute. Never again. Talk about seeing the dark underbelly of society - people are so mean when they are stressed and shopping.