I follow a different routine each workout. The changes aren't drastic; I change the order of exercises, or use some in place of others. But, no two workouts are ever the same for me.
As far as training programs, I'll stick with a specific one until my results stagnate, or I become too sore. For example, I spent most of this summer beginning each of my workouts with 5x5 of a big compound lift followed by higher rep ancillary work. I gained some size and a good deal of strength, but muscles and tendons in my shoulders and elbow began bothering me.
So, I've switched to using German Volume Training for a while. This program uses 10 sets of 10 reps with the same weight on all sets. The concept is cumulative overload, rather than relying on raw weight. The poundages I'm using are now much lighter than before, but that "light" weight feels damn heavy by the time you get to about the seventh set!