SharePoint 2010 is one greedy beast and you can’t settle with your plain old laptop; first of all you need a x64 bit environment and second of all you need some RAM. Developing for SharePoint 2007 required just a 32-bit machine, less than 4 gigs of RAM and Virtual PC and you could do most of your work without complaining to much. SharePoint 2010 requires some more thought through development environment .

First of all you need a 64-bit platform and at least 8GB of RAM, that’s what I’m having now on my HP EliteBook 6930p. So far this machine has worked really smooth; I run Windows 7 as the main OS on it.

Second, you can’t use Virtual PC – it’s 32 bit only! So if you like to live in the Microsoft world you have to install a Windows Server OS on your laptop of use Windows 7 VHD boot. I want to have access to my desktop applications and my main OS so I’ve walked down the VMWare path a couple of months ago and I’m currently using VMWare Workstation 7 – it’s an awesome virtualization software and I am not going back!

Third, you need disk space – go get some USB or ESATA hard drives. If you are going to have a single setup of your SharePoint 2010 virtual machine – this may not be necessary, but if you are like me and like to be able to create snapshots, have multiple clones, non-expanding virtual disks then most probably your internal laptop disk won’t last long.

I have two main sets of SharePoint 2010 development rigs right now:

  • A single virtual machine approach
  • A multiple virtual machine approach

Single Machine Approach

The single virtual machine SharePoint 2010 is an easy option; it’s a Windows Server 2008 R2 machine with 4-6GB of RAM and it runs everything from Active Directory to SQL Server to SharePoint to Visual Studio 2010. This rig is great if I want to do something quick.

Multiple Machine Approach

This rig is more complex, but also offers a better flexibility. VMWare Workstation offers you to create teams of virtual machines and I’ve set up a team of three servers:

  • 1 Windows Server 2008 R2 Core running Active Directory with 512 MB of RAM
  • 1 Windows Server 2008 R2 running SQL Server 2008 with 1024 MB of RAM
  • 1 Windows Server 2008 R2 running SharePoint 2010 and all apps with 4096 MB of RAM

I find this multiple machine approach to be better performing, although it takes longer to start up and to shut down. Creating the Server Core machine with AD is probably the best thing about it, took me some time to get acquainted to the Server Core environment, but with some PowerShell love it worked like a charm.

Only drawback with the VMWare team approach is that you can’t run your machines in Unity mode.

I will try a third option; AD on Server Core on one machine and the rest on a single server – I think it will work great as well.

Other machines

I also have a Windows 7 virtual machine, that is joined to the domain and a Ubuntu Linux machine – which I’m using for demoing Office Web Applications and the SharePoint 2010 interface.

All these setups are made with clean and compressed snapshots so that I easily can clone up a new empty environment whenever I need it.

How is your SharePoint 2010 development environment?