Flash firmware onto an avr device running a bootloader that speaks the avr109 protocol
fully javascript usbtinyisp like adafruit usbtinyisp, mit fabisp or sparkfun tinyavr