Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've been asked to start developing something for ArcGIS 10.x, but here is the problem: in my computer I already have the SDK and ArcMap 9.3.1 installed.

That means that I need to uninstall it before installing 10.x. My problem lies that I still work with customers that uses 9.3.1 and this is the first one with 10.x.

What strategies are you guys using for targeting both platforms? My initial idea is to use virtual machines, but that is a pain.

Also, what if I throw some ArcGIS Engine development? Do I still need separate boxes?

Any other options?

share|improve this question

I use virtual machines via VMWare for these scenarios. Not only I do not think VMs are PITA, but actually, VMs have become integral part of my development workflow, way beyond Esri usage.

Whenever I need to test something out and do not want to clutter any existing environment - I just spin up a clone of one of my development machines, do my job, and then I can delete the VM and forget it. Other environments remain intact. Once you learn to use snapshots and clones effectively, you will not want to look back.

It is also VERY useful for testing your applications under different environments and configurations.

There is of course some inherent cost to maintain those virtual machines (e.g. installing updates, updating your development tools etc. may need to be done multiple times), but again, once you figure out how to do that effectively, you can keep this cost very, very low. For example - I have my base development environment set up and all development machines are derived (cloned) from it.

Another thing is not to forget about licensing issues. For some software, there may be licensing restrictions regarding whether you may have multiple installations of a single license in virtual environment.

share|improve this answer

I use Virtual Machines primarily to solve these kinds of Issues.

If you have a fast enough host computer, it is not as much of a PITA as you think. We have a MSDN License, so we always have a lot of OS licenses just lying unused. We use VM player , and if you use Unity, It's as good as developing on your actual machine.

share|improve this answer
I've never heard of unity. It's a VMware player extension? – George Feb 12 '12 at 14:06
Unity hails from the Ubuntu Linux camp and is the default desktop environment (shell) for current (11.10) Ubuntu releases. It overlays the GNU based Linux Canonical uses for Ubuntu. At VMWare Player v4.02, support of Unity has improved to where Ubuntu 11.10 can now be a host OS. Unity under VMWare Player (or Workstation) appeal for virtual machine use is that it tightly integrates Guest applications with the Host desktop. Some licensing issues using VMWare Player (free) rather than Workstation ($). – V Stuart Foote Feb 12 '12 at 17:24
the answer for this will go for mentioning unity. NOW THATS WHAT I WANT! :D – George Feb 12 '12 at 22:42
@george: The Unity I was talking about, is a feature, where the applications in the guest OS can be run, so as to appear that they are running in the Host OS. See: – Devdatta Tengshe Feb 13 '12 at 3:46
Oh sorry, my mistake. However, hope it is clear that multi-release development (or even cross platform) development can be done efficiently with VM Guest OS on most any flavor of Host OS (Windows, Linux, or Unix)--resource allocation to the VM and extent of GUI integration with desktop make for an efficient work space. If you've got licenses to use the VMs it is a very effective solution for developing or using multiple ESRI ArcGIS products with minimal sysadmin and maintenance overhead. – V Stuart Foote Feb 13 '12 at 15:23

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.