my windows is kinda slow, and i think that may decreace my efficiency. Also, many things (functions) aren't available on windows.
so i'm asking if coding on linux will make testing and stuff faster. My major concern is if there are good coding programs for linux. Ones with code coloring, auto-completions, function suggestions,debugging etc. So since i've never used linux before i don't know how hard it will be for me to learn it, and how hard to get it dual boot with my winxp.
Yeah Linux is great and there are all kinds of editors such as Quanta and Bluefish. I recommend Ubuntu if your a newbie but there are plenty of flavors to go around. Plus it's very stable as well. My time between reboots is around 30 days, only because I update the kernel and things like that.
Best way is to test things - you can install Linux (Ubuntu is a good choice for beginners and can be installed as a dual boot system - Windows will still exist). Dual boot is an automatic option on nearly all Linux installs - just bear in mind that if it breaks the Windows CD can install its native Master Boot Record, or a live Linux CD can be used to repair GRUB or LILO - whichever bootloader you choose. GRUB is the default for ubuntu.
To be honest though, if your PC is slow for Windows, moving to Linux with Gnome or KDE may not make much difference to speed. It might be worth checking if you need to upgrade some hardware - a prime culprit is RAM (1GB is recommended these days) and processor (hopefully not much below 2.5 GHz proc).
Simple things like deleting any unecessary startup programs for Windows - all the stuff that ends up in your system tray (right hand box of Windows bar where the time is) - can make a huge difference too. They use up RAM that's better used for powering development apps .
Really though, I use Eclipse. If it's something stupidly easy I'll use gedit, or if truly desperate...pico. Not a huge fan of editing code using Emacs or Vi for some reason. I have bad memories of console based editors...
I use Vim on both windows and Linux.. I usually mount the website filesystem (smbfs/nfs) somewhere in my own filesystem so that i can easily manipulate files without having to use an ftp client..