Some of us like to code in bed. Or on the floor, or outside, or while watching TV.
For me, the convenience of being able to take my computer wherever I want far outweighs the bigger screens and hard disks of a desktop. And I've never found the keyboards to be a problem; I type 90+ WPM on a Dvorak-layout laptop keyboard.
Depends. I've been developing our site on a macbook pro. I prefer a workstation for the faster hard drive, but when developing a web app based on an interpreted language, that doesn't really matter.
And I'm using an external keyboard + LCD, so I have the best of both worlds.
Having used laptops with both ATI and nVidia chips inside, nvidia support is definitely the way to go between the two, especially for multi-monitor setups. I actually returned my old laptop with ATI graphics because their Linux drivers and support was terrible.
I hear that the new Intel graphic chips are also quite nice, and the fact that they open sourced the drivers should make them the ideal Linux graphics adapters, but I don't have any experience with them.
That would have been my answer to the parent: I use an external monitor, mouse and keyboard at home.
I've managed to get the ATI Radeon under Ubuntu to display both two desktops or only use one screen or the other. But it was quite a fight. And more fancy things like one large desktop on two screens didn't work out.
Stop trying to look hip and get yourself a workstation.