About the Talk
April 5, 2013 5:15 AM
Kansas City, MO, USAKansas City, MO, USA
Remember when you first get started on an existing project, and you have to get your development environment setup? "You need Postgres and Ruby", so you get that installed. "Oh wait, we can't run 1.9.3, you need 1.9.2", so you change Ruby. "bundle is failing? Oh yeah, that gems needs some native packages, better google it". "Why isn't that feature working? Oh yeah, I just remembered you need to install wkhtmltopdf for that to work"; it's still not working, "oh, you didn't install that with the package manager did you, that one never works, you have to download a binary and install it manually." In an environment with more than one project it's even worse, since you could be moving between different projects each with their own unique requirements. Vagrant allows you to configure what you need installed on your development machine and isolate it into a headless VM to use for development. In our consulting shop, a new developer can usually be up and running in about 15 minutes with a complete development environment and ready to start coding. And if you really manage to mess something up badly, you can just destroy the whole thing and rebuild it with a couple commands.