I've never had a snake before. I'm thinking very seriously about getting a Ball Python and I have a few questions.

I've found a petshop that specializes in reptiles. The guy there tells me that the easiest time to get a Ball is around April, but he says he is expecting to get some in in the next week or so. Am I to assume that these will just be snakes which hatched last spring and just haven't been sold yet? Or do they sometimes breed and hatch much later in the year? I'm interested in getting as healthy and as young a snake as possible. Would I be best off waiting until next April or would I be ok with one of the snakes he has coming in now?

Also, the snakes he gets in he says are farmed. Is this the same thing as captive-bred?

Am I likely to be able to choose between a male and female in the shop, or are they too difficult to sex?

Any answers would be greatly appreciated!