Etymology of computer terms

It’s easy to forget about the origins of some very common computer terms. Quite a few of them rely on a good familiarity with the history of computer development. As a native English speaker I feel like I should be able to explain the names of these terms in case someone asks. I’m writing down the origins of these terms here for my own benefit, but if you’re reading this then you may learn something too!

  • Terminal: What we know now as a graphical window for submitting commands. Terminal derives from the Latin word terminus, which means the end or boundary. In the early days of computing, computers were in a big cabinet, and you entered commands into them using a connected typewriter-like device, which was called a terminal. It is called a terminal because the device is at the end of the cable connected to the computer.
  • Shell: This refers to the software that interprets your commands, runs your programs, and then sends output to the console. In the days of Multics and Unix, there was the concept of an inner and outer part of the computer software. The inner part of the computer software was called the kernel and the outer part was called the shell, which is an analogy based on the different parts of a nut, such as an acorn or walnut.
  • Console: The part that displays the outputs of commands. In the early days this was printed paper coming out of the terminal, and then later on it was on a display that was integrated into the terminal itself. Today with a desktop environment, we can have multiple consoles
  • Firewall: A wall intended to confine fires within adjacent buildings. The concept was then later used in cars to isolate the engine compartment from the passenger. In the early days of the internet, this analogy was used to describe the isolation mechanism between public and private networks, although precisely who coined it and when seems unclear.
  • Bug: One term that everyone should already know. A bug means a computer issue generally, but the term comes from one of the first documented computer issues where a moth was stuck inside a computer.
  • Patch: In the early days of computers, programs were stored on punch cards. Punch cards are small cards that have printed holes in them to denote values. If you made a mistake in your program then you would need to print your program out again on a new set of cards, which certainly sounds annoying and laborious. If the required change was very minor, you could place a bit of tape over the problematic hole on your card to change the value. So patches were physical in those days, and is where the term comes from. Universities and companies had a limited stock of cards, so you can expect some students might have tried to reuse them. Today a patch can refer to any type of fix to a computer program.

I’ll probably update this again at some point with corrections and more fun factoids that I learn about. Ciao.

Written on August 12, 2021