Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community!
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial

James Nelson
23,956 PointsInstalling a ruby env
Hello guys,
I am new to ruby and I am just working my through the 'installing a ruby env' course on treehouse. Although I have almost complete the stage I feel like I don't quite understand what I'm downloading and why.
Could someone explain the simplest terms what is Vagrant and why we need this to install a Treehouse VM?
And what is the difference between the VM provided by Oracle and Treehouse's VM?
Thanks
1 Answer

Musannif Zahir
1,414 PointsVagrant makes it easy to create consistent development environments across various systems (Windows, Linux, OS X, etc.). By having your development environment in a VM, you avoid the "But it works for me" issues, even across different platforms.
There are a lot of default/base VMs for Vagrant that you can use as a starting point when creating your own image. You can see a full list at http://www.vagrantbox.es
You're downloading the Treehouse VM as it's a customized development environment for this course. Vagrant is not required to setup a ruby environment but it provides an easy way for someone to create an image of a working ruby environment and having you fire it up so that you can dabble in ruby without having to go through installing everything.