You can simply program an Attiny85 via the audio output of a PC, Smartphone or audio-player.
Only a low-part count circuit is needed.
The bootloader presented here has the following features:
low memory footprint: ~1KB
[full Arduino IDE integration] (
https://github.com/8BitMixtape/8Bit-Mixtape-NEO/wiki/3_3-IDE-integration)
automatic Baudrate detection and callibration
very simple circuit: two 10 k resistors and a 100 nF capacitor are needed to connect the microcontroller to the audio output of the PC or audio player
one pin for data transmission is needed
an optional led indicator, needs an extra pin, for the state of the boot loader
as hex/binary to wav converter, programmed in java, is also available. It works on win and linux