Reprogramming my arduinos

usbasp is isp device it bypasses normal arduino bootloader and overwrites it with your application code. it uses chip builtin spi based hardware programming protocol.

How ever you can use usbasp to reprogram bootloader in there too.