Boss: Great demo. Now put it on this laptop for Bob in sales.
(hands you something from BestBuy that was an open box special)
Developer: Uhhh. That might be a problem. We're using 4 VMs behind the corporate firewall. One is Rails on Linux and the others are Windows and one is running Oracle.
Boss: So... are you saying I need to get 3 more laptops?
Developer: *facepalm*

Let's take a look at another way keep your manager from having to buy more laptops.

If I Knew You Were Comin' I'd've Baked a Data Center

One of the challenges in recreating a demo for a wider audience outside of your developer environment is where to place the demo. You could knock holes in the firewall and make friends with the IT security team or go through the time and effort to package up everything for use within EC2 or replicate to your hosting provider. If you are already a VMware shop you might also consider the using CloudShare Pro (Beta).

Behold. There are three steps to creating our multiple server RWH environment.

The menu of servers and desktops available is impressive: Xubuntu 8.04 Desktop, Windows XP With Office 2007, Windows XP Professional, Windows XP Pro With Office 2010, Windows Server 2008 R2 Ent 64Bit, Windows Server 2008 Enterprise, Windows Server 2003 R2 Enterprise Edition, Windows 7 Pro, Windows 2008 With Sql Server 2008, Windows 2008 With Microsoft CRM Dynamics, Windows 2008 With Active Directory, Windows 2003 With Sharepoint 2007, Windows 2003 R2 With Oracle 11g, Ubuntu 8.04 Desktop, CentOS 5 With RubyOnRails, CentOS 5 With MySQL, CentOS 5 With KDE and plain vanilla CentOS 5.

RWH opted for the following selection with fava beans and a nice chianti.

It almost seemed too good to be true so we connected to the RoR VM to confirm we were not dreaming.

Before we got too far with customization we made sure to create a snapshot of the environment as well.

At this point, RWH can invite others to work within this environment like any trusted group of developers and the participants will have access to the root and Administrator passwords for each VM. Pretty slick eh?

And now you can distribute the process of customizing these VMs to suit your specific developer needs... Or?

Behold, I Have Created a Picaso

Yes, a baseline environment is great. Known knowns!

Then there comes the reality of what it takes to make something work. See also: please refer to the "quick notes" 87 page document that outlines all the packages, patches, workarounds, and final configuration details to make this complex multi-tier deeply interdependent application suite come to life.

Luckily, FastUpload allows you to import a VMware virtual machine running in your local VMware Workstation 7.x environment to your CloudShare environment. The caveat here is that you should start with the CloudShare "template" virtual machine, then upload just the changes you make to that machine. Ever uploaded a whole VM before? Yeah, changes only sounds pretty nice, eh?

RWH has a lot of questions about this exciting way of sharing and providing a demo of a fully contained complex environment/stack.

Have you used CloudShare for demos in the past? Have you seen demos running on CloudShare at trade events? Were you more likely to see people running demos within EC2 or third party hosting arrangements? Have you seen desktop VM players work for this purpose and did they stay in sync with the developers? What are you using?

Let us know in the comments below!