I'm a high school teacher and I recently was discussing this. Protip: don't talk to 14 year olds about how if something is in between hard and soft, it's firm. 🙄
I miss some of the older ones from my college days (1990s).. million logical instructions per second (megalips), and measuring mouse speed in mickeys/pixel.
My non-tech wife tried to tell me “obviously that’s why it’s called that” when I’ve been writing software (and even some minor firmware hacking) for 30 years.
Started computer science in grade school with only an hour of actual computer time a week. A LOT of theory and history. Charles Babbage, Ada, ENIAC, etc.
This stuff was drilled into our heads. Same with bit, byte and, halfway between bit and byte, a nibble. It's a thing. 4 bits is a nibble.
Funny enough, I couldn't code to save my life now.
I think most people get it intuitively without thinking too much about it.
It's software that is tied to the hardware, in the old days most commonly on ROM, which makes it "firm".
Also as many mention, it's tied to the hardware by the "firm" that made the hardware, although I think that is more accidental, it kind of works for the logic too IMO.
It's such a brilliant term that most people generally have an intuitive idea about what it means, without an actual explanation. Today though it's a bit more murky where the line is drawn between software and firmware, since much firmware is distributed through the OS and Drivers, and can be changed on the fly.
This reminds me of when, during the building and development of the Apollo program- electrical engineers were tasked with effectively creating the "software" of the guidance system, and when one of the lead developers told his wife "I'm working on the software for the rocket" She replied "We're not going to tell people that you're working in underpants."