AVR Tiny microcontrollers have a low pin count (8 or 14). Sometimes you want to all of them including Reset pin which can be turned in to normal I/O pin. But problem is that after this operation AVR becomes no longer programable bia SPI.
The only trick is to use High Voltage (HV) programmer. In this case serial. So you can first program AVR via SPI, then change RESET fuse to be as I/O and revert again if reprogram is needed. And of course using HV programming mode it is convenient to reset fuses of bricked AVRs.
This high voltage serial programmer (HVSP) is built around Attiny2313 microcontroller which takes care of sending commands to programmable Tiny. Programmer needs 12V power supply in order to work in this mode. Everything fits nicely on small breadboard where programmable chips can be easily attached and de-attached. So if you work with AVR Tiny microcontroller this seems to be a must have tool on your desk.
Embedds highly recommends EasyEDA for circuit and PCB design