Skip to main content

Go Virtual! Save your Soul.

I haven't installed a development tool (production or beta/CTP) on my core OS for years. I do all my development, presentation preparation and learning / experimentation on Virtual PC (VPC) instances. (Ok, my clients pony up development machines for client work but...and no developing / architect jokes) Also, these are not VPCs I created. Certainly, one needs to license these instances properly when used in a production environment (vs. testing/evaluation) but leveraging a VPC will save you loads of time and effort (and headaches).

To be clear, I don't recommend this approach if you need to actually learn how to install and configure a product and/or operating system. If you're studying for your MCSE, it likely behooves you to actually install it a few times rather than leveraging an existing virtual instance.

But, if you want to learn how to leverage or use the product rather than how to install and configure it, go out to your favorite search engine or search.microsoft.com and download the VPC instances Microsoft so generously provides. These often 12-month expiry instances provide ample time to create a presentation demo or a proof of concept for a potential client. Investment in setting up and configuring the OS, SQL Server, MOSS, VSTS/TFS, etc in order to leverage your product of interest: ZERO (well, except the time to download perhaps).

As an example, I leverage the Visual Studio Team System and Team Foundation Server VPC instance for all my VSTS/TFS demos and client presentations. Recently, I started leveraging the Windows 2008 Server VPC trial instance for some Azure presentation work--Azure requires Vista or Windows 2008...yes, I'm still on XP...talk to my infrastructure guy :( Personally, I think Windows 2008 Server looks awesome. Do I want to set it up and configure it? Err, no.

If there's no existing instance configured the way you like, take it upon yourself to create a VPC for your team. (Again, disclaimer: license this up properly.) The folks on my MOSS infrastructure / config team kitted out a tremendous Windows Server 2008 with MOSS Enterprise, SQL Server 2008 and all the goodies. Now, the folks on the MOSS development team can benefit and get right to work learning and developing--their key focus.

Save yourself some time and energy--go virtual!

Comments

Unknown said…
Good info, Jeff. Thanks for sharing!

Since I'm a virtual newbie, gotta ask - what's the difference between Virtual PC and Virtual Server? Can I used a VHD for Virtual Server on Virtual PC? I've got a new laptop and want to "go virtual". ;)
smnbss said…
may be this is a good solution if you have to produce only demoes, but virtual machines are too slow to use them as daily development environment, unless you have a supercomputer. For sure virtual machines on notebooks are extremely slow unless you have ssd disks
Jeff Hunsaker said…
@smnbss As long as you have 4GB of memory and fast disks (7500+ RPMs), it's a very responsive experience...even for day-to-day development.

Jeff...
Unknown said…
I agree with Jeff. VMWare/VirtualPC is a phenomenal experience. Oddly enough running XP in a VM on my home PC with 3GB RAM runnning vista home premium, I get a much better development experience with VS2K8 than I do on the host OS. haha, it's weird.

Popular posts from this blog

Rollback a Ooops in TFS with TFPT Rollback

Rhut roe, Raggie. You just checked in a merge operation affecting 100's of files in TFS against the wrong branch. Ooops. Well, you can simply roll it back, right? Select the folder in Source Control Explorer and...hey, where's the Rollback? Rollback isn't supported in TFS natively. However, it is supported within the Power Tools leveraging the command-line TFPT.exe utility. It's fairly straightforward to revert back to a previous version--with one caveot. First, download and install the Team Foundation Power Tools 2008 on your workstation. Before proceeding, let's create a workspace dedicated to the rollback. To "true up" the workspace, the rollback operation will peform a Get Latest for every file in your current workspace. This can consume hours (and many GB) with a broad workspace mapping. To work around this, I create a temporary workspace targeted at just the area of source I need to roll back. So let's drill down on our scenario... I'm worki...

VSTS 2008 Data-Driven Web Test

During a client demo this afternoon, I mind-blanked on creating a data-driven web test. Sure enough, I stepped out of the client offices and figured it out. Super. But, I think it's counterintuitive enough to outline in a blog post (...trying to make myself feel better ;-). Somewhat in my defense, I was thinking about data-driven unit tests. These, IMO, are easy to implement. Data-driven web tests are a bit more effort and challenging. Create a web test: Right-mouse on your test project selecting Add >> Web Test. Use the browser recorder to capture your web test scenario. Let's assume you're submitting an age and credit rating to an insurance rate calculator...similar to the screen capture below: Create a table or CSV file (comma-delimited...just use Excel and save as CSV) with relevant headings for your inputs and expected values: From Solution Explorer, double-click on your web test. In the main window, right-mouse on your web test selecting Add Data Sou...

TFS Reports Out of Date

You may have noticed it takes a while for Team Foundation Server (TFS) reports to reflect changes you've made to work items or builds. Let me guess...about an hour, right? Out of the box, TFS is set to refresh the data warehouse from its transactional store every 60 minutes. How do I change the frequency of the data warehouse refresh? Browse to the TFS Controller Web Service on your TFS application tier server within IE at: http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx Select the ChangeSetting option Enter RunIntervalSeconds for the settingId and the desired number of seconds for newValue (300 for 5 minutes...5*60) Select Invoke How do I force a data warehouse refresh? Two methods here: either via the above web service or using SQL Server Management Studio. Via the web service: Browse to the TFS Controller Web Service within IE at: http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx Select the Run option Click Invo...