Well, like Linux_0 said before, Ubuntu and Fedora are good distributions to start out. You might also like to try openSUSE or Linux Mint or others to see which one works for you.
Eclipse should have Linux support since they make a big deal about it being "cross platform"
Firefox is the bread and butter browser for pretty much the entire Linux community, but then again there are also those who use epiphany, konqueror, and opera.
I have no idae what SimpleMP or CavaJ are so i can't say whether they have support or not.
Netbeans is another cross platform IDE so it should have support (according to wiki they have it in ubuntu 8.04)
GIMP was originally developed for Linux before being ported to other platforms, wasn't it?
Pidgin will cover you for AIM/MSN/GoogleTalk. If you don't like Pidgin, there are plenty of other AIM clients to try such as Kopete and others.
HAH! If you have heard of Apache, then you already know the answer there 😉
Java... Here is a good one, there is some support via GCJ to compile Java to native machine code instead of byte-code, and then I think Sun is only just now making Java fully open-source software via the OpenJDK (Sun) and IcedTea (Red Hat) projects. I haven't programmed in java for literally years, so you will have to look into it more yourself.
As for the GFX card, I believe AMD is now offering better Linux support for their cards, but I haven't bothered to check the state of AMD/ATI linux support since I switched to NVIDIA (although if they turn out to be better i'll switch back). AMD/ATI support was REALLY BAD in the past, which is why I switched in the first place, but the word 'on the street' is that their drivers have gotten much better since AMD took over.
As for your last question, I am not sure I understand. If you want to install just Linux, or install Linux first, you really shouldn't need a guide to do it as the installation process for distros like Ubuntu and Fedora have friendly wizards that step you through the entire process. The only part that requires any sort of configuration would be partitioning the disk, and if you are a java/c/c++ programmer, then you probably either already know how to partition disks and install OSes or you have way more than the minimum required computer ability to figure out how to do it with the installers these distributions provide.
If you still feel like you need a guide while you are installing, you can always make a run to google or to the distributions IRC room while you are using the liveCD to install Linux. In case you don't know, a liveCD is a CD that contains a copy of the OS that will just run and connect to the internet without writing anything to your hard drive. That is to say, the entire OS runs solely off of the CD and RAM! Pretty neat, eh?
-Zorak