I started off PIC on a 100% DIY basis from the programmer to the development board. I'm using an ICDv1 programmer flashed with CCS's firmware.
There are certain considerations which you should note for the programmer.
1. An ICSP programmer is a MUST if you are doing PIC develoopment. It is probably cheaper too since you do not need a ZIF socket.
2. All programmer's need to be powered, one way or another. The main thing about PIC programmers is that it needs to generate 13V to kick the PIC into programming mode. My programmer only needs a 5V external power input to work, which I conveniently drew from the target circuit through the ICSP cable, saving me the need of a external power adaptor.
3. Programmer's usually interface to the PC thru serial, parallel or usb ports. USB is of course the best, but I'm quite comfortable with serial ports as well.
4. One minor point I'm happy with using CCS's firmware is because their uploading program allows you to run/stop the program using software control. With the ICD2, I still had to manually disconnect the ICSP cable in order for the PIC to start running.
5. Lastly, CCS's uploading program is user-friendly enough for me. Programming often takes only 2 clicks of the mouse. Running the program takes another click
In all, I'm very satisfied with my programmer, since there is no need at all to touch the entire hardware setup once it's finalized, as everything is software controlled. Of course, I still went to the trouble of powering down the circuit whenever I'm not using it. :lol: