I used a Gameboy Flash card that showed up as a blockdevice that was formatted FAT device, writing/overwriting a file upon it will overwrite the flash and inserting it to the Gameboy would then start it.
I suspect that there was some transation firmware that acted as the blockdevice and routed data to the flash as the "file" was written by the computer, it was a pretty clever and frankly painless way of updating since there was nothing beyond connecting, copying and flipping back.
Yes, in the long run you want something directly USB connected (preferably with a debugger) but as for having a no-hassle setup this was quite neat.
And considering that many of the first generation of Gameboy flash-devices had been tied to dodgy paralell-port flash protocols that were hardcoded to even dodgier win95 era flashing programs that required full HW access(and not working well on winNT based systems not to mention osX or Linux) I think a bit of the thinking for this was to future-proof the device by just basing it on some standard block-device technology like SD cards or UMass that was unlikely to become unsupported.