Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Developing in VM [modified]

Developing in VM [modified]

Scheduled Pinned Locked Moved The Lounge
cssvisual-studioadobequestiondiscussion
10 Posts 8 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    mobius111001
    wrote on last edited by
    #1

    I'm debating about developing within a VM using XP as the host and the VM. I wanted to get some opinions. Does it really pay to do this? Any pros/cons to it? If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back? Thank you in advance. Happy Friday everyone. MODIFIED: Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

    modified on Friday, February 6, 2009 11:50 AM

    L R M P M 5 Replies Last reply
    0
    • M mobius111001

      I'm debating about developing within a VM using XP as the host and the VM. I wanted to get some opinions. Does it really pay to do this? Any pros/cons to it? If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back? Thank you in advance. Happy Friday everyone. MODIFIED: Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

      modified on Friday, February 6, 2009 11:50 AM

      L Offline
      L Offline
      Lost User
      wrote on last edited by
      #2

      You could put the source/personal files in a shared folder, then you wouldn't lose it easily and it wouldn't get rolled-back

      1 Reply Last reply
      0
      • M mobius111001

        I'm debating about developing within a VM using XP as the host and the VM. I wanted to get some opinions. Does it really pay to do this? Any pros/cons to it? If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back? Thank you in advance. Happy Friday everyone. MODIFIED: Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

        modified on Friday, February 6, 2009 11:50 AM

        R Offline
        R Offline
        Rob Graham
        wrote on last edited by
        #3

        Put the source in a shared folder on the host. Map the shared folder as a drive to the VM. Works great.

        1 Reply Last reply
        0
        • M mobius111001

          I'm debating about developing within a VM using XP as the host and the VM. I wanted to get some opinions. Does it really pay to do this? Any pros/cons to it? If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back? Thank you in advance. Happy Friday everyone. MODIFIED: Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

          modified on Friday, February 6, 2009 11:50 AM

          M Offline
          M Offline
          martin_hughes
          wrote on last edited by
          #4

          Put your source under source control on your main box, then use a VM as your development environment to connect to the source.

          print "http://www.codeproject.com".toURL().text Ain't that Groovy?

          R 1 Reply Last reply
          0
          • M mobius111001

            I'm debating about developing within a VM using XP as the host and the VM. I wanted to get some opinions. Does it really pay to do this? Any pros/cons to it? If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back? Thank you in advance. Happy Friday everyone. MODIFIED: Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

            modified on Friday, February 6, 2009 11:50 AM

            P Offline
            P Offline
            peterchen
            wrote on last edited by
            #5

            I don't know about hosting on XP, but I have the "old versions" machine now hosted on Windows 2008 server, and it just rocks. At least, compared to the Y2K machine it did previously run on. Build times are down from 2+ hours to 30 minutes, and everyone can remote into it from his desk with solid performance (of course, only one at a time). This machine implements it's own version of release branch switching - so I am currently not using multiple VMs on that machine, but I am sure I will do in the future. One thing that is a concern is backups - the VM's are large, especially since I opted for fixed-size disks. Another issue is external hardware: our software talks to firewire and USB devices. (VMWARE at least supports USB OK enough) Also, multiple cores aren't supported in most virtual machines, so you'll build mostly linear. That said, I haven't been able to make real use of parallel builds to say if it's that much better. However, having your entire development environment on a disk that you can run "everywhere" is a HUGE benefit, that would be enough even if it is the only one.

            Burning Chrome ^ | Linkify!| FoldWithUs! | sighist

            1 Reply Last reply
            0
            • M martin_hughes

              Put your source under source control on your main box, then use a VM as your development environment to connect to the source.

              print "http://www.codeproject.com".toURL().text Ain't that Groovy?

              R Offline
              R Offline
              rastaVnuce
              wrote on last edited by
              #6

              I second that.

              To hell with circumstances; I create opportunities.

              1 Reply Last reply
              0
              • M mobius111001

                I'm debating about developing within a VM using XP as the host and the VM. I wanted to get some opinions. Does it really pay to do this? Any pros/cons to it? If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back? Thank you in advance. Happy Friday everyone. MODIFIED: Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

                modified on Friday, February 6, 2009 11:50 AM

                M Offline
                M Offline
                Member 96
                wrote on last edited by
                #7

                I do all my development in a VM and I've been doing it *heavily* day in and out for some time now so I can give you some opinions based on personal experience.

                mobius111001 wrote:

                Does it really pay to do this?

                Yes but only if your hardware is fast enough (particularly your hard drive access).

                mobius111001 wrote:

                Any pros/cons to it?

                The big con is if the hardware isn't fast enough, with modern hardware it's possible to see no perceptible difference in performance. Also you can't do high end graphics development in a virtual machine yet because no VM makers support the latest and greatest.

                mobius111001 wrote:

                If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back?

                I have a raid 0 array of velociraptor sata drives for the VM and a separate hard drive for keeping backups of the VM images. I burn a reference copy to DVD now and again and store in a safe place offsite. All my code goes through source control and I've set up subversion to save to a local repository on a server on my lan as well as mirror to a remote server a thousand miles away on every commit. It doesn't matter what happens to the VM, it's just a framework for working, all the code is in the repository. I make a backup of my VM when I make major changes to the environment like upgrading my 3rd party tools or development tools. Any scheme for backup that doesn't put your code outside the building you work in on a regular basis (at minimum once a day) is utter disaster waiting to happen and you'd be a fool if you didn't unless your work is of no value to you.

                mobius111001 wrote:

                Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

                Absolute dead minimum to get the job done, don't mix your surfing or personal work with your development work, make as many different VM's as makes sense and fine tune each one for the job. I have a work VM and a personal VM and several testing VM's and a profiling VM. You will get it all wrong at first so your best bet is to make a master vm that contains just a barebones up to date operating system with all the tweaks applied for pure p

                M D 2 Replies Last reply
                0
                • M Member 96

                  I do all my development in a VM and I've been doing it *heavily* day in and out for some time now so I can give you some opinions based on personal experience.

                  mobius111001 wrote:

                  Does it really pay to do this?

                  Yes but only if your hardware is fast enough (particularly your hard drive access).

                  mobius111001 wrote:

                  Any pros/cons to it?

                  The big con is if the hardware isn't fast enough, with modern hardware it's possible to see no perceptible difference in performance. Also you can't do high end graphics development in a virtual machine yet because no VM makers support the latest and greatest.

                  mobius111001 wrote:

                  If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back?

                  I have a raid 0 array of velociraptor sata drives for the VM and a separate hard drive for keeping backups of the VM images. I burn a reference copy to DVD now and again and store in a safe place offsite. All my code goes through source control and I've set up subversion to save to a local repository on a server on my lan as well as mirror to a remote server a thousand miles away on every commit. It doesn't matter what happens to the VM, it's just a framework for working, all the code is in the repository. I make a backup of my VM when I make major changes to the environment like upgrading my 3rd party tools or development tools. Any scheme for backup that doesn't put your code outside the building you work in on a regular basis (at minimum once a day) is utter disaster waiting to happen and you'd be a fool if you didn't unless your work is of no value to you.

                  mobius111001 wrote:

                  Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

                  Absolute dead minimum to get the job done, don't mix your surfing or personal work with your development work, make as many different VM's as makes sense and fine tune each one for the job. I have a work VM and a personal VM and several testing VM's and a profiling VM. You will get it all wrong at first so your best bet is to make a master vm that contains just a barebones up to date operating system with all the tweaks applied for pure p

                  M Offline
                  M Offline
                  mobius111001
                  wrote on last edited by
                  #8

                  Excellent first hand experience! Thanks so much for taking the time to write that all up. Would you mind sharing what kind of hardware you are running outside of the raid 0 array of velociraptor sata drives?

                  M 1 Reply Last reply
                  0
                  • M mobius111001

                    Excellent first hand experience! Thanks so much for taking the time to write that all up. Would you mind sharing what kind of hardware you are running outside of the raid 0 array of velociraptor sata drives?

                    M Offline
                    M Offline
                    Member 96
                    wrote on last edited by
                    #9

                    Quad core cpu, two velociraptors in raid 0 configuration and whatever random 150gb SATA hard drive I found in a box that I threw in as a place to put temporary backups of the vm's, DVD Burner, 4gb ram (I was going to put in 8 but it turned out the MB doesn't support it without tossing out my existing ram and after carefully checking my requirements for development and other vm's I don't need it anyway for two vm's running at once though I'd like to have more for testing with a third vm etc). Windows XP Pro 64bit is the host os and I use windows xp pro 32 bit for the guest os's for the main work. For testing I have every other os we support in various configurations. Basically if you're buying a computer get a gaming rig but without a fancy graphics card and be sure to specify the raid 0 SATA array and velociraptor hard drives they are the fastest way to go for this kind of work. The hard drives are the most critical bit as that is the main bottleneck these days on any modern fast computer. There are faster drive technologies but they are optimized for servers and are actually less performant in the type of work that is done on a workstation (i.e. Serial Attached SCSI etc). Put the host OS and the vm's on the same array, don't listen to the voodoo advice out there about putting the host OS on the array and the vm's on another drive or vice versa. Of the many advantages of virtual development one of the big ones that most people overlook at first is that you are set for easy hardware and host os upgrades, if you get a new computer or a new hard drive just install vmware workstation, copy your vm's and your back to work in minutes.


                    "It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson

                    1 Reply Last reply
                    0
                    • M Member 96

                      I do all my development in a VM and I've been doing it *heavily* day in and out for some time now so I can give you some opinions based on personal experience.

                      mobius111001 wrote:

                      Does it really pay to do this?

                      Yes but only if your hardware is fast enough (particularly your hard drive access).

                      mobius111001 wrote:

                      Any pros/cons to it?

                      The big con is if the hardware isn't fast enough, with modern hardware it's possible to see no perceptible difference in performance. Also you can't do high end graphics development in a virtual machine yet because no VM makers support the latest and greatest.

                      mobius111001 wrote:

                      If I wanted to roll back the VM because let's saying Windows gets tweaked out, or I want to go to an image with less patches installed or something like that, is there a way to keep my source code and personal files from rolling back?

                      I have a raid 0 array of velociraptor sata drives for the VM and a separate hard drive for keeping backups of the VM images. I burn a reference copy to DVD now and again and store in a safe place offsite. All my code goes through source control and I've set up subversion to save to a local repository on a server on my lan as well as mirror to a remote server a thousand miles away on every commit. It doesn't matter what happens to the VM, it's just a framework for working, all the code is in the repository. I make a backup of my VM when I make major changes to the environment like upgrading my 3rd party tools or development tools. Any scheme for backup that doesn't put your code outside the building you work in on a regular basis (at minimum once a day) is utter disaster waiting to happen and you'd be a fool if you didn't unless your work is of no value to you.

                      mobius111001 wrote:

                      Also, when you folks do this, what do you install in the VM? IDE, DBs, apps like word, adobe, etc??

                      Absolute dead minimum to get the job done, don't mix your surfing or personal work with your development work, make as many different VM's as makes sense and fine tune each one for the job. I have a work VM and a personal VM and several testing VM's and a profiling VM. You will get it all wrong at first so your best bet is to make a master vm that contains just a barebones up to date operating system with all the tweaks applied for pure p

                      D Offline
                      D Offline
                      David Knechtges
                      wrote on last edited by
                      #10

                      GREAT advice - I have done my development this way for 3 1/2 years now and my experience is also with VMWare workstation. Until very recently, it was the only way to go. VirtualBox is good for 32 bit Windows VMs as long as you don't need external hardware to connect to it. Also, one other tip I would give on the hardware is this: Add up all the memory of all of the virtual machines you MIGHT run at the same time, then double it to get the amount of memory for the host machine. Any less than that, I have found does too much swapping and memory switching - i.e. performance suffers too much. So for example, say you want to run 3 512 MB vm's at the same time. This becomes 1.5GB. The host should then have 3GB MINIMUM. Also, unless you are using small memory footprint VMs, I would highly recommend a 64 bit OS on the host so that you can have as much memory as possible and you don't have to swap out the host OS when you want to upgrade its memory later. For the host, I have used all of Microsoft's 64 bit OSes, XP x64, Server 2003 x64, Vista x64, and Server 2008 x64. One thing I have used it for extensively is for installation testing on a clean machine. Snapshot the clean machine, do your installation testing, and revert it back to the snapshot after each test. Awesome for that - I used to have to do this through ghosting the machine and then bringing back down the image. A lot of waiting there - now, it is just a click of a button to do the same thing. David

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups