I breed my guppies in a 10-gallon aquarium, and it's incredibly easy. If you get a couple males and 3-4x as many females, you can breed them rather quickly because they are livebearers. On a side note, if you get really into it fish stores pay well (or trade for fishfood) for really nice guppies, which with selective breeding is actually much simpler than with snakes.
Unfortunately over time the gene pool gets crowded and you end up with some rather "inbred" individuals that have physical problems, but can still be fed to the snakes.
You don't really need any expensive filters or anything... just get a plecostamous and a few corydoras and the tank will be fairly clean. Only thing I've had to do with mine is use a siphon and sweep out the tank gravel every couple months. Raphael catfish, chinese algae eaters, and most suckermouth catfish work well with guppies. I would also suggest a plant or two, such as seagrass (with good lighting) or an amazon sword.
It does tanke a little while to get up to speed, but eventually you get them breeding fast enough you never have to wait for food.
Redworms are a good food choice, but earthworms are also excellent because you don't have to feed the snake as many. Garters are avid eaters and will eat anything you put in their cage, so just find out what works for you.
The garter may eventually need to be fed fuzzie mice... so be prepared.
Good luck
-----
Current Collection:
0.1 Antherystic elaphe guttata guttata - Corn Snake
1.0 Elaphe vulpina gloydi - Eastern Fox Snake
0.1 Elaphe obsoleta obsoleta - Black Rat Snake
0.1 Leucistic elaphe obsoleta linheimeri - Texas Ratsnake
1.1 Morelia spilota cheyni - Jungle Carpet Python
0.1 Tiliqua scincoides intermedia - Northern Blue Tongue Skink