Your Dev Environment
thumper: I run on a Macbook (not Pro!) with 4GB RAM.  For a while, I was doing some IE plugin development and went with separate VMs for IE6, 7, and 8 (used the MSFT distributed VirtualPC ones, actually).  That got me used to the idea of switching back and forth being VMs, and now I have separate Ubuntu VMs for each project I work on -- switching back and forth as emails and phone calls come in.  Working this way really helps me compartmentalize my projects, especially not worrying with how I muck up the OS installation as I need some crazy tool or other for a particular task.  It's also divorced me from excessive customization of my rig, so that I don't mind upgrading when a new Ubuntu is shiny enough to make me go "ooh".