Here are some quick notes on how James and I have our computers set up. You might find it useful for setting up your development environment.
We both have two computers, one for Linux and the other for Windows. The computers are connected to each other with Ethernet.
The Linux box has a modem, which is used to dial our ISPs. Using "IP masquerading", the Linux box provides the Windows box (and as many other boxes as you like) with transparent and secure Internet access. We run Samba on the Linux box, which lets the Windows box see files stored on the Linux box. We run Visual C++ on the Windows box for development, and CVS, ediff and other neat tools on the Linux box to keep source synchronised. I have a switch box so I can switch between computers, and James uses a Windows "X server" so he can run programs on the Linux box and display them on the monitor attached to his Windows box.