By Justin Agrell
Once upon a time there was RUNCOM. In 1964 Louis Pouzin developed a system that allowed computers to run commands from a script instead of having to type them all out one at a time. The term “shell” was coined for this breakthrough in productivity — a metaphorical description of its encapsulation capability. This nascent shell slowly evolved from Multics to Unix and eventually became part of every major operating system in existence.
The first major adopter of the Unix shell was actually a clone called GNU Linux. Frowning upon the restrictive pricing of Unix tools, Linus Torvalds and Richard Stallman started a movement to create a free Unix. Because of them — and people who started similar projects — today there’s now a Unix shell on the majority of servers running the internet and a few billion mobile devices like cellphones and tablets worldwide.
By the late 1990s, Apple was desperately trying to gain market share. To entice developers, they switched to a Unix-based operating system and by 2001 OS X 10.0, “Cheetah,” was released. It had a true command line interface app called Terminal which ran the tools many had already been using for more than 20 years. Now, when an application is created, it’s easily translated into Unix, Linux, and OS X, which all function similarly.
Microsoft took a little longer to accept that they needed a Unix-style shell. Their early operating systems were based on the simple DOS command line with a very limited amount of control. They quickly hid the inferior interface behind their now-ubiquitous Windows graphical desktop. Once again, however, developers demanded a shell. With the majority of the internet being run on Linux and everyone moving to “The Cloud,” their hand was forced. In 2016, the Windows Subsystem for Linux was released and allowed the same GNU tools that ran on Linux to run on Windows natively.
This left one major holdout: Chrome OS. Google’s Chrome OS is built on Linux. You would think that there’d be no reason to artificially restrict the popular Linux tools that everyone was already using and were already available to Google for free, but that’s not how Google saw it. They wanted complete control of their ecosystem. That meant that the owners of Chrome devices could only use applications that Google provided from their online store or ran in their Chrome internet browser. This system worked well for security but, inevitably, they had to give in. The 800-pound gorilla that is the command line interface shell won. For 2018, Google announced that with the release of their new Pixelbook you will finally be able to run Linux applications and GNU tools for developers without restriction.
So what is so special about a text-only shell anyway? Why is there such demand for it? The reality is that since 1964, the shell has only been improved. The pure momentum of decades worth of optimization and use is almost impossible to compete with. No one is pretending that the text interface isn’t uglier than its GUI (graphical user interface) counterparts, but you can’t possibly compete with the ability to just type “cal<enter>” and have a simple calendar instantly appear in front of you. When you’re managing computers remotely you need just bits to log in and send and receive text, and megabytes to send and receive a full graphical interface. So many places have such terrible internet that text connections are the sole reliable option.
If you ever want to feel in complete control of your computer, I recommend learning how to use the shell, which is now available to you on any modern operating system. While many may consider the text interface anachronistic, its absolute power can no longer be denied. Just like Louis Pouzin back in 1964, you can amplify your abilities. You need no longer slavishly use a single method to interact with applications and unleash your computer’s full potential.
Justin Agrell has been a certified IT technician since 2005. He loves Linux, adventure motorcycling, and computer gaming. To get in touch, just email him at Justin@U4E.US.