0

I've been thinking of using a Hyper-V Machine as instead of physical computer for installing my .NET / Azure / Xamarin / ASP.NET / Windows Phone development tools. That way I could easily move from my desktop to my laptop when I need to develop something on the go.

Are there any limitations in this scenario that I should be aware of?

Thanks,

Adrian

  • It might be slower than the physical machine depending on physical machine's specifications – Ramhound Feb 11 '14 at 15:05
  • @Ramound: That is definitely true, though I thought it was too obvious to mention. But I am more looking for functional limitations, such as "you cannot debug an azure project when inside a virtualized environment" (note: I just made this up!) or something similar. – Adrian Grigore Feb 11 '14 at 15:28
  • possible duplicate of [Virtualized Development Environments in Enterprise Networks](http://programmers.stackexchange.com/questions/111210/virtualized-development-environments-in-enterprise-networks) and of [Thoughts on Development using Virtual Machines](http://programmers.stackexchange.com/questions/103501/thoughts-on-development-using-virtual-machines) – gnat Feb 11 '14 at 15:38
  • 1
    @gnat: Not really. The first topic is about the struggle between dev and Admin teams for control on the VMs (it's not even about Hyper-V). The second is not about Hyper-V either, but rather a high-level discussion on multiple virtual machines hosted on server and being used by multiple developers. I am asking about hosting a single virtual machine with 8.1 inside a windows 8.1 host and I am asking specifically about Hyper-V. – Adrian Grigore Feb 11 '14 at 16:03
  • 1
    Windows phone depends on spinning up VMs in HyperV. VMs inside of VMs are not stellar performers. – Wyatt Barnett Feb 12 '14 at 05:15

1 Answers1

1

I think you'll find copying the hyper-V data files will be a little bigger than you expect, "I could easily move from my desktop to my laptop" .. after copying a 20 Gig hyper-V drive, yes.. first think how long will that copy take.

What you really need is to install the dev tools on both machines (a 1-time cost) and then work on your code using a source control system as if you were 2 people accessing the same repo. When you want to use the laptop, you (ensure you have checked in all the code) check it out on the laptop and work away. When you're ready to move back - commit and checkout on the desktop. You have the benefit of source control too then, and a faster development environment.

You can run the SCM server on the desktop machine and still checkin/out on the desktop too, but then you'll only be able to commit when plugged into the same LAN. An alternative would be to get a "cloud" based repository to commit to.

gbjbaanb
  • 48,354
  • 6
  • 102
  • 172
  • i'd rather wait half an hour to copy a 20 GB hyper-v drive than keeping development tools (which, on windows, can be quite a few) in sync on two devices. – devnull Feb 12 '14 at 08:53
  • I used to get 10Mb/sec throughput backing up my old VMs - 20Gb would take a couple of hours, mainly due to a bottleneck replacing the data on disk. You might find your laptop performs about the same. – gbjbaanb Feb 12 '14 at 10:36