Aunque arduino permite programar sin necesidad de ningún programador externo, no es el caso de otras aplicaciones ya que algunas veces necesitamos programar algún que otro microcontrolador.
Os dejo un enlace a continuación que indica cómo hacer un programador de AVR de alto voltaje muy facilmente y transformar la placa Arduino en un programador muy versátil.
En valebestia.com nos dejan un excelente video de una entrevista a James Brown en la que estaba digamos... un poco "ido" xD no os perdais la risa final que no tiene desperdicio.