I guess it depends on what you're writing. Using rbenv and bundler keeps ruby apps in check, but if you want to install a whole load of stuff, you could take a look at Vagrant (http://www.vagrantup.com).
Initially writing Java, will be using a app server (tomcat or glassfish) along with a DB (either oracle or mysql). Looking to work with their enterprise technologies.