This is a guest post written by the Hungry Blue Dev.

Despite Windows taking up a lion's share of the OS market, there is steady market for the open source operating system(s) - Linux, especially in professional situations like workstations and servers. However, that does not mean regular consumers can't get in on the Open Source action.

Technical note: Linux is the kernel that is common to all the Open Source Operating Systems. There are various Linux Distributions or Distros.

1. Linux is free

A jar of coins spilling out.
Pinch all the pennies you want! - Photo by Josh Appel / Unsplash

Let's be honest about it. We all love free stuff. Especially software. Now Open Source, Libre software are even better than traditional freeware. This is because they offer you more freedom regarding the usage of the software and also allow you to look into the source code (as opposed to most freeware - proprietary software).

"But why should I care if they make their source code public?", you ask. Well, even though you may never need to browse through the source code, other, more knowledgable people are allowed to. This is like a free, community-powered insurance policy that makes sure that the code is malware-free. Something like this cannot ever be the case for windows, for example. The codebase is closed-source as well as the distribution costs you money.

Note that the experience of installation will vary greatly across the board for all the innumerable Linux distros out there. However, all the open source ones are free to download and a few are really beginner-friendly.

2. Linux is ideal for developers

JavaScript in progress
Get a dev environment set up just the way you want. - Photo by Clément H / Unsplash

I am a developer and I work with a variety of languages. Partly because my undergrad programme requires me to, and partly because I like to try out new languages. And when you're a polyglot like me, you prefer to use the same editor and just the terminal for all the languages (unless I use something from JetBrains, their IDEs are out of this world).

The way the Linux operating systems are setup allows for very fast setup for developers, like easy installation from the command-line, extensive documentation, realiable environments and reproducible scenarios. These are must have features in order to ensure that you have a hassle-free conding experience. Another reason why for it is the availability of amazing shells like Bash, Fish and Zsh - which are different falvours of terminals.

You can do literally everything via the terminal. Even more actually. It's so incredibly powerful and convenient that once you use it, you'll miss it in Windows. You can even install and update software via the command-line. No need to download them individually, and them regularly check them for updates. In Linux, you can install 90% of all the software you need from the command-line and update all of them using one-line commands.

Note that the syntax varies depending on the package manager that's used. There's different kinds like apt for Ubuntu, yum for Fedora, pacman for Arch Linux and so on.

3. Unlimited Customization

You can RGB-up your distro too. (I couldn't find anything suitable :P) Photo by Marius Niveri / Unsplash

You can completely customize the terminal emulator that you use (I use Guake) and even change the default shell or command interpreter (I use Zsh). By installing extensions (such as Oh-My-Zsh), you can choose from various themes for your comamnd line. Linux gets a bad rap for being 90's like, outdated or not aesthetically pleasing to look at.

What people don't realise is that everything in Linux is customizable. Don't like what was shipped by default? Try another Window Manager, tweak the settings, go crazy. Maybe take a look at r/unixporn for inspiration. Or maybe you want your distro to look like MacOS. You can do that too!

For the ultimate DIY solution, I'd suggest the following steps:

  1. Install a minimal distro like Ubuntu Server, Arch Linux, etc.
  2. Setup users and sudo behaviour to match your preferences.
  3. Install a window manager of your choice (KDE is a good place to start; GNOME is nice as well).
  4. Customize it just the way you like it.

4. Linux is relatively lightweight

Light as a feather - Photo by Javardh / Unsplash

Linux being open source comes under the scrutiny of the highly skilled community of developers. Consequently, there's no scope for the core devs to sneak in telemetry code or things that run in the background. This is not the case for Windows and MacOS. Emphasis on Windows. All the background stuff that run on a Linux system are either absolutely essential to the functioning of the system, or are installed by the user.

Moreover, the choice of Desktop Environment also affects the usage of resources. For example, if one opts for Xfce in favour of KDE or GNOME, they get more system resources for their use. This means that old hardware can support linux well where Windows might chug and hog most of the RAM and/or storage. This neatly sets us up for the final reason.

5. Gaming on Linux is a thing now

You can pawn n00bs on Linux too. Photo by Alex Haney / Unsplash

This is due to several reasons:

  1. Less resource consumption by the OS and Desktop Environment lead to more headroom for games to run.
  2. Driver and softare support is increasing steadily for Linux distros (especailly Manjaro, Pop OS).
  3. Thanks to Valve's Proton, several Windows-only games can now work on Linux. No need to setup WineHQ or other complicated stuff now.

I tested it and nearly all of my Steam library was playable on Linux. Gamers rejoice!

Closing Thoughts

This article was fun to write because I'm really passionate about Linux. I want to express my thanks to u/chovy for inviting me to contribute here. If you guys liked it, I'd recommend you check out my blog. Also, consider supporting me on Patreon to keep me motivated to keep writing.