For web apps i do it anywhere there's a text editor, i also have a tendency just to SSH to the server and edit live. I almost always use linux web servers (in LAMP style configuration) but it doesn't really matter, i like having a syntax highlighting editor - eg Vim or Notepad++ on windows.
For desktop apps, it's a Windows job - either XP or Vista, not for any particular reason, the tools run find on Server 2003 and Win 2000, i just don't that's all. (Codegear RAD Studio / C++ Builder). I run my own SVN server for personal stuff (on CentOS) at work its all under NetBSD.
I can also code command line stuff on Linux/Unix using gcc although i haven't had much call to do it.