We show how to combine Fourier analysis with coupling arguments to bound the mixing times of a variety of Markov chains. The mixing time is the number of steps a Markov chain takes to approach its equilibrium distribution. One application is to a class of Markov chains introduced by Luby, Randall and Sinclair to generate random tilings of regions by lozenges. For an ... region we bound the mixing time by O(.4log.), which improves on the previous bound of O(.7), and we show the new bound to be essentially tight. In another application we resolve a few questions raised by Diaconis and Saloff-Coste by lower bounding the mixing time of various card-shuffling Markov chains. Our lower bounds are within a constant factor of their upper bounds. When we use our methods to modify a path-coupling analysis of Bubley and Dyer, we obtain an O(n3logn) upper bound on the mixing time of the Karzanov--Khachiyan Markov chain for linear extensions.