Bigger is better, although @DarkScribe raises a great point. Then again, I could just as easily argue that by having multiple flash cards, you raise the chances of one getting lose or lost, versus having one huge card that never leaves the camera.
You can approximate the number of shots per card by doing the math: take your average picture filesize, multipy the gigabytes of the card by 1024 to convert it to megabytes, and divide that huge number by the average picture filesize.
A 2GB card will give you around 350–500 pictures depending on your camera settings (how high quality the photo is, for instance). You can easily push that higher by reducing your settings, and make better quality photos (but reducing the number you can save) by making the pictures high quality. Though you don’t need super high quality unless you want to print out a HUGE print.
In my experience I have never had a flash card of any brand or type die on me.
My recommendation: if you will be downloading your pictures nightly, you’ll be fine with a 2GB card. If you won’t be downloading, go for the 8 possibly, or two 4s if you feel confident that you won’t lose any of them.