I've been working from my home on the East coast for companies in the Valley for 9 years. People have pretty well covered the technology in this thread, but I wanted to add a couple of comments:

- IMO, VNC+Skype is even better than in-person pair programming, because you have two keyboards and two mice. Once you learn each others' rhythms and get the hang of not fighting each other, it's much easier/quicker to switch control back and forth this way than by scooching your chairs around.

- There is definitely downside as far as decreased interpersonal bandwidth. And unfortunately, it's largely on HQ's (i.e. the manager's) shoulders to keep the remote people in the loop, though they also need to be really proactive communicators. If you're not getting the communication you need from HQ, it's up to you to let them know.

- HOWEVER... for those who enjoy (or at least tolerate) the lack of a work/home separation, there is tremendous productivity to be had in the flexibility and always-on-ness of working at home. I work when I'm productive, and I don't work when I'm not, and as a result the company not only gets more hours a day out of me than they would in an office, but they're my BEST hours as well - many of which are outside of conventional office time.

There's a big difference, I suppose, between remoteness of necessity (geographically far away) and remoteness of choice ("I'm working at home today."). I've always been the former, so I can't really speak to the latter.