Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
Why not use Microchip's own MPLAB software? What you get is very good documentation, support for ALL devices, and plenty of examples. You can get free fully featured student versions of C compilers like C18 (PIC18 series) and C30 (dsPIC30/dsPIC33/PIC24) that lasts 60 days, then you get some reduced functionality. I actually am a student, so I don't even feel guilty when reinstalling the stuff every 60 days...
For programming hardware, when I'm not on school where they have ICD2, I use a homemade JDM programmer built for very few cents. It programs everything from PIC16 to dsPIC30 but I have not successfully programmed dsPIC33 devices on it yet. It works with WinPIC programming software.
A very nice development platform is, when you have a programmer in the 1st place, to put bootloaders on your chips, so you can upload code over UART (like a USB->serial converter or serial port). On my dsPIC30 chips, the JDM uses about 15 minutes (!!) to program a bootloader onto a chip, while uploading new code using the bootloader takes seconds.