I buy at irregular intervals. Sometimes recipe driven, sometimes for restock and sometimes just on a whim.
I am becoming more and more of a buy what is on sale guy (supporting the LHBS) and then figuring out what to make based on what I have. Not fully converted to that yet because I still have those house varieties I like to have two of on tap at any one time but when I am doing a non-pipeline-maintenance brew session...it is grab-bag time.
Edit: My Oatmeal stout is a great example...I was low on base malt but still wanted to make 9 gallons of something and LHBS was closed. Grab a 48 oz drum of quick oats to flesh it out without stealing the Munich I planned to use the next weekend for my Redneck Pale Ale since Munich is a 5 day lead time for full sack.