Category Archives: Uncategorized

Best Web-Based Regular Expression Tester

When writing regular expressions for use with RegEx tools in .Net, there are many resources available on the web.  The best one I’ve found is http://regexhero.net/tester/.

regexbuddy

Hopefully now that I’ve blogged it, I’ll be able to find it quickly next time.

Enjoy!

Advertisements

SharePoint 2010 Virtualization Options

There are new and exciting changes around SharePoint 2010. This post deals with the changes specifically around virtualizing your SharePoint development environment. 

Important points about SharePoint 2010 to consider:

  • 2010 runs on a 64-bit only
  • 2010 has heavier memory requirements than MOSS 2007
  • 2010 can run on Windows Server 2008 or Windows Server 2008 R2
  • 2010 can run on Windows Vista x64 or Windows 7 x64
  • Memory: Give your 2010 environment lots of memory!

I like to run SharePoint (and beta software) in a virtualized sandbox on my laptop. There are several options, but Virtual PC (my old free favorite) is out of the running because it does not support 64-bit guest OS. So what are my other choices?

  • Windows Server 2008 or R2 with Hyper-V
  • Sun’s VirtualBox
  • Native boot to VHD
  • VMWare Workstation (a good choice, but not a free one!)

Hyper-V is a great option.  It lets me hand lots of memory over to my guest OS. I reserve at least 1GB of RAM for the host, and give SharePoint my other 7 GB (my laptop is maxed out at 8GB).

Sun’s VirtualBox is free, and an interesting option.  It’s the only virtualization tool I know of that let’s you run a 64-bit guest on a 32-bit host. On the downside, it doesn’t have good snapshot support, and it won’t let me hand over more that half my RAM to the guest.

Native boot to VHD is awesome!  Windows 7 and Windows Server 2008 R2 support booting natively from a vhd.  It works like a dual boot configuration to disk partition, without requiring a partition. For SharePoint 2010, this is a nice option if your memory resources are limited to 4GB and you want the OS running SharePoint to have all your memory.  For more info on boot to VHD option, see my post.

VMWare Workstation is an excellent virtualization tool, if you don’t mind paying for it.  VMWare ESX is an excellent platform for virtualizing production and test farms.  For laptop-ware though, it’s hard to beat free!

With SharePoint Dev Options on Windows 7 – Why Virtualize?

Developing on Windows Vista and Windows 7 is an interesting option, and the tools support Microsoft is bringing to the game in 2010 are huge steps in the right direction.  That said, development is still best-done on an OS that is a close copy of the production environment. 

Server Operations Systems are more hardened against attacks, and they have more services for features that you will need.  Much of SharePoint development is testing to ensure things will work in your target environment.  This is best accomplished when you’re working on the same operating system.

I’m completely addicted to virtualization, particularly when dealing with server products like SharePoint. 

  1. The flexibility just can’t be matched on physical hardware
  2. Developing for SharePoint involves a lot of machine or domain level configuration. This cannot be easily isolated or duplicated without virtualization tools like snapshots, differencing disks, and good old copy/paste.
  3. Moving VMs between machines is very useful, so I can develop on a desktop when I have one, or on a laptop when I have to.

What’s On My Box?

I’m glad you asked!  I’m running a multi-boot configuration on my laptop. I’m in love with the new boot to vhd option.  I have several boot-to-vhd disks setup on my hard drive to meet specific client needs, etc.  For more info on boot to VHD option, see my post.

For my primary workstation configuration (and SharePoint development) I use a native boot vhd with Windows Server 2008 R2 with Hyper-V.  SharePoint 2010 Beta and other systems I’m currently playing with are running as Hyper-V images.

My DELL D830 laptop is not new, in fact it’s officially limited to 4GB of RAM.  I have it tricked out with 8GB of RAM using a BIOS glitch, so 2008 R2 recognizes 8GB.  If you have a D830 and want to try it read more here.

I reserve 1 GB from my host, and give 7 GB to the my SharePoint 2010 guest OS.  It runs very snappy with this configuration.  For a farm test, I can run more VHD’s if needed, but 2010 really likes the memory.

My SharePoint 2010 test lab is running as a DC/DNS server, with SQL 2008, Office 2010 beta, SharePoint 2010 beta, and Visual Studio 2010 beta.  I left Exchange 2010 out of the mix for now, but will likely setup a separate server for it later to test workflow integration with Outlook.

Enjoy!

Dell D830 with 8GB of RAM

Dell Latitude D830 laptops have 4GB memory cap, but I’ve found a way to squeeze 8GB of RAM in there (thanks to some helpful comments from others on the web).  This is an unsupported configuration, but its working great!

8GB gives me lots more breathing room for running virtual machines, especially useful for testing SharePoint 2010 in a virtual environment.  My old laptop may be around a while yet!

If you have a D830 and want to try this, here’s how I did it:

  1. You must be running an OS that supports more than 4GB.  64-bit Vista, 64-bit Windows 7, 64-bit Windows Server 2008 or Windows Server 2008 R2.
  2. Upgrade the BIOS to A13 (download it from Dell).  I haven’t tried A14 (the latest BIOS version), but I read reports that this only works with A13.
  3. Install a matching pair of 4GB SODIMM DDR2 667 chips.  I’m using GSKILL chips I picked up from NewEgg for around $265. 
  4. When you reboot the first time, the BIOS will take a while to run through, checking out the new memory.  Verify the new memory, and your system should recognize 8GB when it comes up.  After the first boot, BIOS boots quickly.

I’m running Windows 7  64-bit and Windows Server 2008 R2, booting to a VHD.  No host OS on my PC, just a VHD on my C: drive.  Sweet!! 

Here’s the memory I ordered from NewEgg:
http://www.newegg.com/Product/Product.aspx?Item=N82E16820231210

Enjoy!