Is your "hobby work" a massively multiplayer resource intensive game you're going to be running for yourself and a few friends? If so, you may need more RAM.
In general, 256MB of RAM will be swallowed by the default installations of MySQL and Apache, but with a few tweaks you can easily bring the memory usage back down, all depending on the traffic you'll be serving. If you're comfortable playing with the configuration then 256MB should be fine for a small, static, hobby site and a couple of databases. If not, you'll probably need 512MB.
Another factor to take into account is your need for bandwidth - why do you need so much? What are you planning on serving? If you need a lot of bandwidth you may also need a lot of system resources.
Most VPS providers allow you to scale up, I know slicehost does, so you could be able to buy in cheaply and move up afterwards.
To give you a rough idea, I've got a 256MB slice running a few email accounts, 3 pretty much static websites running on Apache, MySQL running (but not doing much) and a fair amount of proxying going through it and it's using about 30% of the RAM. That has taken a fair bit of tweaking though.