Today I thought I would take a break from all of the technical articles and write something a little more near and dear to my heart – My favorite Linux Distributions and Why. Now, this can be a rather heated topic (even leading to blows among us geeks) but I am not here to persuade anyone that my choices are better than yours, or that any particular distribution is better than any other. I am simply posting my opinion and why. In this article, I have chosen to pick my top 4 distributions and list the reasons why I prefer these distributions.
As you probably already know, there are countless numbers of Linux distributions available today (see: Distro Watch), all have good points and bad and some are specialized for specific purposes. Linux as an operating system is very similar at it’s core across all distributions. They all run the Linux Kernel, implement some sort of package management and follow (some more loosely than others) the File System Hierarchy standard among other things.
I originally cut my teeth on RedHat back in the early 2000’s. Things have changed since then….
Pop!_OS is my number one pick (Sorry Ubuntu). Developed by System76 and based in Colorado, system76 also builds and sells some high-quality, fully open source Linux machines that are awesome, especially when accompanied with Pop!_OS. Additionally, System76 has a good community and documentation. As an added bonus, since Pop!_OS is based on Ubuntu, most of the support articles, packages and community content are applicable.
I have distro-hopped for many years looking for a distribution that offered me a feature rich and aesthetically pleasing desktop environment that gets out of the way and lets me work. With Pop!_OS I have found that. It is uses GNOME (though the Cosmic Desktop Environment is on the horizon) and has multiple pre-configured layout/workflow options to fit anyone’s workflow. I have been using it now for over 2 years (probably the longest that I have ever stuck with a single distribution) and have had very few issues. I had it installed on a mid-2015 Mac Book Pro for quite some time as my primary machine and it just worked. Now I have built my own well-speced workstation with an NVIDIA graphics card and AMD Ryzen 9 processor and again – it just works. Some of the main features that I like are the ability to customize more without having to use sometimes buggy add-ons like Gnome Tweaks (although they do extend customization and work decent). The fact that is based on Ubuntu LTS is also a big plus given the compatibility and stability of Ubuntu. Over all the keyboard shortcuts, desktop environment, intuitive design and customization options out of the box are exactly what I want in a desktop operating system. Another plus for me is that it does not use Snaps. While I sometimes use Snaps (see some of my other articles), I really prefer flatpak in my desktop environment.
Ubuntu is arguably the most popular Linux distribution available today. This is mainly because of it’s ease of use and compatibility, making it the obvious choice for newcomers to the world of Linux as well as it’s corporate backing from Canonical. It also has many variants (Spins) that offer specialized packages that target certain user groups, such as Edubuntu for Educational purposes. Ubuntu also has a large user community, giving you easy access to support and knowledge. Ubuntu is easy to use and has a fluid and well designed user interface (though I prefer Gnome classic over Unity) as well as being fast and stable. Ubuntu can run on low-end or commodity hardware, laptops, high-end workstations and servers, embedded devices and (hopefully) coming soon – smart phones and tablets. One of the things I like most about Ubuntu is that it is based on Debian. I am a big fan of the Debian code and configuration and prefer the apt/synaptic (.deb) package management system over others.
As a server, Ubuntu offers a robust, secure and stable platform for building and hosting a wide array of workloads. The operating system supports the latest stable releases of OpenStack and when used in conjunction with JuJu, can provide a highly scalable and easily orchestrated cloud architecture. I have personally deployed many Ubuntu servers ranging from LAMP and TOMCAT to OpenVPN appliances and have never had a bad experience. On top of the large user base and many free support options, Canonical also offers subscription support and management through Ubuntu Pro. Ubuntu Pro offers technical support as well as a cloud based portal that you can use to manage all of your end-points from one central console.
Ubuntu is my number two not only because of the reasons outlined above but also because it was the first distribution that I used when I made my switch from Windows to Linux years ago. Unfortunately, Pop!OS has taken the number one spot since then, and I do not see that changing anytime in the near future.
Debian is the grandfather of most distributions. I have never used Debian as a Desktop operating system but have deployed many Debian servers throughout my career. The reason I like Debian is because of it’s simplicity and security as well as it’s long standing reputation. Debian is one of the oldest Linux distributions still in development (right behind Slackware) so it has a solid foundation and proven track record. Another reason I like Debian, is that I prefer the apt/synaptic (.deb) package management system.
Unlike Ubuntu, Debian is not corporate backed but does provide the base code on which Ubuntu is built, which makes it very familiar to me. Debian is also well documented and has a decent sized user base for support. As an added benefit, most Ubuntu related solutions can be applied to Debian, which increases the available support resources.
Due to the many similarities of Debian and Ubuntu, Debian comes in a close third on my list. I cannot say much for the User Interface since I have never used a GUI on Debian but I have seen many screenshots and it looks like your typical, no-frills Gnome desktop (My Favorite!).
CentOS is my fourth pick on the list due to it’s stability and direct lineage to RedHat. CentOS is the Community enterprise Operating System for good reason. It is a direct derivative of Red Hat, which is by far the leader in Enterprise space Linux adoption. CentOS is stable, secure and trusted by the U.S. Government (Though they are not so trustworthy as of late!) to host large and complex enterprise workloads. Also, because it is a derivative of RedHat, there is a large user base and great support, not to mention many of the upstream applications available on RedHat are available on CentOS. Again as mentioned in the last section, many of the solutions available when solving problems on CentOS can be gleaned from the RedHat documentation and community due to their close similarities.
As I mentioned earlier in this post, I began my Linux journey on RedHat. Tinkering with uncharted OS territory and basically breaking and rebuilding until I got it right. This is why CentOS holds a special place in my heart. I have written many articles on this blog that utilize CentOS minimal as the base OS for the applications in question.
To sum things up, regardless of your Distribution, we can all agree that Linux is the most advanced and fun operating systems available and it is all free and Open Source. My choice of distributions reflects my experience and requirements for my daily life as an I.T. professional. As mentioned at the beginning of this post, the ‘Distribution Debate’ can get pretty heated – and as a fellow Linux enthusiast, I respect your choice of distribution and encourage you to share your opinion.