I used another arduino with the ISP sketch for years to program my stand-alone projects (all Atmegas). I think it's really really great you can do that. This helps the tinkerer a lot making standalone stuff the easy way.
Doing things instead of installing gigabytes of toolchains and other software, yay!
But there was a project involving an SD card which I did not disconnect before uploading a new sketch. The "programmer" uses 5V signals which the SD card didn't like too much (it shares the ICSP port), so I killed the SD that way.
So for my last projects I ordered the Pololu Programmer v2 which has lots of nice features I would miss now if I ever had to go back to the Arduino-as-ISP-way.
Look at these features. It summarises everything it can do:
What I like most:
- it's fast. Uploading 25kB or so could take 20 seconds with Arduino as ISP. It's more like 2 or 3 seconds now (you can change speed, see screenshot above)
Hint: burning the initial bootloader (to set fuses etc) needs to be done at lower speeds or it will fail!
- You may choose to supply the target with whatever voltage between 2 and 5V
- Programming and Serial port are independent. This means: upload your program and have another terminal open all times (I use HTerm)
- fully compatible with the STK500 hardware, you can even change parameters so every software recognises it as a genuine programmer
- everything Pololu sells is kind of open, they give you circuit diagrams, 3D files, software is on GitHub ...
I fully recommend this programmer. There is a better and cheaper! v2.1 out now it seems. I got the v2 and it does everything I need to do, so nothing to worry about.