The ability to do this eliminates the need for socketing the microcontroller and complex programming hardware. It also allows the updating application program at the last minute before shipping or even in the field. Since the technique commonly uses a serial communications method it tends to be slower than special purpose parallel programming methods used before the micros are soldered in place.