A 30g will be too big for a baby ball python. In fact, it will be too large for a full grown male. A 20g long is good for an adult male, but still too large for a hatchling.

Honestly, your best bet is to start off with a tub setup, then when your snake is full grown, get a nice front opening reptile cage rather then a tank. Boaphile plastics makes some great display cages and they are relatively inexpensive and they will be much better for your snake in terms of husbandry.

For any type of setup, you will need a thermostat. A reptile thermostat. These are hard to find in pet stores so you will probably have to get one on the internet. The reptitemp 500r is good for single setups and is only about $25.

Next, you will need good reliable digital thermometers. The general consensus is that the accurite weather station is the best bang for your buck. It is about $12 at the home depot, lowes, and walmart.

If you can at all avoid it, don't get a lamp. If you use a tub you shouldn't even need one. If you room temperature is around or above 75* normally then you will not need a lamp. A lamp combined with a glass tank and a screen top will leave you with no humidity which will cause your snake to have bad sheds. A UTH is the preferable method of heating. If you don't care about costs, a Radiant Heat Panel might be worth looking into.

You will also need two identical hides. Half log hides are not suitable for ball pythons as they don't really work as a hide at all, they are far to open. The rock cave type hides are great, but kind of expensive. I use plastic cereal bowls from the dollar store and I just cut a small entrance in the side. Cheap, effective, and easy to clean.

Hope this helps! Spiders are very cool but they also come with an added...bonus? They have a wobble. Use the search function to learn more about it.