I'm going to have to say that Ball Pythons, while they are a very docile snake, are NOT good beginner snakes. They tend to refuse to eat very often.
Most people that buy their first snake feed it live mice, and when the snake doesn't eat the mouse right away, will leave the mouse in the cage until the snake does eat it. This causes problems, as leaving the mouse in the cage with the snake can be potentially harmful. Mice get bored just like we do, and when there's nothing else to do, there's always a tasty snake to gnaw on.
Whatever you get, PLEASE feed it frozen/thawed mice. The reason that I say a ball python is not a beginner snake is because 9 times out of 10, the snake won't take a frozen/thawed or pre-killed mouse right away. It really takes a lot of patience and time to get a ball python to start eating.
I say go with a cornsnake, milksnake, kingsnake, or a sand boa. All easy to take care of, and MOST of them have good temperments. Corn and king babies can be a bit nippy, but will get used to you after a while, and their teeth aren't even large enough to break skin.
I've been bitten by snakes hundreds of times. All kinds of them... a viper boa, redtailed boas, cooks tree boas, corn snakes, ball pythons, milk snakes, kingsnakes, rainbow boas, and lots of others. The only one that hurt was the cooks tree boa. Those things have HUGE sharp teeth.