My first rule of thumb for tacking to windward is to tack as infrequently as possible (within the general guidelines that nolatom suggests). Each time you tack, you lose boatspeed, and consequently pointing ability, and consequently you lose ground to windward. If you can fetch the mark in fewer tacks than another boat of the same design, the likelihood is that you'll round it ahead of him, unless he can make up his lost time by playing a wind shift or a current better than you.
Generally, unless you're just putzing around for pure pleasure, each time you tack, it should either be because you are "forced" to do so by considerations of geography or seamanship, or because you stand to gain something from it, by reason of wind speed or direction. If you aren't "forced" to tack, and you won't gain something from tacking, then you should hold your course.