Using a shell and a command line was a lot easier for working with a computer than rows and rows of toggle switches. Ah, those were the days.Įarly personal computers like the IMSAI 8080 used an array of switches to load programs manually – Image courtesy of Judson McCranie. Once the paper tape reader was operational, you could load a shell program that allowed a Teletype to be used as a command line interface. In many cases, the manually loaded program was for a boot loader that allowed the computer to accept input from a paper tape reader. This process was labor-intensive and prone to errors. In some cases, this was done by setting a row of switches that represented a memory location address, and then loading data into the memory with another set of switches. In those early days, controlling a computer was a daunting task that could require you to manually load memory locations, one at a time, with the data that would eventually be run as a program. There are a number of different shells you can use, but if you’re wondering why anyone would want to use a shell and a command line to control a computer, you need to take a trip back in time to the dawn of the computer age. Shells are usually interactive text-based interfaces that accept commands and present the results. In this Rocket Yard guide, we’ll look at how this change to Terminal and the command line affects you.Īt the simplest level, a shell is a program that allows you to control a computer, in this case, a Mac, using commands you enter with the keyboard. The quick take away is Apple is moving from the Bash (Bourne Again Shell) to a newer Zsh. MacOS Catalina has a number of new features and capabilities, but one change that’s often overlooked is the new shell used in Terminal to interact with the Mac via the command line.