It is a privilege and a joy to be called upon to serve one's friends and family, as anyone with technical knowledge will confirm. Mostly, this takes place within normal protocols of friendship and familial interaction - a category of human behaviour that covers everything from foot massage to nuclear warfare - but there's always someone.
Thus, this conversation with a female pal who in every other matter is perfectly personable, but when it comes to asking me about tech turns into a Gestapo interrogator out of Hyacinth Bucket.
Rupert: "er... yes?"
Friend: "Tell me. Dongles. Good or bad?"
Rupert (clouds clearing):"Aah... that's you, isn't it?"
Friend: "Of course. Should. I. Get. A. Dongle?"
(and so on)
She was asking about 3G USB modems - as are all civilians, of course, now the networks have worked out that most of their grown-up punters don't want Madonna, videoconferencing on the move (now largely forbidden, ironically), replaceable covers, entertainment news via a hot portal or any of that nonsense. Give us the Internet and leave us alone.
It's still like the early days of mobile phones: you can't advise someone what to get until you've squinted at coverage maps, asked them about what they're going to do with it, warned then ten times about roaming, and then picked your way through the tariff minefield.
I sorted her out. But my initial confusion wasn't so much about being abruptly interrogated, but by the word "dongle" (*) itself. It's been through so many shades of meaning since (at least) the 1970s, and all of them have left accretions on my internal vocab. USB modems are merely the latest: I hadn't realised until that phone call that the dongle had now escaped from Tech Island and was breeding in the wild under this particular plumage.
The most common early usage for dongle was as a software protection plug-in, usually on an RS-232 serial port. It's mentioned as such in the 1990 edition of the Jargon File-
DONGLE (don-gl) n. 1. A security device for commercial microcomputer programs consisting of a serialized EPROM and some drivers in an RS-232 connector shell. Programs that use a dongle query the port at startup and programmed intervals thereafter, and terminate if it does not respond with the dongle's programmed validation code.
Thus, users could make as many copies of the program as they want but must pay for each dongle. The idea was clever but a practical failure, as users disliked tyng up a serial port this way.
2. By extension, any physical electronic key or transferable ID required for a program to function.
and the earliest dated reference I can find online is from 4 May 1984 in the net.micro.cbm newsgroup:
The device referred to is known as a "dongle" (I've no idea why). It is used by various software companies (the Paperclip word processor uses it) to prevent piracy while still allowing backups."
But at exactly the same time, the benighted QL was being sold with a dongle - in this case, a memory board containing the bits of the operating system that wouldn't fit in the onboard chips. Clearly, anything that dangles out of the back of a computer is fit to be called a dongle.
Anything? Not quite. In my experience, it has to be active - something like an RS232 gender-bender or other adaptor cable, no matter how bulky they are, never gets called a dongle. You wouldn't call a USB keyboard light a dongle - but you would a USB-RS232 converter. I've heard USB thumb drives called dongles (although rarely; key drives, flash drives, data drives are more common), likewise USB-Bluetooth converters. In general, the more mysterious the dongle's role is, the more likely it is so to be called.
There's clearly a complex semantic map to explore here.
(*) Not to be confused with Dongola, capital of the North area of Sudan, or Dongola Road West, a street in Newham named after Kitchener's victory there against the Mahdi in 1896. "There" being the Sudan rather than Newham, of course, although if you adopt a post-modernist approach to imperial history and perform a time-variant matrix transformation on conceptual resonances there are arguments that they can be framed as part of one and the same construct. Wouldn't bother, if I were you.