However, I would seriously consider a macbook. It is smaller, lighter, and I extremely happy with it (had it for about 1.5 years. You may have more of a need for a good graphics card and such.
Upgrade the ram and harddrive yourself, it is trivial, and will take ~ 5 mins.
I wouldnt put linux on it, again unless you have a specific reason to do so. I dev in OSX, deploy on linux.
Putting Linux on it really isn't as big of a deal as it was at one point. I've only tried with Ubuntu though, for what thats worth.
7.04 was somewhat of a nightmare. Off the top of my head... you couldn't use the normal installation media, graphics drivers had to be installed manually, likewise with sound drivers, likewise with wireless drivers.
7.10 on the otherhand was simple and straightforward. Everything except for the wireless card worked right out of the box. I'm quite happy with it and use it most of the time on my MBP.
Not so much because it is too difficult or a big deal, or anything like that.
I have found OSX to be more than an adequate operating system for efficiency while coding. Unless you have a fairly good reason to go with Linux (Ubuntu in your case), I don't see the motivation to do it. However, if I was getting a Dell, I would instantly go Linux for obvious reasons - I need to be running my dev stack on my local machine, remotely connecting won't cut it.
However, I would seriously consider a macbook. It is smaller, lighter, and I extremely happy with it (had it for about 1.5 years. You may have more of a need for a good graphics card and such.
Upgrade the ram and harddrive yourself, it is trivial, and will take ~ 5 mins.
I wouldnt put linux on it, again unless you have a specific reason to do so. I dev in OSX, deploy on linux.