Why Learn Linux
If you are scrolling through this article in a web browser, your experience is made possible via an operating system (OS). You may have seen this acronym, OS, around, particularly if you are an Apple consumer--it's the OS in macOS and iOS. Operating systems also power supercomputers and servers that make transmitting data or information possible. The OS sits between the hardware of your computer or mobile device and the user and software. There are many operating systems available to the public: Microsoft Windows, macOS, and Linux to name a few, and Linux is actually the operating system maintaining Wikipedia's and Coder Merlin's servers. But that is only one of the places you can find Linux working behind the scenes. The ubiquity of Linux is one of the many reasons that it is such a powerful choice of OS.
Origins of Linux
On August 25, 1991, Linus Torvalds, then a student at the University of Helsinki studying computer science, emailed a Minix--a Unix-based operating system--newsgroup about a free operating system he was working on, that would become the open-source software that is now called Linux.
From: torvalds@klaava.Helsinki.Fi (Linus Benedict Torvalds)
To: Newsgroups: comp.os.inix
Subject: small poll for my new operating system
Hello everybody out there using minix-I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386 (486) AT clones.
- excerpt from an email sent by Linus Torvalds
Despite Torvalds' message, Linux would become ubiquitous in the world of computer programming. Torvalds released the first version of his operating system--built with his original Linux kernel--version 0.01 on September 17, 1991, and Linux has continued on to power every aspect of online life since then.
From Unix & Minix to Linux
In his autobiography, Just for Fun: The Story of an Accidental Revolutionary, Linus Torvalds recounts how he became interested in computers and operating systems in particular. When Torvalds was a high school student, he saved up money to purchase a Sinclair QL computer in 1987. Torvalds became dissatisfied with parts of the Sinclair QL, especially the read-only operating system--he could not change or customize it.
Once in University, Torvalds switched over from the QL to the PC, which by 1990 was cheaper than other options and due to mass-market production, was more standardized. In 1991, the PC Torvalds purchased ran on a Minix operating system, a variant of the Unix operating system created by Andrew Tanenbaum. Unix was developed by AT&T's Bell Labs in the late 1960s, based on certain design principals, and by the early 1990s, Unix was the most used operating system for supercomputers and servers. In his book, Torvalds extols the beauty of Unix's cleanliness and simplicity, and the "small-is-beautiful philosophy." In his 2003 book, The Art of UNIX Programming, Eric S. Raymond, abstracts 17 core principles exhibited by the Unix operating system including the "Rule of Modularity: Write simple parts connect by clean interfaces...[and the] Rule of Simplicity: Design for simplicity; add complexity only where you must." 
Due to Torvalds' frustration with Minix's terminal emulation, he started the project that would become Linux as a terminal emulator. The Linux kernel differed from the Bell Labs' Unix kernel since the Linux kernel started the Bourne-Again Shell (
bash) first rather than the
init program. Additionally, Torvalds' implementation of Linux departed from Tanenbaum's Minix in that the Linux kernel was a monolithic kernel rather than a microkernel.
What is Linux?
A Kernel vs. An Operating System
The origins of Linux involved a number of players as well disputes about attribution and naming. To understand on a high-level the controversy surrounding what "Linux" refers to, it is important to distinguish between a kernel and an operating system.
A kernel is the core of any operating system. The kernel mediates between the hardware of the computer, and the processes or software that the computer runs. The kernel has a number of important functions, including process order and memory management. The operating system includes the kernel and other low-level applications that allow a computer to run.
When Linus Torvalds created an operating system in the 1990s, he created, and is widely credited for, an original kernel--the Linux kernel--and then patched in several free, open-source software programs to create a functional operating system. However, since then, the term "Linux" has been used to refer to both the kernel, the operating system, and additional operating systems based on the Linux kernel.
GNU & Richard Stallman
Torvalds himself ruminates in his autobiography about the qualms he had about selling Linux, as he recognized his operating system was made possible due to the free code and software made available under Richard Stallman's GNU General Public License (GPL). In particular, Torvalds used the GNU Compiler Collection (GCC Compiler) and the Bourne-Again Shell (
Richard Stallman (RMS) has been dubbed "the God of Free Software" and began the Unix alternative, GNU (GNU is Not Unix), in 1983. RMS also wrote the GPL that Torvalds would use for Linux. But RMS continues to vocally object to the use of "Linux" in reference to Linux-based operating systems, insisting that the original operating system that Torvalds developed was mainly GNU software with a Linux kernel, and therefore should be referred to as "GNU/Linux." Additionally, RMS focuses on the fact that the kernel was the main piece missing in the GNU operating system, and RMS has referenced Torvalds' admitting that had GNU had its own kernel, he may not have developed the Linux kernel. Despite RMS' and others' objections, many continue to refer to Linux kernel-based operating systems simply as Linux, with no attribution to GNU.
Continued Linux Development
As Linux is open-source, there is a vibrant community around it. Various operating systems based on the Linux kernel have been created since Torvalds released the first. These Linux-based operating systems are called Linux distributions or distros for short. Common distros include Ubuntu and Debian. To this day, Linus Torvalds continues to work on the Linux kernel as a fellow at the Linux Foundation. All of the code is available on his GitHub @torvalds.
Reasons to Learn Linux
The Ubiquity of the Linux OS
Perhaps the most important reason to learn Linux, is that it is everywhere. Linux is the operating system behind every Android device and some e-readers. Linux powers Facebook, Google, Wikipedia, and other major websites that millions of people use every day. The Linux Foundation, a non-profit organization focused on developing open-source technology and the growth of Linux in particular, even founded an Automotive Grade Linux (AGL) working group, consisting of leading automakers, engineers, academics, and more, to create and advance open-source technology in the automotive industry. Even Microsoft, which runs a competing OS, Windows, uses Linux to power its cloud computing service, Microsoft Azure. According to the Linux Foundation website, 100% of supercomputers run on Linux. Needless to say, Linux almost invariably is a part of the lives of every person who uses the internet.
Open-Source, Skilling Up, and Community
Since Linux is open-source and under the GPL, users can freely share, modify, copy, (and sell) versions of the Linux software, and as a result, as with many other open-source communities, there is a robust and vibrant online community dedicated to developing and troubleshooting Linux. To name a few, there is Linux.org, The Linux Foundation, the Linux subreddit (r/linux), StackOverflow, the Unix StackExchange, and LinuxQuestions.org.
As illustrated earlier, partially because Linux is open-source, Linux is used by countless companies for various purposes. As such, Linux is also a highly sought-after skill when applying for jobs. According to the Linux Foundation's 2020 Open Source Jobs Report, 74% of the hiring managers surveyed listed Linux as the most in-demand skill, and 93% of the hiring managers said it was difficult to find potential hires with sufficient open-source skills. Additionally, the default shell for Linux operating systems is still
bash, which is another highly in-demand skill in the tech community.
Given that Linux is both open-source and highly used, if there are any security threats, there is a group of skilled developers and companies ready, able, and incentivized to neutralize the threat.
Get Started Learning Linux
Coder Merlin began due to the efforts of an individual, whose goal is to provide accessible quality computer science education for students, primarily in high school. As such, using an open-source operating system to run remote servers aligned with the mission of the wiki. Linux cuts costs, and will also give students the opportunity to learn how important and useful a community of users can be to education. Beyond the Coder Merlin community is the entire Linux user base. Any query a student may have will be met with an answer either on the Coder Merlin site, or in an online forum or discussion group. The open-source philosophy mirrors that of accessible education--it should be free; it should be shared; it should be protected and proliferated. By using Linux, Coder Merlin creates an opportunity for students to gain first-hand experience using
bash and other Linux software.
In order to access the remote Coder Merlin account, you need to SSH into the server using a secure shell client. If you are using a Mac operating system, then you are already using
bash. If you are using Windows 10 or later, you also have
bash available to you. More importantly, the remote Coder Merlin server is a Linux server, so once you have connected into it, you will be using
bash and other software in a Linux operating system! All of the exercises and journals that you work on and update will be done using Linux-based software and commands. By learning with Coder Merlin, you are then gaining valuable hands-on experience with two top job skills in the tech community--
bash and Linux. Beyond Coder Merlin, you can find a variety of resources online, as discussed above, due to the open-source nature of Linux. Happy learning and coding!
- "5 Most Popular Operating Systems." Accessed November 18, 2021.
- Wikipedia Technical FAQ. Accessed November 18, 2021
- Just for Fun: The Story of an Accidental Revolutionary (Torvalds and Diamond, 2001)
- The Art of UNIX Programming (Raymond, Eric S. 2003)
- "What is an OS Kernel?" (Baeldung, 2021)
- "What's the relationship between a Linux OS and a kernel?." (Stack Overflow) Accessed November 17, 2021.
- "Linux and the GNU System." Accessed on November 16, 2021. (Richard Stallman)
- "Linux vs. Unix." (Geeks for Geeks) Accessed November 18, 2021.
- "Commonly Used Operating Systems." (Geeks for Geeks) Accessed on November 18, 2021.
- Linus Torvalds (The Linux Foundation)
- @torvalds (GitHub)
- "Linux Took Over the Web. Now, It's Taking Over the World" (Finley, Klint 2016)
- "The Linux Foundation Announces Automotive Grade Linux Workgroup" (2012)
- "Top 10 Communities to Help You Learn Linux." (Linux and Ubuntu) Accessed on November 18, 2021.
- "The 2020 Open Source Jobs Report" (The Linux Foundation & edX, October 2020)
- "11 Reasons to Learn Bash." (Dataquest) Accessed November 18, 2021.
- "Shell." (CoderMerlin Wiki) Accessed November 18, 2021.